前言¶
对于使用 DeepSeek Harness(DSH)Web profile 的开发者,MCP 服务器配置、启停和状态查看分散在不同位置时,排查成本会比较高。dsh-mcp-settings 是一个可安装的 DSH bundle,把设置驱动的 MCP server manager、只读 inventory Remote 和 Web Settings UI 放进同一个兼容的 Web profile,让你可以从 Settings > MCP 管理 mcp.servers。
DSH 的理念是「一切皆插件」;社区目录是独立站点,与 DeepSeek / 幻方无官方从属关系,不应把它写成官方应用商店。
这是什么¶
dsh-mcp-settings 的定位是:
Settings-driven MCP server manager, inventory Remote, and Web settings UI for DeepSeek Harness
它由 aka-danielZhang 维护,GitHub 仓库地址是:
https://github.com/aka-danielZhang/dsh-mcp-settings
这个 bundle 会为一个兼容的 Web profile 安装三个插件行:
| 插件行 | 职责 |
|---|---|
dsh-mcp-settings-manager |
拥有 mcp.servers,为启用的服务器启动和停止一个内置 MCP client fiber,并发布合并后的连接状态 |
dsh-mcp-settings-inventory |
暴露只读 mcpInventory/list Remote |
dsh-mcp-settings-ui |
增加 MCP Settings 页面,提供 Form/JSON 编辑、启用切换、状态轮询和工具数量展示 |
目标 profile 不能已经挂载另一个 settings-driven MCP manager 或 MCP Settings UI。现有 mcp.servers 用户配置不会被删除。
核心功能¶
Manager¶
dsh-mcp-settings-manager 负责 MCP 服务器生命周期和状态:
- 拥有
mcp.servers配置空间。 - 为每个启用的服务器启动一个内置 MCP client fiber。
- 停用服务器时停止对应 fiber。
- 发布合并后的连接状态。
Inventory¶
dsh-mcp-settings-inventory 暴露只读 Remote:
mcpInventory/list
它用于列出 MCP inventory,不提供写操作。
UI¶
dsh-mcp-settings-ui 增加 Settings > MCP 页面:
- Form 编辑和 JSON 编辑。
- 直接启用 / 禁用服务器。
- 状态轮询。
- 工具数量展示。
- 支持
stdio服务器和 Streamable HTTP 服务器。 - 支持 credential references。
凭据引用方式如下:
- HTTP 服务器使用
authorizationCredentialRef构建 Bearer authorization header。 stdio服务器使用envCredentialRefs把目标环境名映射到 credential references。
安装与启用¶
先确认环境。根据已核实事实,安装前需要满足以下条件:
- 需要一个匹配的 DeepSeek Harness development build,并且其
webprofile 已经提供package.json中列出的 DSH peer packages。 - 该 Harness build 必须发出
mcp-client/status事件;README 说明该事件尚未在 public Harness default branch 中。 - Node.js 要求:
^22.19.0 || >=24。 - 直接从 GitHub 安装时,需要 pnpm 10 或更新版本。
package.json中version为0.2.3,packageManager为pnpm@11.7.0,engines.node为^22.19.0 || >=24.0.0。- 当前兼容的 DeepSeek Harness 版本为
0.1.0-rc.7,对应@deepseek-ai/dsh-root和@deepseek-ai/dsh-mcp-client。 - 自
v0.2.2起,manager 会本地镜像 reconnect defaults 和 server-name pattern,而不是导入未发布的dsh-mcp-clientexports。
从 GitHub 安装¶
执行:
dsh plugin --profile web add github:aka-danielZhang/dsh-mcp-settings
这条命令只安装 bundle,不会安装或升级 Harness-owned peer packages。因此需要把它指向一个已经具备所需 peer packages 的兼容 Web profile。
如果你安装的是不完全受你控制的代码,建议固定 commit:
dsh plugin --profile web add github:aka-danielZhang/dsh-mcp-settings#<commit-sha>
pnpm build permission¶
Git 安装会触发仓库的 prepare 脚本来生成 lib/。pnpm 在 profile 授权前会阻止依赖构建脚本。如果首次安装报告了 ignored build,把安装时打印的 package key 添加到:
~/.dsh/profiles/web/pnpm-workspace.yaml
的 allowBuilds 中,然后重复安装命令。结构类似:
allowBuilds:
"<安装命令打印的 package key>": true
这个授权允许包代码在安装阶段运行,所以安装前应检查源码与许可证。
重启并验证¶
安装后重启 Web profile:
dsh --profile web
然后打开:
Settings > MCP
现有的 mcp.servers 列表仍然可用。
用下面命令检查组合后的 profile 行:
dsh --profile web --dump-config
输出中应包含:
dsh-mcp-settings-manager
dsh-mcp-settings-inventory
dsh-mcp-settings-ui
安装本地 checkout¶
也可以克隆仓库后从本地路径安装:
git clone https://github.com/aka-danielZhang/dsh-mcp-settings.git
cd dsh-mcp-settings
dsh plugin --profile web add file:.
典型用法¶
经过上面的安装步骤后,使用流程如下:
1、打开 Settings > MCP。
2、在 Form 或 JSON 视图中编辑 mcp.servers。
3、为 HTTP 服务器配置 authorizationCredentialRef,用于构建 Bearer authorization header。
4、为 stdio 服务器配置 envCredentialRefs,用于映射目标环境名到 credential references。
5、切换服务器启用状态。
6、查看 UI 中的连接状态和工具数量。
移除 bundle 时执行:
dsh plugin --profile web remove dsh-mcp-settings
然后重启 Web profile。移除后 bundle 行会消失,但用户配置会保留。
适用场景与注意¶
适合在兼容 Web profile 中使用 DSH,并希望通过 Web Settings 管理 MCP 服务器的开发者。
安装和使用时注意:
dsh plugin add只安装 bundle,不安装或升级 Harness-owned peer packages。- 该 bundle 依赖匹配的 Harness development build,并且该 build 必须发出
mcp-client/status事件。 - 目标 profile 不能已经挂载另一个 settings-driven MCP manager 或 MCP Settings UI。
- DSH 是 pre-release software;当扩展点变化时,peer ranges、Typert descriptor 和 bundle patch 应一起更新。
- 自
v0.2.2起,manager 本地镜像 reconnect defaults 和 server-name pattern,而不是导入未发布的dsh-mcp-clientexports。 - 插件会在当前
dsh进程权限下运行;安装前应检查源码、依赖和许可证。 - 许可证字段未在已抓取资料中明确给出。README 提到迁移自 MIT-licensed 包并指向 LICENSE,但未提供 LICENSE 文本或本插件许可证字段。
结尾¶
dsh-mcp-settings 的价值在于把 MCP 服务器管理集中到 DSH Web Settings:manager 负责 mcp.servers 启停和状态,inventory 提供只读 mcpInventory/list Remote,UI 提供 Form/JSON 编辑、启用切换、状态轮询和工具数量展示。
目录页 URL 未在已抓取资料中给出。GitHub 仓库地址为:
https://github.com/aka-danielZhang/dsh-mcp-settings