返回 MCP 目录
public公开dns本地运行

mcp-server-commands

为Claude桌面应用提供命令行和脚本执行能力的服务工具

article

README

🚀 工具

本工具用于向大语言模型(LLMs)发起请求,具体是针对 Claude 桌面应用程序。Claude Sonnet 3.5 能够智能运用这两种工具,着实令人惊喜。

✨ 主要特性

  • run_command:可运行一条命令,例如 hostnamels -alecho "hello world" 等。该命令会返回标准输出(STDOUT)和标准错误输出(STDERR)的文本内容。
  • run_script:用于运行脚本,支持 fishbashzshpython 等脚本类型。此功能可让大语言模型执行其编写的代码,脚本通过标准输入(STDIN)传递。实际上,run_script 等同于 run_command 加上脚本通过 STDIN 传递。Claude 已经极具创意地运用了该功能,例如使用 cat 作为解释器来创建新文件。

⚠️ 重要提示

对于让服务器运行的内容务必小心!在 Claude 桌面应用程序中,请使用 Approve Once(而非 Allow for This Chat),以便逐条审查每个命令;若不信任该命令,可使用 Deny。权限由运行服务器的用户决定,请勿以 sudo 运行。

📺 视频演示

点击查看视频

💡 提示

提示用于用户在聊天历史中包含的内容,可通过 Zed 的命令(在其 AI 聊天面板中)实现。

  • run_command:生成一条带有命令输出的消息。

📦 安装指南

开发环境依赖安装

npm install

服务器构建

npm run build

开发时自动重建

npm run watch

与 Claude 桌面一起使用的配置

需添加服务器配置,不同系统的配置文件路径如下:

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

使用已发布的 npm 包

该工具已发布到 npm,包名为 mcp-server-commands,使用此 工作流。配置如下:

{
  "mcpServers": {
    "mcp-server-commands": {
      "command": "npx",
      "args": ["mcp-server-commands"]
    }
  }
}

使用本地构建(代码仓库检出)

配置如下:

{
  "mcpServers": {
    "mcp-server-commands": {
      // 这是因为 index.js 中的 shebang
      "command": "/path/to/mcp-server-commands/build/index.js"
    }
  }
}

📝 日志记录

Claude 桌面应用程序会将日志写入 ~/Library/Logs/Claude/mcp-server-mcp-server-commands.log。默认情况下,仅记录重要消息(即错误信息)。若想查看更多消息,可在配置服务器时的 args 中添加 --verbose。需注意,日志是通过 STDERR 写入的,因为这是 Claude 桌面应用程序路由到日志文件的内容。未来,期望格式化良好的日志消息通过 STDIO 传输写入 MCP 客户端(注意:不是 Claude 桌面应用程序)。

🐞 调试

由于 MCP 服务器通过标准输入输出(stdio)通信,调试可能具有一定挑战性。建议使用 MCP Inspector,它作为包脚本可用,运行命令如下:

npm run inspector

Inspector 会在浏览器中提供一个访问调试工具的 URL。

help

运行方式说明

cloud

托管运行

托管运行通常表示这个 MCP Server 由服务方环境承载,用户一般按页面提供的连接方式或授权流程接入,不需要在本地长期启动一个 MCP 进程

  1. 打开服务方连接页
  2. 完成授权或复制端点
  3. 在 MCP 客户端中连接
terminal

本地运行 / 其它方式

本地运行通常需要用户在自己的电脑或服务器上安装依赖,把 server_config 复制到 MCP 客户端,并按 env_schema 补齐环境变量、密钥或其它配置

  1. 复制 server_config
  2. 安装所需依赖
  3. 补齐环境变量后重启客户端