m

mcp CLI执行器

@jakenuts/mcp-cli-exec
0 Stars 380 次浏览 jakenuts 更新于 2026-08-23

一个CLI命令执行服务器,它能够以结构化输出的方式运行shell命令,并提供详细的执行结果,包括标准输出、标准错误、退出代码和执行时长。

MCP 服务配置

复制以下 JSON 到 OPClaw 或其他 MCP 客户端的配置文件中即可使用

{
  "mcpServers": {
    "mcp-cli-exec": {
      "args": [
        "-y",
        "mcp-cli-exec"
      ],
      "command": "npx"
    }
  }
}

可用工具 (2 个)

该服务在 MCP 协议中暴露的工具,AI 可按需调用

cli-exec-raw 2 个参数 需填 1 项

Execute a raw CLI command and return structured output

必填参数:command

cli-exec 3 个参数 需填 2 项

Execute one or more CLI commands in a specific working directory

必填参数:workingDirectory、commands

服务介绍

mcp-cli-exec MCP 服务器

一个强大的 CLI 命令执行 MCP 服务器,能够以结构化输出运行 shell 命令。此包特别关注命令执行功能,使其与其他 MCP CLI 工具区分开来。

功能

工具

cli-exec-raw

执行原始的 CLI 命令并返回结构化输出

  • 接受一个命令字符串和可选的超时时间(默认:5分钟)
  • 返回详细的执行结果,包括 stdout、stderr 和退出码
  • 通过结构化的错误响应优雅地处理错误

cli-exec

在特定的工作目录中执行一个或多个 CLI 命令

  • 支持单个命令、用 && 链接的命令或命令数组
  • 所有命令都在指定的工作目录中执行
  • 为每个命令返回详细的结果:
    • 成功/失败状态
    • 退出码
    • stdout 和 stderr(已移除 ANSI 代码)
    • 执行持续时间
    • 工作目录
  • 在第一个命令失败时停止
  • 每个命令的可选超时时间(默认:5分钟)

注意:由于执行上下文的限制,每个命令独立运行。命令内的目录更改(cd)不会影响后续命令。所有命令都在最初指定的工作目录中执行。

输出格式

命令返回包含以下内容的结构化结果:

  • 成功/失败状态
  • 退出码
  • stdout 和 stderr(已移除 ANSI 代码)
  • 执行持续时间
  • 工作目录
  • 如适用的详细错误信息

示例用法

cli-exec-raw

简单的命令执行:

{
  "command": "echo Hello World"
}

带有超时:

{
  "command": "long-running-script.sh",
  "timeout": 300000
}

cli-exec

在特定目录中的单个命令:

{
  "workingDirectory": "/path/to/project",
  "commands": "npm install"
}

多个命令(都在相同的工作目录中运行):

{
  "workingDirectory": "C:\\project",
  "commands": [
    "dir /b",
    "npm run build"
  ]
}

安装

可以选择从 npm 安装:

npm install -g mcp-cli-exec
# or with pnpm
pnpm add -g mcp-cli-exec

或者直接在配置中使用 npx

对于 Cline VSCode 扩展

添加到 %APPDATA%/Code - Insiders/User/globalStorage/rooveterinaryinc.roo-cline/settings/cline_mcp_settings.json 中:

{
  "mcpServers": {
    "mcp-cli-exec": {
      "command": "npx",
      "args": ["-y", "mcp-cli-exec"]
    }
  }
}

对于 Claude Desktop

添加到相应的配置文件中:

Windows: %APPDATA%/Claude/claude_desktop_config.json
MacOS: ~/Library/Application Support/Claude/claude_desktop_config.json

{
  "mcpServers": {
    "mcp-cli-exec": {
      "command": "npx",
      "args": ["-y", "mcp-cli-exec"]
    }
  }
}

特殊 Windows 配置

如果在 Windows 上遇到 ENOENT spawn npx 问题,请使用指定了完整路径的替代配置:

{
  "mcpServers": {
    "mcp-cli-exec": {
      "command": "C:\\Users\\jim\\AppData\\Roaming\\nvm\\v22.1.0\\node.exe",
      "args": [
        "C:\\Users\\jim\\AppData\\Roaming\\npm\\node_modules\\npm\\bin\\npx-cli.js",
        "-y",
        "mcp-cli-exec"
      ]
    }
  }
}

开发

安装依赖项:

pnpm install

构建服务器:

pnpm run build

开发时启用自动重建:

pnpm run watch

调试

由于 MCP 服务器通过 stdio 进行通信,调试可能会比较困难。MCP Inspector 提供了有用的调试工具:

pnpm run inspector

这将提供一个 URL 以便在浏览器中访问检查器,在那里你可以:

  • 查看所有 MCP 消息
  • 检查请求/响应负载
  • 交互式测试工具
  • 监控服务器状态

错误处理

服务器包括全面的错误处理:

  • 所有工具参数的输入验证
  • 结构化的错误响应
  • 命令超时处理
  • 工作目录验证
  • 清除输出中的ANSI代码

技术细节

  • 使用TypeScript和MCP SDK构建
  • 使用execa进行可靠的命令执行
  • 默认命令超时:5分钟
  • 支持Windows和类Unix系统(根据您的操作系统使用适当的命令,例如 'dir' 与 'ls')
  • 顺序执行命令,在首次失败时停止
  • 每个命令在指定的工作目录中独立运行

相关 MCP 服务