Back to marketplace

dsh-mcp-admin

Integrations

kairoz9/dsh-mcp-admin

A DeepSeek Harness plugin for inspecting MCP status and managing MCP servers. Provides a /mcp command and a Settings panel to add, edit, delete, enable, or disable MCP servers, with changes written back to cordis.patch.yml and hot-reloaded.

  • cordis
  • deepseek
  • dsh
  • dsh-plugin
  • mcp
  • mcp-client
  • mcp-server
  • model-context-protocol
  • typert
  • typescript
GitHub Stars
5GitHub
Views
0DSH Plugin Hub
Forks
0GitHub
Open issues
0GitHub Issues
Manifest version
0.2.0dsh-mcp-admin
Latest push
Aug 15, 2026GitHub
License
MITTypeScript
Plugin type
Host + ClientRuns in both Host and Web Client

README

View source

dsh-mcp-admin

A dsh (DeepSeek Harness) plugin: Inspect MCP status (/mcp command) + Manage MCP servers in Settings (add / edit / delete / enable / disable, written back to cordis.patch.yml). MIT licensed.

/mcp command output:

/mcp command

Settings page "MCP" panel:

Settings MCP Panel

Installation

Release tarball (Recommended, no build required): Download dsh-mcp-admin-<version>.tgz from Releases, then run:

dsh plugin --profile web add ./dsh-mcp-admin-0.2.0.tgz

Build tarball locally (if building yourself):

pnpm run build        # Builds to lib/
pnpm pack             # Packages into tarball
dsh plugin --profile web add ./dsh-mcp-admin-0.2.0.tgz

Git repository (installs from source via prepare build):

dsh plugin --profile web add github:kairoz9/dsh-mcp-admin

pnpm ≥10 refuses to run the prepare script of git dependencies by default, which causes the initial Git installation to fail. dsh will print the fix in the error message: add the package key to that profile's pnpm-workspace.yaml and re-run add:

allowBuilds:
  dsh-mcp-admin: true

It is recommended to pin a commit or tag: github:kairoz9/dsh-mcp-admin#v0.2.0.

Usage

  • /mcp — Lists MCP servers across all profiles + live tool count (including never-connected servers, read from full config inventory).
  • Settings page "MCP" panel — Manage MCP servers per profile: add / edit / disable / enable / delete, with status dots auto-refreshing every second. Saving writes back to that profile's cordis.patch.yml, and dsh automatically hot-reloads (HMR).

How It Works

Host-side McpAdminRemote (TypertRemoteService, @Remote methods) is auto-discovered by the host gateway. The browser client self-mounts this namespace via ctx.remote.$mount, and both the panel and /mcp popup read the same structured data:

  • list() — Reads the full server inventory from the profile's cordis.patch.yml, then filters mcp__ prefix with ctx.tools.schemas() to annotate real-time tool counts; enumerates active mcp-client instances from Cordis registry to distinguish "connected / instance present with 0 tools (connection failed) / not loaded".
  • set() — Reconciles and writes back to cordis.patch.yml (single atomic write, comments preserved), and dsh's watchUserPatches HMR automatically reloads mcp-client.
  • /mcp command reads all profiles and outputs the tool list for each server.

Comments

0
Newest first