article
README
🚀 Shell命令执行MCP服务器
本项目是一个用于大语言模型(LLM)的安全Shell命令执行MCP服务器,能为LLM提供安全的Shell命令执行能力。
🚀 快速开始
本项目是一个MCP服务器实现,专门为大语言模型(LLM)提供安全的Shell命令执行能力。
✨ 主要特性
- 安全执行:仅允许白名单中的命令和参数,保障执行环境安全。
- 资源控制:对内存和CPU使用情况进行监控,避免资源过度占用。
- 超时控制:自动终止长时间运行的命令,防止程序无限制运行。
- 大小限制:对输出结果大小进行限制,确保安全性。
- MCP集成:可与Claude和其他兼容MCP的LLM一起使用。
📦 安装指南
使用以下命令进行安装:
npm install @kevinwatt/shell-mcp
📚 详细文档
与Dive Desktop配置
- 在Dive Desktop中点击“+ 添加MCP服务器”。
- 复制并粘贴以下配置:
{
"mcpServers": {
"shell": {
"command": "npx",
"args": [
"-y",
"@kevinwatt/shell-mcp"
]
}
}
}
工具文档
- shell_ls, shell_pwd, shell_df 等
- 执行经过验证的Shell命令。
- 输入:
command(字符串,必需):要执行的命令。args(数组,可选):命令参数。timeout(数字,可选):执行超时时间(单位:毫秒)。
可用命令
| 命令 | 描述 | 允许的参数 |
|--------------|--------------------|------------|
| shell_ls | 列出目录中的文件 | 无 |
| shell_pwd | 显示当前工作目录 | 无 |
| shell_df | 显示磁盘使用情况 | 可选:-h |
| 其他命令 | 具体功能请参考文档 | 根据命令不同而变化 |
注意:所有命令都需要通过白名单验证后方可执行。
💻 使用示例
基础用法
要求您的LLM执行以下操作:
"显示当前目录使用shell_pwd"
"使用shell_ls和-l参数列出文件"
"使用shell_df和-h参数检查磁盘使用情况"
手动启动
如果需要,可以手动启动服务器:
npx @kevinwatt/shell-mcp
🔧 技术细节
需求
- Node.js 18+
- 兼容MCP的LLM服务
开发
# 安装依赖项
npm install
# 监视模式
npm run watch
# 运行测试
npm test
# 校验代码风格
npm run lint
📄 许可证
本项目采用MIT许可证,© 德维·严。
关键字
- mcp
- shell
- command
- claude
- llm
- 自动化
扫码联系在线客服