Shell MCP Server

Shell MCP Server

site icon
2024.12.11 31
JavaScriptshell命令执行安全执行环境开发效率
mcp-shell 是一个基于 Node.js 实现的 Model Context Protocol (MCP) 服务器,提供安全的 shell 命令执行能力。该服务器允许 AI 模型在受控环境中执行 shell 命令,并内置了多种安全措施。它可以轻松集成到 Claude Desktop 中,实现 Claude 与 shell 的连接。
View on GitHub

Overview

基本能力

产品定位

mcp-shell 是一个安全的 shell 命令执行服务,专为 AI 模型设计,提供受控的命令执行环境。

核心功能

  • MCP 兼容的服务器实现
  • 带有黑名单保护的安全命令执行
  • 命令存在性验证
  • 基于标准 I/O 的传输
  • 错误处理和优雅关闭

适用场景

  • AI 模型需要执行 shell 命令的场景
  • 需要安全控制命令执行的开发环境
  • 与 Claude Desktop 集成的开发工作流

工具列表

run_command

执行 shell 命令并返回其输出。

输入格式:

{
  "type": "object",
  "properties": {
    "command": { "type": "string" }
  }
}

响应:

  • 成功: 命令输出为纯文本
  • 错误: 错误信息为纯文本

常见问题解答

  1. 如何安装?
  2. 运行 npx mcp-shell
  3. 要添加到 Claude Desktop,运行 npx mcp-shell config 或手动添加 npx -y mcp-shell 到配置中

  4. 安全特性有哪些?

  5. 命令黑名单保护
  6. 命令存在性验证
  7. 防止执行危险系统命令
  8. 防止文件系统破坏
  9. 防止权限提升

  10. 哪些命令被禁止?

  11. 文件系统破坏命令 (rm, rmdir, del)
  12. 磁盘/文件系统命令 (format, mkfs, dd)
  13. 权限/所有权命令 (chmod, chown)
  14. 权限提升命令 (sudo, su)
  15. 代码执行命令 (exec, eval)
  16. 系统通信命令 (write, wall)
  17. 系统控制命令 (shutdown, reboot, init)

使用教程

使用依赖

需要安装 Node.js 环境。

安装教程

  1. 运行安装命令: bash npx mcp-shell

  2. 添加到 Claude Desktop: bash npx mcp-shell config 或手动添加 npx -y mcp-shell 到配置中

  3. 启动或重启 Claude Desktop

调试方式

  1. 检查服务是否运行: bash ps aux | grep mcp-shell

  2. 测试命令执行: bash echo '{"command":"ls"}' | npx mcp-shell

  3. 查看错误日志:

  4. 检查命令执行返回的错误信息
  5. 检查 Node.js 进程的输出日志

许可证

该项目遵循 MIT 开源许可条款,请参阅 MIT 了解完整条款。