Skip to main content
Glama
xxxyz

dsh-mcp-manager

by xxxyz

dsh-mcp-manager

English · 中文

dsh-mcp-manager MCP Manager Einstellungsseite

Haltbarer MCP-Server-Manager für DeepSeek Harness (DSH) – ein zusammengesetztes Loader-Plugin (kein dynamisches Session-Plugin), das DSH-Neustarts und Upgrades überlebt.

Entwickelt nach dem DSH-Plugin-Entwicklungsstandard (siehe offizielle Dokumentation: 第一个插件, 开发一个工具):

  • Objektform-Cordis-Plugin (export default { name, inject, apply })

  • erforderliche Dienste in inject deklariert – das Framework garantiert, dass sie bereit sind, bevor apply ausgeführt wird, und lädt das Plugin neu, wenn einer verschwindet (dadurch bleibt das Plugin über DSH-Upgrades hinweg aktiv)

  • agentenseitige Fähigkeiten, die als registrierte Modellwerkzeuge via ctx.tools.register(defineTool(...)) bereitgestellt werden: mcp_manager_list, mcp_manager_set_enabled, mcp_manager_restart, mcp_manager_add

  • UI-seitige Fähigkeit über eine exakte webServer-Route (POST /dsh-mcp-manager/api), die von der Client-Hälfte genutzt wird

Funktionen:

  • Einstellungen → MCP Verwaltung-Seite (von der Client-Hälfte hinzugefügt)

  • Die Host-Hälfte verwaltet die @deepseek-ai/dsh-mcp-client-Zeilen in den tatsächlichen Patch-Dateien:

    • Projektebene → ~/.dsh/profiles/<profile>/cordis.patch.yml

    • Global → ~/.dsh/cordis.patch.yml

    • Hinzufügen / Bearbeiten / Aktivieren / Deaktivieren / Neustarten / Löschen, Live-Tool-Anzahl-Gesundheit, JSON-Export/Import, Schreibsperre pro Datei

Funktionsweise

Teil

Datei

Rolle

Host-Plugin-Quellcode

src/index.ts

TypeScript-Quellcode (die dokumentierte Plugin-Form); mit npm run build (tsc) bauen

Host-Plugin (kompiliert)

lib/index.js (main)

Cordis-Objektform-Plugin: Patch-Datei CRUD + 4 Modellwerkzeuge + webServer exakte Route /dsh-mcp-manager/api (JSON {op, args} → {ok, ...})

Client-Bundle

lib/client.js (exports["./client"] + dsh.client)

Browser-Modul: registriert die Einstellungsseite; ruft den Host via fetch('/dsh-mcp-manager/api') auf

Loader-Zeile

zur cordis.patch.yml des Profils hinzugefügt

setzt den Host-Eintrag zusammen; das Client-Module-Service scannt aktivierte Einträge und stellt das Client-Bundle bereit

Der Loader-Eintrag ist der einzige Zusammensetzungspunkt für beide Hälften – keine Änderungen an einem ausgelieferten DSH-Paket. Das Paket selbst ist plattformneutral (reines JS; Pfadtrennzeichen werden zur Laufzeit erkannt), daher funktioniert es unter Windows, macOS und Linux. Das Bauen (npm run build) erfordert die devDependencies (typescript, @deepseek-ai/cordis, @deepseek-ai/dsh-tools, @types/node); das ausgelieferte/installierte Paket benötigt keine davon.

Related MCP server: mcp-serverman

Installation (beliebige Plattform)

Schnellste – ein Befehl, via npm (erfordert Node.js >= 18):

# Option A — one-shot with npx, nothing to install
npx -y @xxxyz/dsh-mcp-manager

# Option B — global npm install, then run the command any time
npm i -g @xxxyz/dsh-mcp-manager
dsh-mcp-manager                  # install the plugin
dsh-mcp-manager-uninstall        # uninstall the plugin
npm i -g @xxxyz/dsh-mcp-manager@latest   # upgrade

Alle Flags werden in beiden Optionen durchgereicht: npx -y @xxxyz/dsh-mcp-manager --dsh-home /path/.dsh --profile web --repair --port 3080.

npm-Paketname: @xxxyz/dsh-mcp-manager (der bloße Name dsh-mcp-manager ist auf npm von einem nicht verwandten Paket belegt). Der bereitgestellte Plugin-Name ist weiterhin dsh-mcp-manager – npm/npx ist nur der Lieferkanal; das Installationsprogramm kopiert die Dateien an dieselben festgelegten Speicherorte unten.

No-npm-Alternative – direkt von GitHub:

npx -y github:xxxyz/DeepSeekHarness-MCP-Manager

Alternative – Installationsskripte aus einem Quell-Checkout ausführen (alle Installationsprogramme teilen eine plattformübergreifende Logikdatei, install.mjs). Installationsschritte:

  1. Kopieren Sie das Paket nach <dshHome>/local-packages/dsh-mcp-manager (eine echte Quelle außerhalb von node_modules, sodass DSH-Upgrades sie nie berühren)

  2. Kopieren Sie es in <dshHome>/profiles/node_modules/dsh-mcp-manager (absichtlich eine einfache Kopie – ein Symlink würde dazu führen, dass Node ESM den realpath des Plugins auflöst, wo @deepseek-ai/dsh-tools nicht gefunden werden kann)

  3. Fügen Sie die Loader-Zeile an profiles/<profile>/cordis.patch.yml an (idempotent; hält den Patch als gültiges Top-Level-Array)

