README
🚀 工具
本工具用于向大语言模型(LLMs)发起请求,具体是针对 Claude 桌面应用程序。Claude Sonnet 3.5 能够智能运用这两种工具,着实令人惊喜。
✨ 主要特性
run_command:可运行一条命令,例如hostname、ls -al或echo "hello world"等。该命令会返回标准输出(STDOUT)和标准错误输出(STDERR)的文本内容。run_script:用于运行脚本,支持fish、bash、zsh、python等脚本类型。此功能可让大语言模型执行其编写的代码,脚本通过标准输入(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。
扫码联系在线客服