v0.7.0 — MCP 扩展中心
v0.7.0 — MCP 扩展中心
外部 MCP server 可在 UI 上一键挂载,工具以 <server>::<tool> 命名空间聚合到 Agent 工具集,与内置 22 个工具并行。改完点"同步到 Agent"即生效,不必重启。
新增
后端 (Go)
mcp_servers表:id / name / url / transport / token / enabled / description / 时间戳MCPServerStoreCRUD +ListEnabled(仅启用项,token 暴露给 agent)/api/mcp-servers全套:list / get / create / update / delete / test / active / reload- Token 一次返回:仅 Create 响应含明文;后续 list/get/update 全部 redaction
test端点:发initialize+tools/list,返回连通性 + 工具列表active端点:供 agent 启动时拉取(带 token)reload端点:代理到/v1/mcp/reload,无 agent 时 503
HTTPAgentClient:通过cfg.Agent调 agent
Python agent
ExternalMCPHub维护 server→MCPClient 映射- 启动时
GET /api/mcp-servers/active拉启用列表 - 并行 connect(semaphore=4,单 server 10s 超时),失败隔离
- 工具命名
<server>::<tool>,与内置 22 个不冲突
- 启动时
ToolRegistry集成:all_tools()合并 ext + 内置;call()优先匹配<server>::<tool>- 新端点
POST /v1/mcp/reload:UI 添加新 server 后热加载
前端
components/MCPExtensions.vue:列表 / 添加 / 编辑 / 删除 / 测试连接 / 同步到 Agent- SettingsView 新增「扩展中心」section
- Token 仅在 Create 响应明文显示一次,UI 单独高亮可复制
- 测试结果模态显示 ✓ + 工具数 + 延迟 + 工具名(已
::命名空间)
测试
- Go: 9 个 handler 测试(CRUD / 校验 / 唯一 / test / 失败 / ListEnabled / Active / Reload × 3)
- Python: 9 个 multi_mcp 测试(命名空间 / 聚合 / 分发 / 失败隔离 / 重载清空 / 端到端)
下载
| 平台 | 架构 | 大小 | SHA-256 |
|---|---|---|---|
| macOS | arm64 (Apple Silicon) | 8.5 MB | 162b1b46ef26d803fb7e441840d8e648db4cfdf49a39cbc98a4562a163091c28 |
| Linux | amd64 | 8.9 MB | 7cfd9e1f3a5f8cc08bc020acce04f93824586ccfe81c03a347fd751afd677818 |
升级
tar -xzf dhunter-v0.7.0-{platform}.tar.gz
cd dhunter-v0.7.0-{platform}
./start-dhunter.sh start旧版数据完全兼容(仅新增表,幂等迁移)。