前言¶
在 DSH 中接入多个 MCP 服务器后,常见问题是:某台服务器是否已配置、当前是启用还是停用、loader 是否正在加载、已经注册了多少工具;Skills 也需要在多个来源中查找和切换状态。这个插件将这类操作放到 DSH 设置页中,用一页查看 MCP 服务器列表与连接状态,并支持新增、删除、启用、停用、重启和 JSON 导入导出,同时提供 设置 → Skills 管理 与 HTTP API。
这是什么¶
@xxxyz/dsh-mcp-manager 是 xxxyz 维护的 DeepSeek Harness 插件,许可证为 MIT。它把 MCP 服务器配置写到项目级或全局的 cordis.patch.yml,并在 DSH Web 设置中提供管理入口。下面介绍它的功能、安装方式和典型用法。
核心功能¶
- MCP 服务器列表:展示
serverName、传输方式、URL/命令、启用状态、loader 实时加载阶段、已注册工具数。 - 新增 / 删除 MCP 服务器:支持
env、headers、args,带格式与重名校验。 - 启用 / 停用 MCP 服务器:工具随之热连接 / 热断开。
- 重启 MCP 服务器:执行 disable + re-enable,自动重连并重新同步工具。
- 配置持久化:写入项目级
profiles/<profile>/cordis.patch.yml或全局~/.dsh/cordis.patch.yml,重启后保留。 - 健康检查:显示每台服务器的实时工具数与 loader 阶段。
- JSON 导出 / 导入:合并新增,已存在自动跳过。
- 宿主注册 4 个
mcp_manager_*模型工具。 - 设置 → Skills 管理:浏览 / 搜索技能,按来源分组,按 provider 折叠,一键启用或停用任意技能。
- HTTP API:
POST /dsh-mcp-manager/api,请求体为{op, args},返回{ok, ...}。 - 一条命令安装并自动挂载,支持 Windows / macOS / Linux。
安装与启用¶
前置条件:已安装 DSH 且 dsh web 能正常运行;Node.js ≥ 18、pnpm ≥ 9。
执行安装命令:
dsh plugin --profile web add @xxxyz/dsh-mcp-manager@latest
这条命令会安装插件并自动挂载。装完后在浏览器中硬刷新(Cmd/Ctrl+Shift+R),即可看到 设置 → MCP 管理。
如果 npm view 报 404,可能是镜像同步延迟。可以稍等再试,或使用:
--registry=https://registry.npmjs.org
典型用法¶
1、打开 设置 → MCP 管理,填写 serverName、传输方式及对应字段,并选择项目级或全局。
2、在 MCP 管理卡片上启用 / 停用、重启、编辑、删除服务器。
3、一键导出 JSON,或粘贴 JSON 导入;导入会合并新增,已存在的服务器自动跳过。
4、打开 设置 → Skills 管理,浏览 / 搜索技能,并一键启用 / 停用任意技能。
5、通过脚本调用 HTTP API:
POST /dsh-mcp-manager/api
请求体中的 op 为操作名,args 为参数对象:
{
"op": "operation",
"args": {}
}
响应:
{
"ok": true
}
6、卸载插件:
dsh plugin --profile web remove @xxxyz/dsh-mcp-manager
执行后重启 DSH。
配置与安全¶
修改配置走 HMR 热应用,通常等 1–2 秒自动刷新;页面会自动轮询。
loader 行必须为 insert 块形式。通常无需手动写,dsh plugin add 的 bundle patch 会自动插入。
token 是可选访问令牌,默认关闭。设置后,写操作需要携带:
x-dsh-token: <token>
也可以通过环境变量配置:
DSH_MCP_MANAGER_TOKEN=<token>
如果将 3080 端口暴露到局域网/公网,token 是防止任意写操作与 stdio command 注入的重要防线;本地单机使用不需要配置。
HTTP API 带 CSRF 防护:仅接受 POST,必须携带:
x-dsh-plugin: dsh-mcp-manager
并校验同源 Origin;curl 等本地脚本无需 Origin。
如果页面出现两个 MCP 页签或工具重复,需要删除旧 loader 行或 dsh.profile.bundles 条目,然后重启 DSH。
适用场景与注意¶
这个插件适合需要在 DSH 中集中查看 MCP 服务器状态、管理服务器配置、切换技能状态,或者通过脚本 / HTTP API 操作 MCP 管理的开发者。
因为插件会管理 MCP 服务器配置,stdio 类型服务器可能执行本地命令,并且插件以当前 dsh 进程权限运行,安装前应检查源码与许可证。该插件许可证为 MIT。