article
README
🚀 MCP 命令代理服务器
MCP(模型上下文协议)命令代理服务器,作为命令行工具的代理,专为 Expo 开发量身打造,也能适配任何命令行应用程序,助力开发者更高效地运行和管理命令。
🚀 快速开始
在 Cursor 中使用(以 Expo 为例)
- 进入你的 Expo 项目目录。
- 运行命令
npx mcp-command-proxy --prefix "ExpoServer" --command "expo start" --port 8383。 - 打开 Cursor 设置 -> MCP -> 点击“+添加新的 MCP 服务器”,如图所示:

- 设置名称为“ExpoServer”,类型为“SSE”,URL 为
http://localhost:8383/sse。 - 点击“保存”后,即可在 Cursor 中使用该 MCP 服务器,效果如下:

⚠️ 重要提示
建议使用
--port 8383标志以避免与其他服务器冲突。还可以将以下指令添加到.cursorrules文件中:
你可以使用 MCP 的 getRecentLogs 工具获取 Expo 服务器的最新日志。如果需要,可以使用 sendKeyPress 工具向正在运行的进程发送按键。
✨ 主要特性
- 命令代理:通过 MCP 服务器运行任何 CLI 命令。
- 日志收集:捕获并存储运行进程的日志(可配置缓冲区大小)。
- 按键转发:将客户端的按键转发到运行进程。
- 透明体验:最终用户看到的命令输出与直接运行完全一致。
- 交互式命令支持:适用于交互式 CLI 工具,如 Expo。
- MCP 集成:基于 MCP SDK 构建,便于与 Claude 和其他 MCP 启用的 AI 助手集成。
🔧 技术细节
工作原理
- 服务器在伪终端(PTY)中启动指定的命令。
- 所有 stdout/stderr 输出会进行如下处理:
- 实时 streamed 到客户端。
- 存储在环形缓冲区中(可配置大小,默认 300 行)。
- 客户端的按键会转发到运行进程。
- 服务器提供以下工具:
- 查看收集的日志。
- 向进程发送按键。
- 获取进程的当前状态。
📦 安装指南
需求
- Node.js (版本 16 及以上)
- npm 或 yarn
- 操作系统(Windows、Linux、macOS)
安装步骤
# 克隆仓库
git clone https://github.com/hormold/mcp-command-proxy.git
cd mcp-command-proxy
# 安装依赖
pnpm install
# 构建项目
pnpm build
# 运行
pnpm start
💻 使用示例
基本用法
mcp-command-proxy [选项]
选项
--version、-v:输出包版本。--help、-h:输出使用帮助。--port、-p:指定服务器端口,默认值为 3000。--prefix、-x:指定命令前缀,例如“sudo”。--command、-c:指定要执行的命令。
示例
- 运行基本服务器:
mcp-command-proxy --port 8080
- 带命令前缀运行:
mcp-command-proxy --prefix "sudo" --command "npm start"
- 运行 Expo:
mcp-command-proxy --command "expo start"
- 在 Claude 中使用:
claude run expo start
📚 详细文档
MCP 集成
该实现包含以下 MCP 工具:
getRecentLogs
获取最近的日志条目。
参数
limit:要返回的最新日志条目的数量,默认值为 10。
sendKeyPress
向正在运行的进程发送按键事件。
参数
key:按下的键,例如“ArrowUp”或“Enter”。
开发
# 克隆仓库
git clone https://github.com/hormold/mcp-command-proxy.git
cd mcp-command-proxy
# 安装依赖
pnpm install
# 构建项目
pnpm build
# 启动开发模式
pnpm dev
📄 许可证
本项目采用 MIT 许可证。
微信扫一扫