mcp
基于MCP协议安全执行Shell命令,支持白名单与标准输入
安装使用
复制下面这段提示词发给你的 AI(Claude / Cursor / TRAE / Codex / WorkBuddy 等),它会自动帮你完成安装:
帮我安装这个 AI Skill:mcp。 它的用途是:基于MCP协议安全执行Shell命令,支持白名单与标准输入 详细介绍见:https://321skill.com/skills/mcp-mcp-shell-server/ 请根据该页面的说明完成安装。
使用示例
'帮我执行 npm run build,并将输出中的错误信息提取出来',shell-server 会安全执行构建命令,返回标准输出和错误流。AI助手随后解析错误信息,给出修复建议。
介绍
在日常开发与运维中,直接执行Shell命令时常面临权限滥用、命令注入或误操作风险。shell-server 是一个基于MCP(Model Context Protocol)协议的安全执行工具,它通过白名单机制限制可运行的命令列表,并支持标准输入(stdin)传递参数,从而在保持灵活性的同时大幅降低安全风险。无论是构建、部署还是系统维护,你都可以通过AI助手安全地调用终端命令。
使用方式非常简单:你只需将shell-server配置为MCP客户端(如Claude Desktop、Cursor等)的工具,然后通过自然语言向AI描述你想执行的操作。AI会根据你的意图,在允许的白名单命令范围内生成并执行Shell命令,并返回输出结果。整个过程无需手动敲击终端,也无需担心误操作越界。
这个工具特别适合运维工程师、后端开发以及需要频繁执行自动化脚本的开发者。对于需要定期执行构建、部署、日志查询、系统监控等任务的团队,shell-server可以作为AI Agent与终端之间的安全桥梁,让AI辅助完成重复性操作,而无需开放完整的Shell权限。
需要注意的是,白名单的配置需要根据实际场景谨慎设定,避免将危险命令(如rm -rf /)加入白名单。同时,shell-server本身不提供命令结果的深度解析,复杂输出可能需要结合其他MCP工具(如文件读取、数据解析)进一步处理。建议在隔离的测试环境先验证白名单策略,再投入生产使用。
核心特点
相比其他Shell执行工具,shell-server严格遵循MCP协议,天然适配AI Agent生态,且通过白名单+标准输入双重机制控制命令执行范围,而非简单开放全部终端权限,安全粒度更细。
注意事项
仅能执行白名单中预先定义的命令,无法动态执行未授权命令;且依赖MCP客户端支持,不能脱离AI Agent单独使用。
常见问题
如何在Claude Desktop中配置shell-server?
在Claude Desktop的配置文件中添加MCP服务器,使用命令 `npx @modelcontextprotocol/server-shell` 启动,并可通过 `allowedCommands` 参数设置白名单。
白名单可以支持带参数的复合命令吗?
支持。白名单内可定义命令及允许的参数模式,例如 `ls -la` 或 `git status`,但不支持通配符或动态参数注入,需精确匹配。