Shell MCP Server

Shell MCP Server

一个模型上下文协议服务器,允许大型语言模型以受控方式执行 shell 命令并接收其输出。

操作系统自动化
访问服务器

README

Shell MCP 服务器

一个模型上下文协议服务器,提供 shell 命令执行能力。该服务器使 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 设置:

<details> <summary>使用 uvx</summary>

"mcpServers": {
  "shell": {
    "command": "uvx",
    "args": ["mcp-server-shell"]
  }
}

</details>

<details> <summary>使用 pip 安装</summary>

"mcpServers": {
  "shell": {
    "command": "python",
    "args": ["-m", "mcp_server_shell"]
  }
}

</details>

为 Zed 配置

添加到您的 Zed settings.json:

<details> <summary>使用 uvx</summary>

"context_servers": {
  "mcp-server-shell": {
    "command": "uvx",
    "args": ["mcp-server-shell"]
  }
},

</details>

<details> <summary>使用 pip 安装</summary>

"context_servers": {
  "mcp-server-shell": {
    "command": "python",
    "args": ["-m", "mcp_server_shell"]
  }
},

</details>

示例交互

执行一个 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 inspector 来调试服务器。对于 uvx 安装:

npx @modelcontextprotocol/inspector uvx mcp-server-shell

或者,如果您已将软件包安装在特定目录中或正在对其进行开发:

cd path/to/servers/src/shell
npx @modelcontextprotocol/inspector uv run mcp-server-shell

Claude 的问题示例

  1. "当前目录中有哪些文件?"
  2. "显示 README.md 文件的内容"
  3. "当前的系统日期是什么?"
  4. "检查是否安装了 Python 并显示其版本"

安全注意事项

⚠️ 警告: 此服务器直接在您的系统上执行 shell 命令。请谨慎使用,并实施适当的安全措施,以防止未经授权或危险的命令执行。

贡献

我们鼓励您贡献力量,以帮助扩展和改进 mcp-server-shell。无论您是想添加新功能、增强安全性还是改进文档,您的投入都很有价值。

有关其他 MCP 服务器和实现模式的示例,请参见: https://github.com/modelcontextprotocol/servers

欢迎提交 Pull Request!随时贡献新的想法、错误修复或增强功能,以使 mcp-server-shell 更加强大和有用。

许可证

mcp-server-shell 在 MIT 许可证下获得许可。这意味着您可以自由使用、修改和分发该软件,但须遵守 MIT 许可证的条款和条件。有关更多详细信息,请参见项目存储库中的 LICENSE 文件。

推荐服务器

Claude Code MCP

Claude Code MCP

一个实现了 Claude Code 作为模型上下文协议(Model Context Protocol, MCP)服务器的方案,它可以通过标准化的 MCP 接口来使用 Claude 的软件工程能力(代码生成、编辑、审查和文件操作)。

精选
本地
JavaScript
@kazuph/mcp-taskmanager

@kazuph/mcp-taskmanager

用于任务管理的模型上下文协议服务器。它允许 Claude Desktop(或任何 MCP 客户端)在基于队列的系统中管理和执行任务。

精选
本地
JavaScript
Beamlit MCP Server

Beamlit MCP Server

一个 MCP 服务器实现,它支持 Beamlit CLI 和 AI 模型之间的无缝集成,并使用模型上下文协议标准。

官方
TypeScript
ThingsPanel MCP

ThingsPanel MCP

一个集成服务器,将人工智能模型与 ThingsPanel 物联网平台连接起来,使人工智能助手能够通过自然语言与物联网设备交互,以进行设备控制、数据检索和管理操作。

官方
Python
systemd-coredump MCP Server

systemd-coredump MCP Server

启用支持 MCP 的应用程序,通过与 systemd-coredump 功能集成,来访问、管理和分析系统核心转储。

本地
JavaScript
Terminal Controller for MCP

Terminal Controller for MCP

一个 MCP 服务器,它通过一个标准化的接口,使 LLM 能够安全地执行终端命令、进行目录导航和进行文件系统操作。

本地
Python
mac-apps-launcher

mac-apps-launcher

一个 MCP 服务器,用于在 MacOS 上列出和启动应用程序。 (Yī gè MCP fúwùqì, yòng yú zài MacOS shàng lièchū hé qǐdòng yìngyòng chéngxù.)

本地
JavaScript
applescript-mcp

applescript-mcp

使LLM应用程序能够通过AppleScript与macOS交互。

本地
TypeScript
Google Tasks MCP Server

Google Tasks MCP Server

与 Google Tasks 集成,允许列出、读取、搜索、创建、更新和删除任务。

本地
TypeScript
MCP 3D Printer Server

MCP 3D Printer Server

通过 MCP 服务器实现与 3D 打印机管理系统的交互,支持 STL 文件操作、切片以及对 OctoPrint、Klipper、Duet 等打印机的控制。

本地
TypeScript