DeepSeek Harness plugin

dsh-mcp-manager-zsvd

MCP server management page for the DSH (DeepSeek Harness) Web settings panel: add / edit / delete @deepseek-ai/dsh-mcp-client servers with live connection status, hot-reloaded via the user patch

Jump to install

Source facts

Repository
zsvd/dsh-mcp-manager
Latest update
Aug 17, 2026
Category
Plugin Markets & Managers
GitHub stars
0
Format
plugin
Catalog evidence
Upstream dsh.bundle evidence
Evidence path
package.json#dsh.bundle
Checked against
0.1.0-rc.8
Upstream check date
2026-08-20

This evidence comes from the upstream catalog. This site has not installed, run, or security-reviewed the plugin.

Install

Start with a prompt that asks an agent to review the GitHub repository and source. Switch to the command if you want to install it yourself.

Copy this prompt into DSH, Codex, or another agent and ask it to review the GitHub repository and source first.

Do not install or run any commands yet. Read this plugin's GitHub repository, README, and relevant source code. Then answer the questions below clearly and directly so I can decide whether it fits my needs:

1. What is this plugin, and what problem does it solve?
2. Who is it for, and what are its typical use cases?
3. How is it used after installation? Include one minimal example.
4. What known limitations or privacy, security, compatibility, or maintenance risks does it have?
5. Give a clear recommendation: recommend, conditionally recommend, or do not recommend, with reasons.

Distinguish statements documented by the repository, inferences from source code, and unknowns. If evidence is insufficient, say so explicitly. Do not guess or simply repeat the README.

GitHub: https://github.com/zsvd/dsh-mcp-manager
Plugin: dsh-mcp-manager-zsvd
Author: zsvd

Check the source files

Read the README and other files from this plugin directory before installing.

File explorer3 files
README.mdSource · read only

dsh-mcp-manager

> Manage MCP servers from the DSH (DeepSeek Harness) Web settings panel — add, edit and delete @deepseek-ai/dsh-mcp-client servers with live connection status, all hot-reloaded with no process restart. > > 在 DSH Web 设置面板里管理 MCP 服务器:增删改 @deepseek-ai/dsh-mcp-client 服务器并显示实时连接状态,保存即热重载,无需重启。

[中文说明](#中文说明)

Features

  • Settings entry — a new page in Settings → MCP 服务, at the same level as General / Models / Plugins (settings.section, id mcp-manager).
  • Full CRUD — add, edit and delete MCP servers through a simple form (stdio or streamable-http, command/args/cwd/env/url/headers).
  • Live connection status — each row shows whether the server actually registered tools (mcp__<server>__<tool> present in the tool runtime) and how many; refresh on demand with the button next to the title, plus a 30s poll.
  • No restart needed — edits rewrite the profile's cordis.patch.yml, which the host watches through Cordis HMR and re-applies transactionally; dsh-mcp-client reconnects in place.
  • YAML-safe — the writer quotes reserved YAML indicators (-y, @pkg/name, …) so the generated patch always parses in the loader's dialect; other patch content is preserved.

Install

Requires a DSH Web profile (e.g. the default web). Two steps: install the package as a dependency, then add one row to the profile's patch layer.

# $DSH_HOME/profiles/web/cordis.patch.yml
- insert:
    - id: mcp-manager
      name: dsh-mcp-manager
      # optional: manage another profile's patch layer
      # config:
      #   targetProfile: tui
cd "$HOME/.dsh/profiles/web"   # or your profile dir
pnpm add dsh-mcp-manager       # when published to npm
# or, from this repo:
pnpm add "file:../dsh-mcp-manager"   # or the built .tgz

Restart dsh web (or wait for the user-patch HMR to pick up the row), refresh the browser, and the MCP 服务 page appears in Settings.

To remove: drop the dependency and delete the patch row.

> The managed servers are the @deepseek-ai/dsh-mcp-client rows inside the same cordis.patch.yml — there is no separate store. The manager only rewrites its own mcp-client rows and leaves everything else in the file untouched.

Settings page

ColumnMeaning
ServerserverName + config id
Status🟢 Connected · N (N = tools registered) / ⚪ Disconnected (hover for details)
Envenv key names (values visible in Edit)
ActionsEdit (opens the full form: transport, command/args/cwd/env or url/headers) · Delete (with confirm)

The Refresh button next to the title re-reads the list and re-probes every server's connection immediately.

HTTP API (same origin)

MethodPathDescription
GET/mcp-manager/serversList servers + connection status (connected, toolCount)
POST/mcp-manager/serversUpsert one server (JSON body; id present → update)
DELETE/mcp-manager/servers/:idRemove one server

Writes are serialized through a single queue, so concurrent edits cannot interleave.

Architecture

  • Host half (src/host/index.js) — dependency-free plain ESM (the loader passes its own ctx; importing cordis would break plugin identity). Parses/rewrites the profile patch layer with a small purpose-built YAML subset parser and serves the HTTP API. Connection probing reads ctx.tools.schemas() for the mcp__<serverName>__ prefix.
  • Browser half (src/client/, bundled to lib/client.js by tsdown) — registers the Settings page and calls the same-origin API.
  • Default profile is web; override with the plugin row's config.targetProfile.

Build & verify (maintainers)

pnpm install
pnpm run typecheck
pnpm run build        # tsdown → lib/client.js, copy-host.mjs → lib/index.js
pnpm run verify       # host YAML round-trip + client bundle vm smoke test
pnpm pack             # build a publishable .tgz (prepack runs the checks)

pnpm publish runs prepack automatically (typecheck → build → verify) before packing.

---

中文说明

功能

  • 设置入口:设置 → MCP 服务,与「通用设置 / 模型 / 插件」同级。
  • 完整增删改:表单支持 stdio / streamable-http,可配 command / args / cwd / env / url / headers。
  • 实时连接状态:每行显示该服务器是否已注册工具(mcp__<服务器>__<工具> 是否存在于工具运行时)及工具数量;标题旁「刷新」按钮立即重测,另有 30s 轮询。
  • 无需重启:改动写入 profile 的 cordis.patch.yml,宿主通过 Cordis HMR 事务性热重载,dsh-mcp-client 原地重连。
  • YAML 安全-y@包名 等 YAML 保留指示符自动加引号,生成内容保证 loader 方言可解析,且保留文件里其它 patch 内容。

安装

1. 在 profile 目录安装依赖(npm 发布后 pnpm add dsh-mcp-manager,或本地 pnpm add file:<路径>/dsh-mcp-manager-0.1.0.tgz)。 2. 在 $DSH_HOME/profiles/web/cordis.patch.yml 加一行:

- insert:
    - id: mcp-manager
      name: dsh-mcp-manager

3. 重启 dsh web(或等 HMR 热挂载),刷新浏览器即可在设置里看到入口。

说明

  • 被管理的服务器就是同一份 cordis.patch.yml 里的 @deepseek-ai/dsh-mcp-client 行,无独立存储;管理器只重写自己的 mcp-client 行。
  • 默认管理 web profile 的 patch 层,可在插件行 config.targetProfile 改。
  • 在 Windows 上用 npx 启动某些 MCP 服务器(如 @modelcontextprotocol/server-filesystem)可能失败(npm 配置警告 + cmd bin 解析),建议改用直接命令或 streamable-http。

License

MIT