LBurny/dsh-plugin--packages-dsh-mcp ↗★ 0

dsh-mcp

Manage MCP servers from inside DeepSeek Harness: add, edit, delete, enable/disable, and import from other agent tool configs, editing the active profile's cordis.patch.yml. Ships a panel and the /mcp command. dsh-mcp:在 dsh 本体里管理 MCP 服务——增删改、启停、导入,直接编辑 profile 的 cordis.patch.yml,自带面板与 /mcp 命令。 适合需要直接在DSH界面中增删、启停和导入MCP工具配置的用户。

パッケージ
dsh-mcp
互換性
未検証
Harness ピア範囲
^0.2.0-rc.1
バージョン
0.1.0
ライセンス
MIT
最終更新
2026/10/10

同名パッケージの別リポジトリ

インストール

$npx -p @deepseek-ai/dsh dsh plugin --profile web add github:LBurny/dsh-plugin#7922dc00723785a651a741a9d255357f56b87f56&path:packages/dsh-mcp

ドキュメント

README 全文を読む ↗

dsh-mcp

Manage MCP servers from inside DeepSeek Harness: add, edit, delete, enable/disable, and import from other agent tool configs.

Ported from DSHDesktop's MCP page. It edits the active profile's cordis.patch.yml through the yaml document API — the same approach as dsh's own dsh-config-editor — so your comments and !!js expression tags survive, and editing an existing server keeps the advanced keys the form does not own (toolCallTimeoutMs, reconnect, …). Writes go through writeFileAtomic with the package's file lock, serialized against the loader's hot reload.

Placement

With dsh-features (功能管理) installed, this panel appears on that hub's single page and no longer docks its own corner button; without the hub — a bare dsh, or a profile where it is not installed — the floating panel is built exactly as before. The coupling is two DOM-level conventions (window.__dshFeatures, #dsh-launchers), described in the repository's AGENTS.md.

Install

dsh plugin --profile web add github:LBurny/dsh-plugin#path:/packages/dsh-mcp
# pin a commit:
dsh plugin --profile web add github:LBurny/dsh-plugin#&path:/packages/dsh-mcp

--profile web = DSHDesktop's shell, --profile desktop = the official desktop app; the panel needs no flag.

Restart dsh afterwards — plugins have no HMR. Server edits themselves do not need a restart: dsh hot-reloads the patch layer.

What it does

  • List the MCP servers in the active profile's patch layer, with transport, a one-line summary and enabled state.
  • Add / edit a server: stdio (command, arguments, env, cwd) or streamable-http (url, headers).
  • Enable / disable by setting disabled: true on the row.
  • Delete a server row.
  • Import from other agent tool configs found under $HOME (Claude-style .mcp.json, Codex-style TOML, …); servers whose transport this plugin cannot express are shown greyed out.
  • /mcp prints the same list as text, without the browser.

Routes

MethodPathPurpose
GET/dsh-mcp/panel.js /dsh-mcp/panel.cssbrowser half
GET/dsh-mcp/api/mcpservers + importable sources + counts + patch path
POST/dsh-mcp/api/mcpupsert · toggle · delete · import

Data

WhatWhere
MCP servers`$DSH_HOME/profiles/
/cordis.patch.yml, as insert` rows

This package keeps no settings file of its own.

Test

# from an installed copy (needs `yaml` and @deepseek-ai/dsh-atomic-write via the profile)
cd "$DSH_HOME/profiles/plugins/dsh-mcp"
node test/mcp.test.mjs

The test guards the thing that matters: a round trip through the editor must leave every other row, every comment and every !!js tag intact.

License

MIT.