{
"mcpServers": {
"meshseeks": {
"command": "node",
"args": ["/absolute/path/to/meshseeks/dist/mesh-server.js"],
"env": {
"MCP_MESH_MAX_AGENTS": "5",
"MESHSEEKS_CATCHPHRASE": "true"
}
}
}
}
{
"mcpServers": {
"Local MCP Server": {
"type": "stdio",
"command": "node",
"args": [
"dist/server.js"
],
"env": {
"MCP_USE_ROOMODES": "true",
"MCP_WATCH_ROOMODES": "true",
"MCP_CLAUDE_DEBUG": "false"
}
},
"other-services": {
// Your other MCP services here
}
}
}
{
"mcpServers": {
"claude-code-mcp-enhanced": {
"command": "npx",
"args": ["github:grahama1970/claude-code-mcp-enhanced"],
"env": {
"MCP_USE_ROOMODES": "true",
"MCP_WATCH_ROOMODES": "true",
"MCP_CLAUDE_DEBUG": "false"
}
}
}
}
🚀 MeshSeeks - 我是MeshSeeks,看过来!
MeshSeeks 能够生成专门的 AI 代理,这些代理可以并行工作,以解决复杂的编码问题。就像启发我们命名的那些乐于助人的蓝色生物一样,每个代理都有一个单一的目的:完成分配给它们的任务,并帮助你取得成功。它基于 grahama1970/claude-code-mcp-enhanced 构建,其分布式智能灵感源自 Claude Research。
🚀 快速开始
60 秒快速体验
想立即看到 MeshSeeks 的实际运行效果吗? 以下是最快的途径:
# 1. 克隆并构建项目(30 秒)
git clone https://github.com/twalichiewicz/meshseeks.git && cd meshseeks && npm install && npm run build
# 2. 获取配置文件路径
echo "添加到: $(echo ~/Library/Application\ Support/Claude/claude_desktop_config.json)"
# 3. 复制此配置(修改路径)
echo '{
"mcpServers": {
"meshseeks": {
"command": "node",
"args": ["'$(pwd)'/dist/mesh-server.js"]
}
}
}'
然后重启 Claude Desktop 并尝试输入:"Use mesh_status to check MeshSeeks"
完整安装指南:跳转到快速开始(5 分钟)
5 分钟快速开始
前提条件
- Node.js v20+ - 通过 nvm 或 fnm 进行安装。
- Claude CLI - 安装并使用权限运行一次:
npm install -g @anthropic-ai/claude-code claude --dangerously-skip-permissions # 运行一次并接受条款
安装 MeshSeeks
选项 1:从 GitHub 安装(推荐)
# 克隆并构建
git clone https://github.com/twalichiewicz/meshseeks.git
cd meshseeks
npm install
npm run build
# 添加到你的 MCP 配置(见下面的路径)
选项 2:直接从 npm 安装(即将推出)
# 注意:包将发布为 @twalichiewicz/meshseeks
npm install -g @twalichiewicz/meshseeks
配置客户端
将 MeshSeeks 添加到你的 MCP 配置文件中:
查找配置文件:
- Claude Desktop:
~/Library/Application Support/Claude/claude_desktop_config.json
(Mac) - Cursor:
~/.cursor/mcp.json
- Windsurf:
~/.codeium/windsurf/mcp_config.json
添加此配置:
{
"mcpServers": {
"meshseeks": {
"command": "node",
"args": ["/absolute/path/to/meshseeks/dist/mesh-server.js"],
"env": {
"MCP_MESH_MAX_AGENTS": "5",
"MESHSEEKS_CATCHPHRASE": "true"
}
}
}
}
提示:将
/absolute/path/to/meshseeks
替换为你克隆步骤中的实际路径。
验证安装
- 重启客户端(Claude Desktop、Cursor 或 Windsurf)
- 测试 MeshSeeks:在新的聊天中输入:
Use the mesh_status tool to show me the MeshSeeks network status
- 查看实际运行效果:
Use mesh_solve_problem to create a simple Python calculator with tests
就这么简单!MeshSeeks 已准备好加速你的编码任务。🎉
首个任务建议
尝试以下命令,体验并行代理的强大功能:
"Use mesh_analyze_problem to analyze the architecture of [your project]"
"Use mesh_execute_tasks to implement a REST API with full CRUD operations"
"Use mesh_solve_problem to refactor this code with tests and documentation"
✨ 主要特性
代理网状网络
- 并行处理:多个 Claude 代理同时处理不同方面的任务。
- 专业角色:分析、实现、测试、文档编写和调试代理。
- 4 倍上下文容量:每个代理都有自己的 200k 令牌上下文窗口。
- 智能协调:依赖管理和智能任务分配。
- 结果合成:自动聚合和冲突解决。
- 🆕 实时状态面板:实时可视化反馈,防止出现“挂起”现象。
增强的 MCP 工具
除了 Graham 的增强工具外,网状网络还提供:
mesh_analyze_problem
- 将复杂问题分解为代理任务。mesh_execute_tasks
- 执行带有依赖管理的任务。mesh_solve_problem
- 使用多种策略进行端到端问题解决。mesh_status
- 监控网络性能和代理指标。
🆕 实时状态面板
不再有黑屏!新的状态面板提供:
- 实时更新:每秒刷新一次可视化进度。
- 代理跟踪:查看哪些代理处于活动状态以及它们正在处理的任务。
- 任务进度:进度条和依赖关系可视化。
- 性能指标:吞吐量、计时和成功率。
- 活动日志:最近的事件和状态更改。
运行 npm run demo:status
查看实际效果!
📦 安装指南
详细安装指南
如需高级配置选项、故障排除或手动设置,请参阅我们的 全面安装指南。
重要的首次设置:接受权限
在 MCP 服务器能够成功使用 claude_code
工具之前,你必须首先手动运行一次 Claude CLI,并使用 --dangerously-skip-permissions
标志,登录并接受条款。
这是 Claude CLI 的一次性要求。
npm install -g @anthropic-ai/claude-code
claude --dangerously-skip-permissions
按照提示接受条款。完成此操作后,MCP 服务器将能够以非交互方式使用该标志。
macOS 可能会在工具首次运行时要求各种文件夹权限,并且首次运行可能会失败。后续运行将正常工作。
连接到 MCP 客户端
设置服务器后,你需要配置 MCP 客户端(如 Cursor、Claude Desktop 或其他使用 mcp.json
或 mcp_config.json
的客户端)。
示例 MCP 配置文件
以下是如何将 Claude Code MCP 服务器添加到 .mcp.json
文件的示例:
{
"mcpServers": {
"Local MCP Server": {
"type": "stdio",
"command": "node",
"args": [
"dist/server.js"
],
"env": {
"MCP_USE_ROOMODES": "true",
"MCP_WATCH_ROOMODES": "true",
"MCP_CLAUDE_DEBUG": "false"
}
},
"other-services": {
// 你的其他 MCP 服务
}
}
}
MCP 配置位置
配置通常在 JSON 文件中完成。文件名和位置可能因客户端而异。
Cursor
Cursor 使用 mcp.json
。
- macOS:
~/.cursor/mcp.json
- Windows:
%APPDATA%\\Cursor\\mcp.json
- Linux:
~/.config/cursor/mcp.json
Windsurf
Windsurf 用户使用 mcp_config.json
- macOS:
~/.codeium/windsurf/mcp_config.json
- Windows:
%APPDATA%\\Codeium\\windsurf\\mcp_config.json
- Linux:
~/.config/.codeium/windsurf/mcp_config.json
(注意:在某些混合设置中,如果同时安装了 Cursor,这些客户端可能会回退到使用 Cursor 的 ~/.cursor/mcp.json
路径。如果使用 Codeium 扩展,请优先使用 Codeium 特定的路径。)
如果文件不存在,请创建它。
💻 使用示例
基本代码操作
示例 MCP 请求:
{
"toolName": "claude_code:claude_code",
"arguments": {
"prompt": "Your work folder is /path/to/project\n\nRefactor the function foo in main.py to be async.",
"workFolder": "/path/to/project"
}
}
任务编排(回飞镖模式)
父任务请求
{
"toolName": "claude_code:claude_code",
"arguments": {
"prompt": "Your work folder is /path/to/project\n\nOrchestrate the implementation of a new API endpoint with the following subtasks:\n1. Create database models\n2. Implement API route handlers\n3. Write unit tests\n4. Document the API",
"workFolder": "/path/to/project"
}
}
子任务请求(由父任务生成)
{
"toolName": "claude_code:claude_code",
"arguments": {
"prompt": "Your work folder is /path/to/project\n\nCreate database models for the new API endpoint as specified in the requirements.",
"workFolder": "/path/to/project",
"parentTaskId": "task-123",
"returnMode": "summary",
"taskDescription": "Database model creation for API endpoint"
}
}
特殊模式请求
使用 Roo 模式的示例:
{
"toolName": "claude_code:claude_code",
"arguments": {
"prompt": "Your work folder is /path/to/project\n\nCreate unit tests for the user authentication module.",
"workFolder": "/path/to/project",
"mode": "coder"
}
}
📚 详细文档
任务转换器
MCP 服务器包含一个强大的任务转换器工具,可自动将人类可读的 Markdown 任务列表转换为完全可执行的 MCP 命令。这个智能转换器弥合了人类思考任务的方式与机器执行任务的方式之间的差距。
完整工作流程
graph TD
A["👤 用户"] -->|"创建 tasks.md"| B["📝 多任务 Markdown"]
A -->|"向 Claude 发出提示"| C["🤖 Claude Desktop"]
C -->|"使用 convert_task_markdown"| D["🔄 任务转换器 MCP"]
D -->|"验证格式"| E{"格式是否有效?"}
E -->|"否"| F["📑 错误 + 修复说明"]
F -->|"返回给用户"| A
E -->|"是"| G["📋 MCP 任务列表"]
G -->|"执行任务"| H1["⚡ Claude 任务 #1"]
H1 -->|"完成"| I1["下一个任务"]
I1 -->|"执行任务"| H2["⚡ Claude 任务 #2"]
H2 -->|"完成"| I2["下一个任务"]
I2 -->|"执行任务"| H3["⚡ Claude 任务 #3"]
H3 -->|"完成"| I3["更多任务"]
I3 -->|"执行任务"| HN["⚡ Claude 任务 #N"]
HN -->|"完成"| IN["🎉 所有任务完成!"]
style A fill:#4A90E2,stroke:#fff,stroke-width:2px,color:#fff
style C fill:#7C4DFF,stroke:#fff,stroke-width:2px,color:#fff
style D fill:#00BCD4,stroke:#fff,stroke-width:2px,color:#fff
style F fill:#FF5252,stroke:#fff,stroke-width:2px,color:#fff
style G fill:#4CAF50,stroke:#fff,stroke-width:2px,color:#fff
style H1 fill:#FFC107,stroke:#fff,stroke-width:2px,color:#fff
style H2 fill:#FFC107,stroke:#fff,stroke-width:2px,color:#fff
style H3 fill:#FFC107,stroke:#fff,stroke-width:2px,color:#fff
style HN fill:#FFC107,stroke:#fff,stroke-width:2px,color:#fff
style IN fill:#4CAF50,stroke:#fff,stroke-width:2px,color:#fff
工作流程步骤
- 用户将 MCP 添加到其配置文件中
- 用户向 Claude 发出提示:
"Use convert_task_markdown to execute my tasks.md file"
- MCP 自动执行以下操作:
- 加载 Markdown 文件
- 验证格式(如果缺少部分则返回错误)
- 将人类可读的任务转换为精确的可执行命令
- 返回 Claude Code 可以顺序执行的 JSON
- Claude 接收 JSON 并可以使用
claude_code
工具执行每个任务
关键特性
- 自动路径解析:将通用指令(如“切换到项目目录”)转换为带有完整路径的精确可执行命令。
- 智能命令翻译:将英语指令转换为精确的终端命令(例如,“激活虚拟环境” →
source .venv/bin/activate
)。 - MCP 协议合规:确保所有输出与模型上下文协议 100% 兼容。
- 无歧义:所有生成的命令使用精确的路径和可执行语法 - 没有占位符或通用引用。
- 格式验证:强制执行正确的 Markdown 结构,并为不正确的格式提供有用的错误消息。
- 实时进度更新:在转换过程中提供实时进度更新,显示正在处理的任务。
将 Markdown 任务转换为 MCP 命令
convert_task_markdown
工具处理结构化 Markdown 文件并生成与 MCP 兼容的 JSON:
请求格式:
{
"tool": "convert_task_markdown",
"arguments": {
"markdownPath": "/path/to/tasks.md",
"outputPath": "/path/to/output.json" // 可选
}
}
响应格式:
{
"tasksCount": 5,
"outputPath": "/path/to/output.json",
"tasks": [
{
"tool": "claude_code",
"arguments": {
"command": "cd /project && source .venv/bin/activate\n\nTASK TYPE: Validation...",
"dangerously_skip_permissions": true,
"timeout_ms": 300000
}
}
// ... 更多任务
]
}
Markdown 任务文件格式
任务 Markdown 文件应遵循以下结构:
# Task 001: 任务标题
## 目标
清晰描述需要完成的任务。
## 要求
1. [ ] 第一个要求
2. [ ] 第二个要求
## 任务
### 模块或组件名称
- [ ] 验证 `path/to/file.py`
- [ ] 步骤 1
- [ ] 步骤 2
- [ ] 步骤 3
转换器将:
- 解析 Markdown 结构
- 提取任务元数据和要求
- 为每个验证任务生成详细的提示
- 包含正确的工作目录设置
- 添加验证和完成摘要
示例用法
- 创建任务文件 (
tasks/api_validation.md
):
# Task 001: API 端点验证
## 目标
验证所有 API 端点是否能与真实数据库连接正常工作。
## 要求
1. [ ] 所有端点必须使用真实数据库
2. [ ] 验证中不使用模拟数据
## 核心 API 任务
- [ ] 验证 `api/users.py`
- [ ] 切换到项目目录并激活 .venv
- [ ] 测试用户创建端点
- [ ] 测试用户检索端点
- [ ] 验证 JSON 响应
- 转换为 MCP 任务:
{
"tool": "convert_task_markdown",
"arguments": {
"markdownPath": "/project/tasks/api_validation.md"
}
}
-
转换器显示实时进度:
[进度] 加载任务文件... [进度] 验证 Markdown 结构... [进度] 转换 27 个验证任务... [进度] 任务 1/27: 转换 core/constants.py [进度] 任务 2/27: 转换 core/arango_setup.py ... [进度] 转换完成!
-
转换器将通用指令转换为精确命令:
- “切换到项目目录并激活 .venv” 变为:
cd /home/user/project && source .venv/bin/activate
- 所有路径都解析为绝对路径
- 所有命令都是完全可执行的,没有歧义
- “切换到项目目录并激活 .venv” 变为:
-
执行转换后的任务: 返回的任务包含精确的可执行命令,可以使用
claude_code
工具顺序执行。
完整示例:从 Markdown 到执行
步骤 1:用户创建 Markdown 任务文件 (project_tasks.md
):
# Task 001: 设置开发环境
## 目标
使用所有依赖项初始化开发环境。
## 要求
1. [ ] 安装 Python 3.11+
2. [ ] 创建虚拟环境
## 任务
- [ ] 验证 `setup.py`
- [ ] 切换到项目目录
- [ ] 创建虚拟环境
- [ ] 安装依赖项
步骤 2:用户向 Claude 发出提示:
Use convert_task_markdown to process /home/user/project_tasks.md
步骤 3:MCP 进行转换和验证:
- 如果格式正确:返回可执行的 JSON
- 如果格式错误:返回带有指导的错误
步骤 4:结果(如果成功):
[
{
"tool": "claude_code",
"arguments": {
"prompt": "cd /home/user/project && python -m venv .venv && source .venv/bin/activate && pip install -r requirements.txt",
"workFolder": "/home/user/project"
}
}
]
步骤 5:Claude 可以顺序执行每个任务
格式验证和错误处理
任务转换器强制执行特定的 Markdown 结构,以确保一致且可靠的任务转换。如果你的 Markdown 文件格式不正确,转换器会提供有用的错误消息:
示例错误响应:
{
"status": "error",
"error": "Markdown 格式验证失败",
"details": "Markdown 格式验证失败:\n - 缺少必需的标题。格式: '# Task NNN: 标题'\n - 缺少或为空的 '要求' 部分。格式: '## 要求\\n1. [ ] 要求'\n - 未找到验证任务。格式: '- [ ] 验证 `module.py`' 并带有缩进步骤\n\n必需的 Markdown 格式:\n# Task NNN: 标题\n## 目标\n清晰描述\n## 要求\n1. [ ] 第一个要求\n## 任务部分\n- [ ] 验证 `file.py`\n - [ ] 步骤 1\n - [ ] 步骤 2",
"helpUrl": "https://github.com/grahama1970/claude-code-mcp-enhanced/blob/main/README.md#markdown-task-file-format"
}
验证确保:
- 存在必需的部分(标题、目标、要求)
- 任务使用正确的复选框格式
- 每个任务都有缩进步骤
- 要求使用复选框格式以保持一致性
任务编排模式
本 MCP 服务器支持强大的任务编排功能,以高效处理复杂的工作流程。
回飞镖模式(Claude Desktop ⟷ Claude Code)
回飞镖模式允许 Claude Desktop 编排任务并将其委托给 Claude Code。这使你能够:
- 将复杂的工作流程分解为更小、更易于管理的子任务。
- 将上下文从父任务传递给子任务。
- 从子任务获取结果并返回给父任务。
- 在详细或总结结果之间进行选择。
- 通过结构化任务列表跟踪和管理进度。
回飞镖模式可视化
以下是一个简单的图表,展示了 Claude 如何将一个食谱任务分解为步骤并将其委托给 Claude Code:
graph TB
User("👨🍳 用户")
Claude("🤖 Claude (父任务)")
Code1("🧁 Claude Code")
Code2("🧁 Claude Code")
User-->|"制作巧克力蛋糕"| Claude
Claude-->|"任务 1: 查找食谱"| Code1
Code1-->|"结果: 找到食谱"| Claude
Claude-->|"任务 2: 转换度量单位"| Code2
Code2-->|"结果: 度量单位已转换"| Claude
Claude-->|"完整食谱 + 说明"| User
在这个示例中:
- 用户要求 Claude 制作巧克力蛋糕食谱。
- Claude(父任务)将其分解为单独的任务。
- Claude 将 “查找食谱” 任务委托给 Claude Code,并带有父任务 ID。
- Claude Code 将食谱信息返回给 Claude。
- Claude 将 “转换度量单位” 任务委托给 Claude Code。
- Claude Code 返回转换后的度量单位。
- Claude 合并所有结果并向用户呈现完整的解决方案。
简单任务示例
任务 1 - 查找食谱:
{
"toolName": "claude_code:claude_code",
"arguments": {
"prompt": "Search for a classic chocolate cake recipe. Find one with good reviews.",
"parentTaskId": "cake-recipe-123",
"returnMode": "summary",
"taskDescription": "Find Chocolate Cake Recipe"
}
}
任务 2 - 转换度量单位:
{
"toolName": "claude_code:claude_code",
"arguments": {
"prompt": "Convert the measurements in this recipe from cups to grams:\n\n- 2 cups flour\n- 1.5 cups sugar\n- 3/4 cup cocoa powder",
"parentTaskId": "cake-recipe-123",
"returnMode": "summary",
"taskDescription": "Convert Recipe Measurements"
}
}
工作原理
- 创建子任务:
- 在父任务中生成唯一的任务 ID。
- 向
claude_code
工具发送请求,包含:- 特定的提示
- 父任务 ID
- 任务描述
- 所需的返回模式('summary' 或 'full')
- 接收结果:
- 子任务结果将包含一个特殊标记:
<!-- BOOMERANG_RESULT {...} -->
- 此标记包含带有任务元数据的 JSON
- 父任务可以解析此标记以识别已完成的子任务
- 子任务结果将包含一个特殊标记:
- Claude Desktop 示例工作流程:
你: 我需要重构这个代码库。它相当复杂。
Claude Desktop: 我会帮助你。让我将其分解为更小的任务,让 Claude Code 来处理:
1. 首先,我会让 Claude Code 分析代码库结构。
2. 然后,我会让它识别有问题的模式。
3. 最后,我会让它生成一个重构计划。
[Claude Desktop 向 claude_code 工具发送请求,parentTaskId="task1" 且 returnMode="summary"]
[Claude Code 分析代码库并返回带有 BOOMERANG_RESULT 标记的摘要]
Claude Desktop: 根据 Claude Code 的分析,发现了以下关键问题:
- 模块 X 和 Y 中存在重复代码。
- 模块 Z 中关注点分离不佳。
- 命名约定不一致。
现在我会让 Claude Code 建议具体的重构方案...
这种方法对于需要深入分析或多个步骤的复杂任务特别有用。
全面任务列表管理示例
以下是一个详细的示例,展示了如何使用 Claude 和 Claude Code MCP 来管理和执行结构化任务列表:
1. 设置任务列表结构
首先,创建一个任务列表文件(例如,tasks.md
),其结构如下:
# 项目任务列表
## 父任务: API 优化项目
- [ ] 优化高流量端点的 API 性能
- [ ] 分析当前 API 性能并确定瓶颈
- [ ] 为用户端点实现数据库查询优化
- [ ] 为频繁访问的数据添加 Redis 缓存
- [ ] 设置性能监控
## 假设和决策
- [2025-05-15] 假设: Redis 在基础设施中可用
- [2025-05-15] 决策: 首先关注用户端点(理由: 流量最高的区域)
## 相关文件
- `src/controllers/userController.js`: 用户 API 端点
- `src/services/userService.js`: 用户操作的业务逻辑
## 改进说明
- 识别的模式: 用户列表端点中存在 N+1 查询问题
- 自动化机会: 自动为所有 get-by-id 端点添加缓存
2. 执行任务列表
Claude 现在可以系统地通过 Claude Code 执行任务:
你: 请帮助我执行 tasks.md 中的任务列表,从第一个子任务开始。
Claude: 我会帮助你系统地完成任务列表。让我先检查当前任务列表,确定下一个要处理的任务。
[Claude 使用 claude_code 读取任务列表]
我看到第一个子任务是 "分析当前 API 性能并确定瓶颈"。我现在将使用 Claude Code 执行此任务。
[Claude 向 claude_code 发送以下请求]
{
"toolName": "claude_code",
"arguments": {
"prompt": "Your work folder is /path/to/project\n\nTASK TYPE: Analysis\nTASK ID: api-perf-analysis\nCURRENT SUBTASK: Analyze current API performance and identify bottlenecks\n\nCONTEXT:\n- Parent task goal: Optimize API performance for high-traffic endpoints\n- This is the first step in our optimization process\n- Focus on user endpoints as noted in assumptions\n\nINSTRUCTIONS:\n1. Analyze the current API implementation in src/controllers/userController.js and src/services/userService.js\n2. Run performance tests on the user endpoints\n3. Identify specific bottlenecks and performance issues\n4. Document findings in a clear, structured format\n5. Update task list file after completion\n\nAfter completion, provide summary in this format:\n\nCOMPLETION SUMMARY:\n- What was done:\n- Results:\n- Files analyzed:\n- Issues identified:\n- Recommendations:\n- Next subtask in list:",
"workFolder": "/path/to/project"
}
}
[Claude Code 执行分析任务并返回结果]
太好了!Claude Code 已完成分析。以下是发现的内容:
1. 确定的主要性能瓶颈:
- 用户列表端点中存在 N+1 查询问题。
- 频繁查询字段上缺少索引。
- 重复数据查找没有缓存。
2. 建议:
- 为用户关系添加预加载。
- 为 user_id 和 email 字段创建数据库索引。
- 实现带有 5 分钟 TTL 的 Redis 缓存。
现在我将更新任务列表,将此任务标记为已完成,并继续处理下一个任务。
[Claude 使用 claude_code 更新任务列表]
{
"toolName": "claude_code",
"arguments": {
"prompt": "Your work folder is /path/to/project\n\nTASK TYPE: Task List Update\n\n1. Read the current task list in tasks.md\n2. Mark the 'Analyze current API performance and identify bottlenecks' subtask as [x]\n3. Add new findings to the Improvement Notes section\n4. Add any new relevant files identified during analysis\n5. Write updated task list\n6. Return the updated task list",
"workFolder": "/path/to/project"
}
}
[Claude Code 更新任务列表并将第一个子任务标记为已完成]
我已更新任务列表。第一个子任务现在已完成,我已将详细发现添加到改进说明部分。下一个子任务是 "为用户端点实现数据库查询优化"。
你是否希望我现在继续处理这个下一个子任务?
3. 继续处理后续任务
获得确认后,Claude 将继续处理下一个子任务:
你: 是的,请继续处理下一个子任务。
Claude: 我现在将执行下一个子任务:"为用户端点实现数据库查询优化"。这将涉及修复分析中确定的 N+1 查询问题并添加适当的数据库索引。
[Claude 向 claude_code 发送以下请求]
{
"toolName": "claude_code",
"arguments": {
"prompt": "Your work folder is /path/to/project\n\nTASK TYPE: Code Implementation\nTASK ID: db-query-optimization\nCURRENT SUBTASK: Implement database query optimization for user endpoints\n\nCONTEXT:\n- Parent task goal: Optimize API performance for high-traffic endpoints\n- Previous subtask identified N+1 query issues and missing indexes\n- Need to implement eager loading and proper indexes\n\nINSTRUCTIONS:\n1. Modify src/controllers/userController.js to implement eager loading for related data\n2. Add appropriate database indexes to user-related tables\n3. Refactor any inefficient database queries in userService.js\n4. Ensure changes maintain existing functionality\n5. Run tests to verify performance improvements\n6. Update task list file after completion\n\nAfter completion, provide summary in this format:\n\nCOMPLETION SUMMARY:\n- What was done:\n- Results:\n- Files modified:\n- Performance improvements:\n- Next subtask in list:",
"workFolder": "/path/to/project"
}
}
[Claude Code 实现优化并返回结果]
太棒了!数据库查询优化已成功实现。以下是总结:
1. 所做的更改:
- 在 userController.js 中为用户关系添加了预加载。
- 为 user_id 和 email 字段创建了新的数据库索引。
- 重构了列表查询以使用单个高效的 JOIN 语句。
- 添加了分页以防止大型结果集。
2. 性能结果:
- 用户列表端点响应时间减少了 68%。
- 典型请求的数据库查询数量从 25 多个减少到 3 个。
现在我将再次更新任务列表以反映此进度。
[Claude 使用 claude_code 再次更新任务列表]
{
"toolName": "claude_code",
"arguments": {
"prompt": "Your work folder is /path/to/project\n\nTASK TYPE: Task List Update\n\n1. Read the current task list in tasks.md\n2. Mark the 'Implement database query optimization for user endpoints' subtask as [x]\n3. Add new files modified to the Relevant Files section\n4. Update Improvement Notes with performance metrics\n5. Write updated task list\n6. Return the updated task list",
"workFolder": "/path/to/project"
}
}
[Claude Code 更新任务列表并将第二个子任务标记为已完成]
我已再次更新任务列表。两个子任务现在已完成,下一个子任务是 "为频繁访问的数据添加 Redis 缓存"。你是否希望我继续处理这个子任务?
这种结构化方法使 Claude 能够系统地处理复杂的任务列表,同时在整个过程中保持对进度、假设和相关文件的清晰记录。
自我编排模式(Claude Code 作为编排器)
虽然 Claude Desktop 通常用作父代理,但你可以使用 Claude Code 本身作为编排器和执行器。这种方法创建了一个自包含的系统,其中 Claude Code 管理自己的任务编排,而无需 Claude Desktop。
graph TB
User("👨💻 用户")
ClaudeCode("🤖 Claude Code\n编排器")
ClaudeCodeSubtask1("⚙️ Claude Code\n子任务 1")
ClaudeCodeSubtask2("⚙️ Claude Code\n子任务 2")
User-->|"复杂项目请求"| ClaudeCode
ClaudeCode-->|"1. 规划任务"| ClaudeCode
ClaudeCode-->|"2. 执行子任务 1"| ClaudeCodeSubtask1
ClaudeCodeSubtask1-->|"3. 返回结果"| ClaudeCode
ClaudeCode-->|"4. 执行子任务 2"| ClaudeCodeSubtask2
ClaudeCodeSubtask2-->|"5. 返回结果"| ClaudeCode
ClaudeCode-->|"6. 最终解决方案"| User
实现步骤
- 创建入口脚本:初始化任务结构并将 Claude Code 作为编排器启动。
- 设计任务数据结构(通常为 JSON 格式):跟踪任务状态和依赖关系。
- 创建任务执行脚本:处理单个任务并更新任务状态。
自我编排的主要优点
- 自包含:无需外部编排器(如 Claude Desktop)。
- 持久状态:所有任务信息存储在 JSON 文件中。
- 错误恢复:如果中断,可以从最后一个成功的任务继续。
- 简化依赖管理:单个系统管理所有 Claude Code 交互。
- Shell 脚本自动化:易于集成到 CI/CD 管道或自动化工作流程中。
有关详细的实现指南,包括示例脚本和任务结构,请参阅 使用 Claude Code 进行自我编排。
Roo 模式集成
本 MCP 服务器支持通过 .roomodes
配置文件与专门模式集成。启用后,你可以为每个任务指定要使用的模式,从而实现专门的行为。
如何使用 Roo 模式
- 启用 Roo 模式支持:
- 在 MCP 配置中设置环境变量
MCP_USE_ROOMODES=true
。 - 在 MCP 服务器的根目录中创建一个
.roomodes
文件。 - 可选地,使用
MCP_WATCH_ROOMODES=true
启用热重载,以便在文件更改时自动重新加载配置。
- 在 MCP 配置中设置环境变量
- 配置模式:
.roomodes
文件应包含一个带有customModes
数组的 JSON 对象。- 每个模式应具有
slug
、name
、roleDefinition
,并可选地具有带有modelId
的apiConfiguration
。
- 使用模式:
- 向
claude_code
工具发出请求时,包含一个mode
参数,其值为所需模式的 slug。 - MCP 服务器将自动应用角色定义和模型配置。
- 向
- 示例 .roomodes 文件:
{ "customModes": [ { "slug": "coder", "name": "💻 编码专家", "roleDefinition": "You are a coding specialist who writes clean, efficient code.", "apiConfiguration": { "modelId": "claude-3-sonnet-20240229" } }, { "slug": "designer", "name": "🎨 设计专家", "roleDefinition": "You are a design specialist focused on UI/UX solutions." } ] }
- 环境配置示例:
{ "mcpServers": { "claude-code-mcp-enhanced": { "command": "npx", "args": ["github:grahama1970/claude-code-mcp-enhanced"], "env": { "MCP_USE_ROOMODES": "true", "MCP_WATCH_ROOMODES": "true", "MCP_CLAUDE_DEBUG": "false" } } } }
- 使用模式发出请求:
{ "toolName": "claude_code:claude_code", "arguments": { "prompt": "Your work folder is /path/to/project\n\nCreate unit tests for the user authentication module.", "workFolder": "/path/to/project", "mode": "coder" } }
Roo 模式的关键特性
- 专门行为:不同模式可以具有不同的系统提示和模型配置。
- 热重载:当
MCP_WATCH_ROOMODES=true
时,服务器在.roomodes
文件更改时自动重新加载配置。 - 性能:服务器缓存 roomodes 配置以提高性能。
- 回退:如果未找到模式或 roomodes 被禁用,服务器将继续使用默认行为。
🔧 技术细节
增强的可靠性特性
本服务器包含多项改进,以增强可靠性和性能:
1. 心跳与超时预防
为防止长时间运行操作期间客户端超时:
- 添加了可配置的心跳机制,每 15 秒发送一次进度更新。
- 实现了执行时间跟踪和报告。
- 通过环境变量添加了可配置的超时参数。
2. 带有重试的强大错误处理
为瞬态错误添加了智能重试逻辑:
- 实现了带有可配置参数的自动重试。
- 添加了错误分类以识别可重试问题。
- 创建了详细的错误报告和跟踪。
3. 请求跟踪系统
实现了全面的请求生命周期管理:
- 为每个请求添加了唯一 ID。
- 创建了正在进行的请求跟踪。
- 确保在完成或失败时进行适当的清理。
4. 优雅关闭
添加了适当的进程终止处理:
- 为 SIGINT 和 SIGTERM 实现了信号处理程序。
- 添加了正在进行的请求跟踪。
- 创建了等待逻辑以实现干净关闭。
- 确保在退出时进行适当的清理。
5. 配置缓存和热重载
为配置添加了性能优化:
- 实现了 roomodes 文件的缓存。
- 根据文件更改添加了自动失效。
- 创建了可配置的文件监视机制。
配置选项
服务器的行为可以使用以下环境变量进行自定义:
变量 | 描述 | 默认值 |
---|---|---|
CLAUDE_CLI_PATH |
Claude CLI 可执行文件的绝对路径 | 自动检测 |
MCP_CLAUDE_DEBUG |
启用详细的调试日志记录 | false |
MCP_HEARTBEAT_INTERVAL_MS |
进度报告之间的间隔 | 15000(15 秒) |
MCP_EXECUTION_TIMEOUT_MS |
CLI 执行的超时时间 | 1800000(30 分钟) |
MCP_MAX_RETRIES |
瞬态错误的最大重试次数 | 3 |
MCP_RETRY_DELAY_MS |
重试尝试之间的延迟 | 1000(1 秒) |
MCP_USE_ROOMODES |
启用 Roo 模式集成 | false |
MCP_WATCH_ROOMODES |
文件更改时自动重新加载 .roomodes | false |
网状网络变量 | ||
MCP_MESH_MAX_AGENTS |
最大并发代理数 | 5 |
MCP_MESH_TIMEOUT |
代理执行超时时间 | 300000(5 分钟) |
MCP_MESH_VERBOSE |
启用详细的代理日志记录 | false |
这些变量可以在你的 shell 环境中设置,也可以在 mcp.json
服务器配置的 env
块中设置。
📊 性能基准 - 快 3.64 倍!
实时测试结果
MeshSeeks 在 14.0 秒 内完成了一个复杂的电子商务 API 开发任务,而顺序执行的 Claude Code 则需要 51.0 秒 - 这意味着性能 快了 3.64 倍!🚀
最新基准测试结果(真实测试数据)
指标 | MeshSeeks | 顺序执行的 Claude | 优势 |
---|---|---|---|
执行时间 | 14.0 秒 | 51.0 秒 | 快 3.64 倍 ⚡ |
节省时间 | - | - | 37.0 秒 ⏰ |
效率提升 | 3.3 倍并行 | 1.0 倍串行 | +264% 📈 |
成功率 | 100% | 100% | 质量相同 ✅ |
使用的代理 | 5 个并行 | 5 个顺序 | 相同工作,更短时间 🎯 |
按复杂度划分的性能
问题类型 | 单代理 | 网状网络 | 加速比 |
---|---|---|---|
代码分析 | 2 - 5 分钟 | 30 - 60 秒 | 3 - 5 倍 |
功能实现 | 10 - 20 分钟 | 3 - 8 分钟 | 2 - 4 倍 |
全面重构 | 30 - 60 分钟 | 8 - 15 分钟 | 4 - 6 倍 |
完整项目设置 | 45 - 90 分钟 | 12 - 25 分钟 | 3 - 5 倍 |
为什么 MeshSeeks 更快
- 并行处理:5 个专门的代理同时工作,而不是排队等待。
- 专家专业化:每个代理针对特定任务进行优化(分析、实现、测试、文档、安全)。
- 上下文效率:通过每个代理分布式的 200k 令牌上下文,实现 4 倍有效容量。
- 智能合成:智能组合专门的输出。
- 错误隔离:单个代理失败不会导致整个管道崩溃。
运行你自己的基准测试
git clone git@github.com:twalichiewicz/meshseeks.git
cd meshseeks
npm install
node benchmarks/scripts/mesh-performance-test.js
🌐 网状网络使用示例
基本问题分析
Use mesh_analyze_problem to plan how to implement a REST API with authentication, database integration, and tests.
workFolder: /path/to/project
端到端问题解决
Use mesh_solve_problem to create a complete e-commerce backend with:
- 用户认证和授权
- 带有类别的产品目录
- 购物车功能
- 订单处理
- 支付集成
- 单元和集成测试
- API 文档
workFolder: /path/to/project
approach: analysis_first
协调策略
1. 先分析(默认)
最适合需要系统方法的明确定义问题。
2. 并行探索
最适合需要多个视角的研究任务:
approach: parallel_exploration
3. 迭代改进
最适合带有反馈循环的复杂重构:
approach: iterative_refinement
🎯 关键用例
本服务器通过其统一的 claude_code
工具,为你的 AI 提供了对 Claude Code CLI 的直接访问,从而解锁了广泛的强大功能。以下是一些你可以实现的示例:
-
代码生成、分析与重构:
"Generate a Python script to parse CSV data and output JSON."
"Analyze my_script.py for potential bugs and suggest improvements."
-
文件系统操作(创建、读取、编辑、管理):
- 创建文件:
"Your work folder is /Users/steipete/my_project\n\nCreate a new file named 'config.yml' in the 'app/settings' directory with the following content:\nport: 8080\ndatabase: main_db"
- 编辑文件:
"Your work folder is /Users/steipete/my_project\n\nEdit file 'public/css/style.css': Add a new CSS rule at the end to make all 'h2' elements have a 'color: navy'."
- 移动/复制/删除:
"Your work folder is /Users/steipete/my_project\n\nMove the file 'report.docx' from the 'drafts' folder to the 'final_reports' folder and rename it to 'Q1_Report_Final.docx'."
- 创建文件:
-
版本控制(Git):
"Your work folder is /Users/steipete/my_project\n\n1. Stage the file 'src/main.java'.\n2. Commit the changes with the message 'feat: Implement user authentication'.\n3. Push the commit to the 'develop' branch on origin."
-
运行终端命令:
"Your work folder is /Users/steipete/my_project/frontend\n\nRun the command 'npm run build'."
"Open the URL https://developer.mozilla.org in my default web browser."
-
网络搜索与总结:
"Search the web for 'benefits of server-side rendering' and provide a concise summary."
-
复杂多步骤工作流程:
- 自动化版本升级、更新变更日志并标记版本发布:
"Your work folder is /Users/steipete/my_project\n\nFollow these steps: 1. Update the version in package.json to 2.5.0. 2. Add a new section to CHANGELOG.md for version 2.5.0 with the heading '### Added' and list 'New feature X'. 3. Stage package.json and CHANGELOG.md. 4. Commit with message 'release: version 2.5.0'. 5. Push the commit. 6. Create and push a git tag v2.5.0."
- 自动化版本升级、更新变更日志并标记版本发布:
-
修复有语法错误的文件:
"Your work folder is /path/to/project\n\nThe file 'src/utils/parser.js' has syntax errors after a recent complex edit that broke its structure. Please analyze it, identify the syntax errors, and correct the file to make it valid JavaScript again, ensuring the original logic is preserved as much as possible."
-
与 GitHub 交互(例如,创建拉取请求):
"Your work folder is /Users/steipete/my_project\n\nCreate a GitHub Pull Request in the repository 'owner/repo' from the 'feature-branch' to the 'main' branch. Title: 'feat: Implement new login flow'. Body: 'This PR adds a new and improved login experience for users.'"
-
与 GitHub 交互(例如,检查 PR CI 状态):
"Your work folder is /Users/steipete/my_project\n\nCheck the status of CI checks for Pull Request #42 in the GitHub repository 'owner/repo'. Report if they have passed, failed, or are still running."
重要提示:在进行文件系统或 Git 操作的提示中,请务必提供当前工作目录(CWD)上下文(例如,"Your work folder is /path/to/project\n\n...your command..."
)。
🧪 测试与开发
全面测试套件
MeshSeeks 包含一个完整的测试框架,包括:
单元测试 - 测试核心协调器功能:
npm run test:unit
集成测试 - 测试 MCP 服务器工具:
npm run test:integration
错误处理测试 - 测试失败场景:
npm run test:errors
性能测试 - 测试可扩展性和并发性:
npm run test:performance
运行所有测试 - 完整测试套件:
npm run test:all
状态面板演示
查看实时状态面板的实际效果:
npm run demo:status
开发脚本
npm run dev:mesh # 在开发模式下运行网状网络服务器
npm run build:mesh # 为生产环境构建
npm run test:mesh # 运行基本网状网络测试
🔧 故障排除
- “命令未找到”(claude-code-mcp):如果全局安装,请确保 npm 全局二进制目录在系统的 PATH 中。如果使用
npx
,请确保npx
本身正常工作。 - “命令未找到”(claude 或 ~/.claude/local/claude):确保 Claude CLI 已正确安装。运行
claude/doctor
或查看其文档。 - 权限问题:确保你已完成 “重要的首次设置” 步骤。
- 服务器的 JSON 错误:如果
MCP_CLAUDE_DEBUG
为true
,错误消息或日志可能会干扰 MCP 的 JSON 解析。将其设置为false
以进行正常操作。 - ESM/导入错误:确保你使用的是 Node.js v20 或更高版本。
- 客户端超时:对于长时间运行的操作,服务器每 15 秒发送一次心跳消息以防止客户端超时。如果你仍然遇到超时问题,可以使用
MCP_HEARTBEAT_INTERVAL_MS
环境变量调整心跳间隔。 - 网络/服务器错误:服务器现在包含针对瞬态错误的自动重试逻辑。如果你仍然遇到问题,可以尝试增加
MCP_MAX_RETRIES
和MCP_RETRY_DELAY_MS
的值。 - Claude CLI 回退警告:如果你看到关于在 ~/.claude/local/claude 未找到 Claude CLI 的警告,这是正常的。服务器正在回退到使用 PATH 中的
claude
命令。如果需要,你可以设置CLAUDE_CLI_PATH
环境变量来指定 Claude CLI 可执行文件的精确路径。
👨💻 开发者:本地设置与贡献
如果你想开发或为此服务器做出贡献,或者从克隆的仓库运行它进行测试,请参阅我们的 本地安装与开发设置指南。
📚 额外文档
💪 贡献
欢迎贡献!本项目在 Graham 的增强 MCP 服务器基础上扩展了网状网络功能。
请在 GitHub 仓库 提交问题和拉取请求。
📄 许可证
MIT
💬 反馈与支持
如果你在使用 Claude Code MCP 服务器时遇到任何问题或有疑问,请:
- 查看上面的故障排除部分。
- 在 GitHub 仓库 提交问题。
- 加入仓库讨论区参与讨论。
我们感谢你的反馈和贡献,以帮助我们改进这个工具!












