zhengjy01/dsh-mcp-manager ↗★ 0

@zhengjunyao/dsh-mcp-manager

MCP server manager for DeepSeek Harness: add, edit, enable and test stdio / Streamable HTTP MCP servers from the Web settings page and from agent tools, connected and disconnected at runtime without restarting DSH 适合需要在运行时动态管理、测试和配置 MCP 服务器的用户。

パッケージ
@zhengjunyao/dsh-mcp-manager
互換性
未検証
Harness ピア範囲
^0.1.0-rc.6 || ^0.1.1-rc.1 || ^0.1.2-alpha.1 || ^0.1.5-rc.1 || ^0.1.5-rc.2 || ^0.1.5-rc.3 || ^0.1.7-rc.1 || ^0.1.7-rc.2
Cordis ピア範囲
^4.0.1
バージョン
0.1.1
ライセンス
MIT
最終更新
2026/09/27

インストール

$npx -p @deepseek-ai/dsh dsh plugin --profile web add github:zhengjy01/dsh-mcp-manager

ドキュメント

README 全文を読む ↗

Usage

Web GUI → Settings → MCP 管理 (MCP manager). The card shows each server's live phase (● connected / ◌ no tools / ✖ failed / ○ not loaded), its tool count and its tool names, and offers a test button that really connects — a draft is tried and thrown away, so a typo is caught before it is saved.

Agent tools: mcp_manager_status, mcp_manager_list, mcp_manager_add, mcp_manager_update, mcp_manager_remove (previews unless confirm: true), mcp_manager_test, mcp_manager_import, mcp_manager_reload.

Configuration

$DSH_HOME/dsh-mcp-manager.json (default ~/.dsh/dsh-mcp-manager.json, mode 0600). It honours DSH_HOME, so a relocated home reads the relocated file. Hand edits are fine — press "reload config" afterwards.

{
  "version": 1,
  "config": { "enabled": true, "announceToAgent": true },
  "servers": [
    {
      "name": "garmin",
      "transport": "stdio",
      "enabled": true,
      "command": "/opt/homebrew/bin/uvx",
      "args": ["garmin-mcp"],
      "env": {}, "cwd": "",
      "url": "", "headers": {},
      "toolCallTimeoutMs": 60000,
      "reconnect": {}
    }
  ]
}

name becomes the tool namespace: the example above publishes mcp__garmin__. It must match [A-Za-z0-9_-]{1,32}, the same constraint the harness bridge enforces.

Configuration

$DSH_HOME/dsh-mcp-manager.json (default ~/.dsh/dsh-mcp-manager.json, mode 0600). It honours DSH_HOME, so a relocated home reads the relocated file. Hand edits are fine — press "reload config" afterwards.

{
  "version": 1,
  "config": { "enabled": true, "announceToAgent": true },
  "servers": [
    {
      "name": "garmin",
      "transport": "stdio",
      "enabled": true,
      "command": "/opt/homebrew/bin/uvx",
      "args": ["garmin-mcp"],
      "env": {}, "cwd": "",
      "url": "", "headers": {},
      "toolCallTimeoutMs": 60000,
      "reconnect": {}
    }
  ]
}

name becomes the tool namespace: the example above publishes mcp__garmin__. It must match [A-Za-z0-9_-]{1,32}, the same constraint the harness bridge enforces.