article
README
🚀 远程命令 MCP 服务器
远程命令 MCP 服务器是一个基于 Model Context Protocol (MCP) 的服务器,它支持在不同操作系统间远程执行命令。该服务器提供了统一的接口来执行 shell 命令,还能自动处理 Windows 和 Unix-like 系统之间的平台差异,极大地提升了跨系统操作的便利性。
🚀 快速开始
远程命令 MCP 服务器可以让你在不同操作系统之间轻松实现远程命令执行。下面为你介绍如何快速搭建并使用该服务器。
✨ 主要特性
- 🌐 跨平台命令执行:支持在不同操作系统之间执行命令。
- ⚙️ Windows 和 Unix 之间的命令自动标准化:自动处理不同系统间命令差异。
- 🛠️ 内建错误处理和详细错误讯息:提供详细的错误信息,方便排查问题。
- 📤 包含
stdout和stderr的回应:完整反馈命令执行结果。 - 📁 迁移命令执行限制到特定目录:可指定命令执行的目录。
- 🖥️ 根据平台选择合适的 Shell:自动适配不同系统的 Shell。
📦 安装指南
按照以下步骤安装远程命令 MCP 服务器:
- 下载项目代码。
- 变更工作目录到项目根目录。
- 执行安装命令:
npm install
- 建立可执行文件:
npm run build
💻 使用示例
基础用法
使用 execute_remote_command 工具执行命令。以下是一些使用示例:
示例 1:执行 ls 在 Unix 系统,等同于 dir 在 Windows
execute_remote_command({
command: "list",
cwd: "."
});
示例 2:查询 .disk 文件
execute_remote_command({
command: "find . -name '*.disk'",
cwd: "/home/user"
});
📚 详细文档
安全注意事项
为确保服务器的安全使用,请遵循以下注意事项:
- 限制命令执行目录使用
cwd。 - 避免执行具有提升权限的命令。
- 控制 MCP 服务器的访问权限。
- 监控敏感操作。
平台命令处理
命令转换
不同系统之间的命令转换关系如下:
ls↔dircp↔copyrm↔del
Shell
不同系统使用的 Shell 如下:
- Windows:
cmd.exe - Unix/Linux:
/bin/sh
错误处理
服务器提供详细错误讯息,包含在回应中。如果命令失败,您将收到错误讯息,其中包含有关出错的详细信息。示例错误回应如下:
{
"content": [
{
"type": "text",
"text": "命令执行错误:命令以退出代码 1 失败"
}
],
"isError": true
}
开发
项目结构
remote-command-server/
├── src/
│ └── index.ts # 主服务器实现
├── package.json
├── tsconfig.json
└── README.md
构建
执行以下命令编译 TypeScript 代码并在 build 目录中创建可执行文件:
npm run build
贡献指南
欢迎为项目做出贡献,贡献步骤如下:
- 分叉项目库。
- 创建功能分支 (
git checkout -b feature/amazing-feature)。 - 提交更改 (
git commit -m '添加一些惊人的功能')。 - 推送到分支 (
git push origin feature/amazing-feature)。 - 开启 Pull Request。
📄 许可证
此项目遵循 MIT 许可证 - 请参阅 LICENSE 文件以获取细节。
微信扫一扫