使用说明
Maestro MCP-多客户端编排系统
用于模型上下文协议(MCP)的复杂编排系统,使多个MCP客户端能够通过具有共享状态管理的计划执行器模式进行协作。
🌟 特性
- 多客户端编排:将多个MCP客户端(Claude Code、Codex CLI)连接到共享服务器
- 计划执行器模式:将客户组织成复杂任务工作流的规划者和执行者
- STDIO-HTTP代理:将仅限STDIO的MCP客户端桥接到共享HTTP服务器
- 实时状态同步:基于文件的状态管理,带有自动观察程序
- 11编排工具:用于任务创建、规划和执行的全套工具
📋 先决条件
- Node.js v22+(用于本机获取支持)
- Windows 10/11(已测试),macOS/Linux(兼容)
- 克劳德代码和/或Codex CLI
🚀 快速开始
- 克隆存储库:
git clone https://github.com/BTankut/maestro-mcp.git
cd maestro-mcp
- 安装依赖项:
cd server
npm install
- 构建TypeScript文件:
npm run build
- 创建共享目录:
mkdir -p shared/clients shared/tasks shared/plans shared/reports
- 启动HTTP服务器:
npm run http-server
- 配置您的MCP客户端 (见下面的配置部分)
⚙️ 配置
克劳德代码(~/.claude.json)
{
"mcpServers": {
"maestro-mcp": {
"command": "node",
"args": ["C:\\path\\to\\maestro-mcp\\server\\dist\\index.js"]
}
}
}
Codex CLI(~/.codex/config.toml)
model = "gpt-5-codex"
[mcp_servers.maestro-mcp]
command = "C:\\Program Files\\nodejs\\node.exe"
args = ["C:\\path\\to\\maestro-mcp\\server\\dist\\index.js"]
startup_timeout_ms = 30000
[mcp_servers.maestro-mcp.env]
APPDATA = "C:\\Users\\YOUR_USERNAME\\AppData\\Roaming"
LOCALAPPDATA = "C:\\Users\\YOUR_USERNAME\\AppData\\Local"
ProgramFiles = "C:\\Program Files"
SystemRoot = "C:\\Windows"
NODE_ENV = "production"
🏗️ 建筑
该系统使用独特的STDIO-HTTP代理架构来实现多个MCP客户端之间的共享状态:
Claude Code → STDIO → Proxy → HTTP Server ← Proxy ← STDIO ← Codex CLI
↓
File-based State
有关详细的体系结构信息,请参见 建筑.md.
🛠️ 可用工具
register_client-注册具有计划/执行者角色的客户create_task-创建新的编排任务assign_task-将任务分配给计划员create_plan-制定执行计划distribute_plan-将计划分发给执行者submit_report-提交执行报告get_task_status-获取任务状态get_executor_reports-获取执行报告list_clients-列出所有已注册的客户list_tasks-列出所有任务list_plans-列出所有计划
📖 用法示例
-
注册客户:
- 克劳德作为策划人:
register_client({ clientName: "Claude-Planner", role: "planner" }) - 食品法典委员会作为执行者:
register_client({ clientName: "Codex-Executor", role: "executor" })
- 克劳德作为策划人:
-
创建和编排任务:
- 根据需求创建任务
- 计划员创建执行计划
- 分发给执行人
- 收集执行报告
🐛 故障排除
Codex超时问题
如果Codex显示“请求超时”,请确保:
- 环境变量在config.toml中设置
- 已指定完整Node.exe路径
- 启动超时时间增加到30000ms
有关详细的故障排除,请参阅 建筑.md.
📚 文档
🤝 贡献
欢迎投稿!请随时提交拉取请求。
📄 许可证
MIT许可证-请参阅 许可证 文件以获取详细信息。
🙏 致谢
- 建立在 模型上下文协议
- 受分布式编排模式的启发
- 特别感谢MCP社区
备注:此项目演示了如何克服MCP客户端限制(仅限STDIO传输),以实现具有共享状态的真正多客户端编排。
