fishlikewater/dsh-mcp-manager ↗★ 0
@fishlikewater/dsh-mcp-manager
MCP 服务器管理器:在 DSH 设置页配置 MCP 服务器,宿主侧按配置热挂载/卸载 mcp-client 实例
安装
npx -p @deepseek-ai/dsh dsh plugin --profile web add github:fishlikewater/dsh-mcp-manager说明文档
阅读完整 README ↗dsh-mcp-manager
MCP 服务器管理器:给 DeepSeek Harness(DSH)加一个「设置 → MCP 服务器」页面,在界面上配置 MCP(Model Context Protocol)服务器,保存即生效——宿主侧自动挂载/卸载 @deepseek-ai/dsh-mcp-client 实例,我(模型)随即拿到或失去 mcp____ 形式的工具。
无需再手写 cordis.patch.yml 里的 MCP 行,也无需重启进程。
功能
- 设置页管理:列出 / 新增 / 编辑 / 删除 MCP 服务器,带挂载状态
- 每台服务器可单独开启/关闭(
enabled开关):关闭立即停止实例并移除工具,开启重新挂载并注册工具,状态持久化 - 两种传输:
stdio(本地命令)与streamable-http(远程 URL) - 配置持久化在
settings.yaml的mcp命名空间(mcp.servers),改动热生效 - 宿主侧按配置动态挂载
@deepseek-ai/dsh-mcp-client实例(断线自动重连、工具自动注册/注销由它负责) - headless profile 也能用:没有
webServer服务时跳过 HTTP 接口,只做实例管理
安装
前置:已安装
dshCLI(以及 pnpm;dsh plugin命令转发给 pnpm)。
# 从 npm 安装(发布后)
dsh plugin --profile web add @fishlikewater/dsh-mcp-manager
# 或从本地 checkout 安装
dsh plugin --profile web add ./path/to/dsh-mcp-manager
dsh plugin add 会把包安装进 profile 的依赖,并因为本包声明了 dsh.bundle,自动把 @fishlikewater/dsh-mcp-manager 追加到该 profile 的 dsh.profile.bundles(即应用本包的 cordis.patch.yml 层)。验证组合树:
dsh --profile web --dump-config # 应能看到 mcp-manager 行
重启 dsh 进程后生效(bundle 层在启动时组合;插件代码改动也需要重启,见下文「开发」)。重启后刷新浏览器页面,打开 设置 → MCP 服务器 即可。
卸载:dsh plugin --profile web remove @fishlikewater/dsh-mcp-manager(同时移除依赖与 bundle 层)。
使用
设置页各字段:
| 字段 | 传输 | 说明 |
|---|---|---|
| 名称(serverName) | 两者 | [A-Za-z0-9_-]{1,32},全局唯一,决定工具名前缀 mcp____… |
| 传输方式 | 两者 | stdio / streamable-http |
| 命令(command) | stdio | 可执行文件(支持绝对路径)或 npx 之类命令 |
| 参数(args) | stdio | 每行一个 |
| 环境变量(env) | stdio | 每行 KEY=VALUE |
| 工作目录(cwd) |