EVC网状MCP服务器

通过MCP工具将AI代理(Claude Code、Cursor、Cline、OpenClaw等)连接到EVC Mesh,用于任务管理、持久内存、事件发布和多代理协调。
先决条件
- 转到1.22+
- 正在运行EVC Mesh实例
- 使用API密钥在Mesh中注册的代理(
agk_...)
安装
go install github.com/entire-vc/evc-mesh-mcp@latest
或者从源代码构建:
git clone https://github.com/entire-vc/evc-mesh-mcp.git
cd evc-mesh-mcp
go build -o evc-mesh-mcp .
工具配置文件
MCP服务器支持两种配置文件来优化上下文窗口的使用:
| 配置文件 | 工具 | 上下文开销 | 最适合 |
|---|
| 核心 | 20 | ~6K令牌(200K的3%) | Claude代码、游标、小型上下文模型 |
| 满的 | 45 | ~14K代币(20万代币的7%) | 高级用户、自动化代理、管理员操作 |
通过设置 MESH_MCP_PROFILE 环境变量。违约: full.
配置
| 变量 | 必填 | 默认 | 描述 |
|---|
MESH_API_URL | 是的 | http://localhost:8005 | 网格API的基本URL |
MESH_AGENT_KEY | 是(stdio) | - | 代理API密钥(agk_...) |
MESH_MCP_PROFILE | 没有 | full | 刀具轮廓: core 或 full |
MESH_MCP_TRANSPORT | 没有 | stdio | 运输方式: stdio 或 sse |
MESH_MCP_HOST | 没有 | 0.0.0.0 | SSE服务器绑定主机 |
MESH_MCP_PORT | 没有 | 8081 | SSE服务器绑定端口 |
克劳德码(stdio模式)
添加到您的项目 .mcp.json:
{
"mcpServers": {
"evc-mesh": {
"command": "evc-mesh-mcp",
"env": {
"MESH_API_URL": "https://your-mesh-instance.example.com",
"MESH_AGENT_KEY": "agk_your-workspace_your-key",
"MESH_MCP_PROFILE": "core"
}
}
}
}
光标
添加到光标MCP设置(设置→ MCP服务器):
{
"evc-mesh": {
"command": "evc-mesh-mcp",
"env": {
"MESH_API_URL": "https://your-mesh-instance.example.com",
"MESH_AGENT_KEY": "agk_your-workspace_your-key",
"MESH_MCP_PROFILE": "core"
}
}
}
SSE模式(多代理、共享服务器)
通过共享MCP端点连接多个代理:
MESH_API_URL=https://your-mesh-instance.example.com \
MESH_MCP_PORT=8081 \
evc-mesh-mcp --transport sse
SSE模式服务 两个配置文件同时 在不同的路径上:
| 路径 | 配置文件 | 描述 |
|---|
/sse + /message | 全部 | 全部45个工具(向后兼容) |
/core/sse + /core/message | 核心 | 20个必备工具 |
通过以下方式对每个连接进行身份验证:
Authorization: Bearer agk_... 头球X-Agent-Key: agk_... 头球?agent_key=agk_... 查询参数
代理上下文协议(ACP)
在会话开始时,按顺序执行以下5个步骤:
1. heartbeat(status="online") → register as alive
2. get_project_knowledge(project_id) → load accumulated decisions & conventions
3. get_my_rules(project_id) → understand constraints
4. get_context(project_id) → see recent activity + project knowledge
5. get_my_tasks() → check assigned work
会话结束时:
publish_event(type="summary", memory={persist: true}) → broadcast + persist
session_report(model, tokens_in, tokens_out) → report metrics
MCP工具——堆芯剖面图(20)
ACP和身份
| 工具 | 说明 |
|---|
heartbeat | 发送心跳。会话开始时呼叫状态=在线 |
get_project_knowledge | 获取所有永久性知识(决策、惯例)。ACP步骤2 |
get_my_rules | 获取所有治理规则(工作流+分配)。ACP步骤3 |
get_context | 获取最近的活动+项目知识。ACP步骤4 |
get_my_tasks | 获得分配的任务。ACP步骤5 |
任务管理
| 工具 | 说明 |
|---|
list_projects | 列出工作区项目 |
list_tasks | 列出带有筛选器的任务(状态、优先级、受让人、搜索) |
get_task | 使用可选注释/工件/deps获取任务详细信息 |
create_task | 创建新任务 |
update_task | 更新任务字段 |
move_task | 使用slug更改任务状态 |
assign_task | 分配/取消分配任务 |
get_task_context | 在一次通话中获取有关任务的所有信息 |
沟通
| 工具 | 说明 |
|---|
add_comment | 向任务添加注释(标记) |
publish_event | 发布事件+可选内存提示以实现持久化 |
记忆
| 工具 | 说明 |
|---|
recall | 按关键字搜索内存 |
remember | 保存知识(按键更新) |
forget | 删除内存条目 |
效用
| 工具 | 说明 |
|---|
report_error | 报告任务错误 |
session_report | 报告会话指标(模型、令牌、成本) |
MCP工具-完整配置文件(新增25个)
其他任务工具
| 工具 | 说明 |
|---|
get_project | 通过状态和自定义字段获取项目详细信息 |
create_subtask | 在父级下创建子任务 |
add_dependency | 添加任务之间的依赖关系 |
checkout_task | 用于多智能体协调的原子任务锁 |
release_task | 释放原子任务锁 |
评论和工件
| 工具 | 说明 |
|---|
list_comments | 列出任务注释 |
upload_artifact | 将文件/代码/日志上传到任务 |
list_artifacts | 列出任务工件 |
get_artifact | 获取工件详细信息并下载URL |
事件总线
| 工具 | 说明 |
|---|
publish_summary | 发布工作总结(便利包装) |
subscribe_events | 为事件配置webhook传递 |
poll_tasks | 新任务分配的长轮询 |
代理商和团队
| 工具 | 说明 |
|---|
register_sub_agent | 注册子代理 |
list_sub_agents | 列出子代理(可选递归) |
get_team_directory | 获取工作区团队目录 |
update_agent_profile | 更新代理角色、功能、配置文件 |
治理与配置
| 工具 | 说明 |
|---|
get_project_rules | 获取所有项目规则 |
get_assignment_rules | 获取分配规则 |
get_workflow_rules | 获取具有调用者权限的工作流规则 |
import_workspace_config | 从YAML导入工作区配置 |
export_workspace_config | 将工作区配置导出为YAML |
周期性任务
| 工具 | 说明 |
|---|
create_recurring_task | 创建定期任务计划 |
list_recurring_schedules | 列出重复时间表 |
get_recurring_history | 获取计划的实例历史记录 |
trigger_recurring_now | 立即触发下一个实例 |
建筑
AI Agent (Claude Code / Cursor / Cline / OpenClaw)
↕ MCP (stdio or SSE)
EVC Mesh MCP Server (core or full profile)
↕ REST API (HTTP)
EVC Mesh API Server
↕
PostgreSQL / Redis / NATS / S3
MCP服务器是一个轻量级代理,它将MCP工具调用转换为REST API请求。无需直接访问数据库。
相关
许可证
麻省理工学院