Back to MCP directory
publicPublicdnsLocal runtime

odysseus0_mcp-server-shell

一个提供Shell命令执行能力的MCP服务器,允许LLM在受控环境下执行Shell命令并获取输出结果。

article

README

🚀 Shell MCP 服务器

Shell MCP 服务器是一个基于模型上下文协议(Model Context Protocol)的服务器,它提供壳命令执行功能。借助该服务器,大型语言模型(LLM)能够以受控方式执行 shell 命令并接收其输出,为模型与系统交互提供了便利。

✨ 主要特性

  • execute_command工具:可执行 shell 命令并返回其输出。
    • 必需参数
      • command(字符串):要执行的 shell 命令。
    • 返回内容
      • 命令结果包含:
        • command:执行的命令。
        • output:组合 stdout 和 stderr 输出。
        • return_code:命令执行返回码。

📦 安装指南

使用 uv(推荐)

当使用 uv 时,无需任何特定安装。我们将直接使用 uvx 运行 mcp-server-shell

使用 PIP

或者,您可以通过 pip 安装 mcp-server-shell

pip install mcp-server-shell

安装后,您可以作为脚本运行它:

python -m mcp_server_shell

📚 详细文档

配置

为 Claude.app 配置

在您的 Claude 设置中添加:

使用 uvx
"mcpServers": {
  "shell": {
    "command": "uvx",
    "args": ["mcp-server-shell"]
  }
}
使用 pip 安装
"mcpServers": {
  "shell": {
    "command": "python",
    "args": ["-m", "mcp_server_shell"]
  }
}

为 Zed 配置

在您的 Zed settings.json 中添加:

使用 uvx
"context_servers": {
  "mcp-server-shell": {
    "command": "uvx",
    "args": ["mcp-server-shell"]
  }
},
使用 pip 安装
"context_servers": {
  "mcp-server-shell": {
    "command": "python",
    "args": ["-m", "mcp_server_shell"]
  }
},

调试

您可以使用 MCP 监视器调试服务器。

  • 对于 uvx 安装:
npx @modelcontextprotocol/inspector uvx mcp-server-shell
  • 或者如果您在特定目录安装或开发该包:
cd path/to/servers/src/shell
npx @modelcontextprotocol/inspector uv mcp_server_shell

安全注意事项

  • 输入验证:始终对用户提供的输入进行验证,避免命令注入攻击。
  • 权限管理:限制服务器执行的命令权限,确保只有经过授权的操作被允许。

贡献指南

要为该项目做出贡献,请遵循以下步骤:

  1. fork 仓库
  2. 创建功能分支
  3. 提交更改
  4. 推送到 fork
  5. 提交拉取请求

如需报告问题或提出功能请求,请在 GitHub 上打开问题。

💻 使用示例

基础用法

执行 shell 命令:

{
  "name": "execute_command",
  "arguments": {
    "command": "ls -la"
  }
}

响应:

{
  "command": "ls -la",
  "output": "total 24\ndrwxr-xr-x  5 user  group   160 Jan  1 12:00 .\ndrwxr-xr-x  3 user  group    96 Jan  1 12:00 ..",
  "return_code": 0
}

📄 许可证

[在此处添加许可证信息]


感谢您使用 mcp-server-shell!希望它能为您的项目提供强大的 shell 命令执行能力。

help

Runtime guide

cloud

Hosted runtime

Hosted servers run from a provider-managed environment. You usually connect the MCP client to the hosted endpoint or follow the provider's authorization flow, without keeping a local process alive

  1. Open provider connection page
  2. Authorize or copy endpoint
  3. Connect from your MCP client
terminal

Local runtime / other methods

Local servers run on your own machine or infrastructure. You normally copy the server_config into your MCP client, install the required package, and provide env variables from env_schema when needed

  1. Copy server_config
  2. Install required package
  3. Fill env variables and restart client