Windows (PowerShell):

.\dsh-mcp-manager\install.ps1                     # default: ~/.dsh, web profile
# or: .\install.ps1 -DshHome D:\path\.dsh -Profile web

macOS / Linux:

./dsh-mcp-manager/install.sh                      # default: ~/.dsh, web profile
# or: ./install.sh --dsh-home /path/.dsh --profile web

Beliebige Plattform (direkt):

node dsh-mcp-manager/install.mjs [--dsh-home <path>] [--profile <name>] [--port <n>] [--repair] [--skip-patch]

Starten Sie dann DSH neu und öffnen Sie Einstellungen → MCP Verwaltung. Die vier mcp_manager_*-Werkzeuge sind nach diesem Neustart für das Modell aufrufbar.

Deinstallation (beliebige Methode):

dsh-mcp-manager-uninstall          # if installed via npm -g
# or: .\dsh-mcp-manager\uninstall.ps1 | ./uninstall.sh | node uninstall.mjs [--dsh-home <path>] [--profile <name>]

Dann starten Sie DSH neu. Die Deinstallation entfernt die bereitgestellte Kopie, die local-packages-Quelle und die Loader-Zeile.

Nach einem DSH-Upgrade: --repair

Ein DSH-Upgrade (oder ein defekter HMR-Zustand) kann dazu führen, dass die Host-Hälfte des Plugins entladen wird, während die Dateien noch vorhanden sind. Ein Befehl behebt das – kopiert das Paket erneut aus der Quell-Paketverwaltung, erhöht die config.version der Loader-Zeile, um ein erneutes Anwenden von HMR zu erzwingen, und fragt dann die API ab, bis sie antwortet:

node dsh-mcp-manager/install.mjs --repair            # default ~/.dsh, web, port 3080
node dsh-mcp-manager/install.mjs --repair --port 3080
# PowerShell: .\install.ps1 -Repair -Port 3080     bash: ./install.sh --repair --port 3080

--repair gibt nur dann Erfolg zurück, wenn POST /dsh-mcp-manager/api wieder mit {ok:true} antwortet. Wenn die API nach 30s immer noch nicht antwortet, starten Sie DSH einmal neu (der Loader importiert beim Boot immer neu).

API-Referenz

Alle Operationen sind POST /dsh-mcp-manager/api mit {"op": "<op>", "args": {...}}, gleicher Ursprung.

op

args

Ergebnis

mcpm-list

{}

{ok, rows[], paths, errors[]}

mcpm-add

`{serverName, transport, url

command, args?, headers?, env?, level, enabled?}

`

{ok, row}

mcpm-edit

{id, level, ...fields}

{ok}

mcpm-set-enabled

{id, level, enabled}

{ok}

mcpm-restart

{id, level}

{ok}

mcpm-remove

{id, level}

{ok}

mcpm-export

{}

{ok, json, savedTo}

mcpm-import

{json}

{ok, added[], skipped[]}

Modellwerkzeuge

Auf dem Host registriert mit ctx.tools.register(defineTool(...)) (Standard @deepseek-ai/dsh-tools):

Werkzeug

Beschreibung

mcp_manager_list

Alle konfigurierten MCP-Server auflisten (Ebene, Aktivierungsstatus, Live-Loader-Status, Werkzeuganzahl)

mcp_manager_set_enabled

Einen Server aktivieren/deaktivieren (id, level, enabled)

mcp_manager_restart

Einen Server neu starten (id, level)

mcp_manager_add

Einen Server hinzufügen (serverName, transport, url

command, …, level)

Hinweise / Einschränkungen

  • Die HTTP-Route ist auf dem lokalen Webserver nicht authentifiziert – für einen lokalen Einzelbenutzerrechner in Ordnung; setzen Sie den DSH-Web-Port nicht öffentlich aus.

  • Verwaltete Zeilen tragen # dsh-mcp-manager:server:<id>-Markierungen; die Loader-Zeile ist ein insert-Block, der id: mcp-manager, name: dsh-mcp-manager hinzufügt – DSHs Patch-Dialekt behandelt eine einfache - id:-Zeile als Überschreibung eines vorhandenen Eintrags (stillschweigend übersprungen, wenn nicht vorhanden), daher erfordert das Hinzufügen eines Plugins die insert-Form.

  • Wenn die laufende Webseite älter als die Installation ist, ist ein Seitenrefresh oder ein DSH-Neustart erforderlich, damit das Client-Modul funktioniert (der Boot-Graph wird beim Seitenladen erstellt).

Related MCP Connectors

Related MCP Servers

  • F
    license
    A
    quality
    C
    maintenance
    A robust MCP server with tools to search, install, configure, repair, and uninstall MCP servers, automating setup and maintenance across multiple AI and developer tools.
    4
    17
    -
  • A
    license
    Not graded
    quality
    B
    maintenance
    MCP management panel for DeepSeek Harness, enabling connection status monitoring, one-click upgrades, and server addition via a settings UI.
    1
    MIT