kairoz9 / dsh-mcp-admin

Listed

dsh plugin for MCP status inspection and server management | dsh 的 MCP状态查看与服务管理插件

mainModel View source

Installation

npx -y @deepseek-ai/dsh plugin --profile web add github:kairoz9/dsh-mcp-admin

This installation command is an unverified starting point generated from the GitHub repository address.

README

Maintainer-authored documentation snapshot.

View on GitHub ↗
Commit 553203bSynced Aug 18, 2026

dsh-mcp-admin

English | 简体中文

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.

Repository information

Language
TypeScript
License
MIT
Latest release
v0.2.0
Last updated
Aug 15, 2026, 4:41 AM

Install deliberately

Review source code, permissions, lifecycle hooks, dependencies and network access. Test untrusted plugins in an isolated environment.