返回市场
MCP服务器命令

MCP服务器命令

作者:g0t4207 星标更新:2025-09-29

项目介绍

工具

工具供LLMs请求使用。Claude Sonnet 3.5 智能地使用 run_command。初步测试表明,Groq Desktop with MCPllama4 模型具有令人鼓舞的结果。

目前只需一个命令即可控制一切!

  • run_command - 运行一个命令,例如 hostnamels -alecho "hello world"
    • 返回 STDOUTSTDERR 作为文本
    • 可选的 stdin 参数意味着您的LLM可以
      • 将代码通过 stdin 传递给如 fishbashzshpython 等命令
      • 使用 cat >> foo/bar.txtstdin 中的文本创建文件

[!WARNING] 谨慎选择要让服务器运行的内容! 在Claude桌面应用中,请使用 Approve Once(而不是 Allow for This Chat),这样您可以审查每个命令,并在不信任某个命令时使用 Deny。 权限由运行服务器的用户决定。 不要 使用 sudo 运行。

视频演示

<a href="https://youtu.be/0-VPu1Pc18w"><img src="https://img.youtube.com/vi/0-VPu1Pc18w/maxresdefault.jpg" width="480" alt="YouTube缩略图"></a>

提示

提示供用户包含在聊天历史记录中,例如通过 Zed 的斜杠命令(在其AI聊天面板中)

  • run_command - 生成包含命令输出的提示消息

开发

安装依赖项:

npm install

构建服务器:

npm run build

开发时自动重建:

npm run watch

安装

要在Claude Desktop中使用,请添加服务器配置:

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

Groq Desktop(测试版,macOS)使用 ~/Library/Application Support/groq-desktop-app/settings.json

使用发布的npm包

已发布到npm作为 mcp-server-commands,使用此 工作流

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

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

确保运行 npm run build

{
  "mcpServers": {
    "mcp-server-commands": {
      // 因为index.js中有shebang,所以有效
      "command": "/path/to/mcp-server-commands/build/index.js"
    }
  }
}

本地模型

  • 大多数模型训练得不会认为它们能够为您运行命令。
    • 有时,它们会毫不犹豫地使用工具……其他时候,我不得不引导它们。
    • 使用系统提示或提示模板来指示它们应遵循用户的请求。包括无需双重检查地使用 run_commands
  • Ollama 是一种很好的方式来本地运行模型(与 Open-WebUI 一起)
# 注意:确保查看变体和大小,以便模型适合您的VRAM并表现良好!

# 目前可能是最好的是 [OpenHands LM](https://www.all-hands.dev/blog/introducing-openhands-lm-32b----a-strong-open-coding-agent-model)
ollama pull https://huggingface.co/lmstudio-community/openhands-lm-32b-v0.1-GGUF

# https://ollama.com/library/devstral
ollama pull devstral

# Qwen2.5-Coder 具有工具使用功能,但您需要引导它
ollama pull qwen2.5-coder

HTTP / OpenAPI

服务器使用 STDIO 传输实现。 对于 HTTP,使用 mcpo 实现兼容 OpenAPI 的网络服务器接口。 这与 Open-WebUI 兼容

uvx mcpo --port 3010 --api-key "supersecret" -- npx mcp-server-commands

# uvx 运行 mcpo => mcpo 运行 npx => npx 运行 mcp-server-
# 然后,mcpo 桥接 STDIO <=> HTTP

[!WARNING] 我曾短暂地将 mcpoopen-webui 一起使用,请确保对其安全性进行审查。

日志

Claude Desktop 应用程序将日志写入 ~/Library/Logs/Claude/mcp-server-mcp-server-commands.log

默认情况下,仅记录重要消息(例如错误)。 如果您想看到更多消息,请在配置服务器时向 args 添加 --verbose

顺便说一下,日志被写入 STDERR,因为这是Claude Desktop路由到日志文件的方式。 未来,我期望格式良好的日志消息通过 STDIO 传输发送到MCP客户端(注意:不是Claude Desktop应用程序)。

调试

由于MCP服务器通过stdio通信,调试可能会很困难。我们建议使用 MCP Inspector,这是一个包脚本:

npm run inspector

Inspector将提供一个URL,以访问浏览器中的调试工具。