modelscope·@cfdude/super-shell-mcp
暂无描述。
这是一个用于在多个平台(Windows、macOS 和 Linux)上执行 shell 命令的 MCP(Model Context Protocol)服务器。该服务器提供了一种安全的方式来执行 shell 命令,并内置了白名单和审批机制。
要通过 Smithery 自动安装适用于 Claude Desktop 的 Super Shell MCP 服务器:
bash npx -y @smithery/cli install @cfdude/super-shell-mcp --client claude
bash
git clone https://github.com/cfdude/super-shell-mcp.git cd super-shell-mcp
npm install
npm run build
bash npm start
或者直接运行:
bash node build/index.js
Roo Code 和 Claude Desktop 使用类似的 MCP 服务器配置格式。以下是设置 Super Shell MCP 服务器的方法:
使用 NPX 是最简单的方式,它会自动从 npm 安装并运行包,而无需手动设置。该包在 NPM 上的地址为 https://www.npmjs.com/package/super-shell-mcp。
json "super-shell": { "command": "npx", "args": [ "-y", "super-shell-mcp" ], "alwaysAllow": [], "disabled": false }
json "super-shell": { "command": "npx", "args": [ "-y", "super-shell-mcp" ], "alwaysAllow": false, "disabled": false }
如果您更喜欢使用本地安装,请将以下内容添加到您的 Roo Code MCP 设置配置文件中(位于 ~/Library/Application Support/Code/User/globalStorage/rooveterinaryinc.roo-cline/settings/cline_mcp_settings.json):
json "super-shell": { "command": "node", "args": [ "/path/to/super-shell-mcp/build/index.js" ], "alwaysAllow": [], "disabled": false }
您可以选择性地通过添加 shell 参数来指定自定义 shell:
json "super-shell": { "command": "node", "args": [ "/path/to/super-shell-mcp/build/index.js", "--shell=/usr/bin/bash" ], "alwaysAllow": [], "disabled": false }
Windows 11 示例 json "super-shell": { "command": "C:\Program Files\nodejs\node.exe", "args": [ "C:\Program Files\nodejs\node_modules\npm\bin\npx-cli.js", "-y", "super-shell-mcp", "C:\Users\username" ], "alwaysAllow": [], "disabled": false }
将以下内容添加到您的 Claude Desktop 配置文件中(位于 ~/Library/Application Support/Claude/claude_desktop_config.json):
json
"super-shell": {
"command": "node",
"args": [
"/path/to/super-shell-mcp/build/index.js"
],
"alwaysAllow": false,
"disabled": false
}对于 Windows 用户,配置文件通常位于 %APPDATA%Claudeclaude_desktop_config.json。
%APPDATA%CodeUserglobalStorage ooveterinaryinc.roo-clinesettingscline_mcp_settings.json%APPDATA%Claudeclaude_desktop_config.jsonC:\Windows\System32\cmd.exeC:\Windows\System32\WindowsPowerShell\v1.0\powershell.exeC:\Program Files\PowerShell\7\pwsh.exe~/Library/Application Support/Code/User/globalStorage/rooveterinaryinc.roo-cline/settings/cline_mcp_settings.json~/Library/Application Support/Claude/claude_desktop_config.json/bin/zsh/bin/bash/bin/sh~/.config/Code/User/globalStorage/rooveterinaryinc.roo-cline/settings/cline_mcp_settings.json~/.config/Claude/claude_desktop_config.json/bin/bash/bin/sh/usr/bin/zsh您可以选择指定自定义 shell:
json "super-shell": { "command": "node", "args": [ "/path/to/super-shell-mcp/build/index.js", "--shell=C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe" ], "alwaysAllow": false, "disabled": false }
将 /path/to/super-shell-mcp 替换为您克隆仓库的实际路径。
注意:
- 对于 Roo Code:出于安全考虑,建议将
alwaysAllow设置为空数组[],这样在执行任何命令前都会提示批准。如果您希望允许某些命令而不提示,则可以将这些命令的名称添加到数组中,例如:"alwaysAllow": ["execute_command", "get_whitelist"]。- 对于 Claude Desktop:出于安全考虑,建议将
alwaysAllow设置为false。Claude Desktop 使用布尔值而不是数组,其中false表示所有命令都需要批准,而true则表示所有命令无需提示即可执行。重要:
alwaysAllow参数由 MCP 客户端(Roo Code 或 Claude Desktop)处理,而不是 Super Shell MCP 服务器本身。无论使用哪种格式,服务器都能正常工作,因为客户端在向服务器发送请求之前会处理审批过程。
服务器公开了以下 MCP 工具:
get_platform_info获取当前平台和 shell 的信息。
json {}
execute_command在当前平台上执行 shell 命令。
json { "command": "ls", "args": ["-la"] }
get_whitelist获取白名单命令列表。
json {}
add_to_whitelist将命令添加到白名单。
json { "command": "python3", "securityLevel": "safe", "description": "运行 Python 3 脚本" }
update_security_level更新白名单命令的安全级别。
json { "command": "python3", "securityLevel": "requires_approval" }
remove_from_whitelist从白名单中移除命令。
json { "command": "python3" }
get_pending_commands获取待批准的命令列表。
json {}
approve_command批准一个待批准的命令。
json { "commandId": "command-uuid-here" }
deny_command拒绝一个待批准的命令。
json { "commandId": "command-uuid-here", "reason": "此命令可能有危险" }
服务器包含基于检测到的平台自动选择的平台特定命令白名单。
echo - 将文本打印到标准输出### 类 Unix 安全命令 (macOS/Linux)
ls - 列出目录内容
pwd - 打印当前工作目录
echo - 将文本打印到标准输出
cat - 连接并打印文件
grep - 在文件中搜索模式
find - 在目录层次结构中查找文件
cd - 更改目录
head - 输出文件的开头部分
tail - 输出文件的末尾部分
wc - 打印行数、单词数和字节数
dir - 列出目录内容type - 显示文本文件的内容findstr - 在文件中搜索字符串where - 定位程序whoami - 显示当前用户hostname - 显示计算机名称ver - 显示操作系统版本copy - …