返回市场
MCP命令行执行工具

MCP命令行执行工具

作者:jakenuts9 星标更新:2025-03-06

项目介绍

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
# 或使用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桌面应用

添加到适当的配置文件:

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,可以在浏览器中访问该URL,进行以下操作:

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

错误处理

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

  • 对所有工具参数进行输入验证
  • 结构化的错误响应
  • 命令超时处理
  • 工作目录验证
  • 去除ANSI代码以获得干净的输出

技术细节

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