yangfch3
dsh-mcp-mgr
MCP server manager for DeepSeek Harness — workspace mcp.json discovery, hot sync, and a web settings UI.
- Stars
- 0
- Language
- TypeScript
- Created
- Aug 15, 2026
- Updated
- Aug 15, 2026
Introduction
dsh-mcp-mgr
English | 中文
A workspace-level MCP manager for DeepSeek Harness: declare MCP servers in each workspace's .dsh/dshmm/mcp.json (Claude/Codex-style mcpServers format), auto-discovered and dynamically registered as dsh plugin instances, with a management UI in the settings page.
Features
- Workspace MCP: auto-discovers
mcp.jsonunder every registered workspace, hot-syncs on file changes, and unloads on workspace removal - Profile MCP display: unified display and management of non-workspace mcp-client registrations (profile patch / bundle /
--patch) - Settings tab: MCP server list — source, status, inspect and remove
- Strict mode: when checked, only the current workspace's (the sidebar-selected session's workspace) MCP servers are enabled; switching workspaces unloads the others. Off by default (all workspaces coexist)
- Workspace MCP servers are registered under dsh's standard
mcp__<serverName>__<tool>naming, so multiple servers and sources are naturally isolated

Install & uninstall
Install:
npx @deepseek-ai/dsh plugin --profile web add dsh-mcp-mgr
Start:
npx @deepseek-ai/dsh web
Uninstall:
npx @deepseek-ai/dsh plugin --profile web remove dsh-mcp-mgr
Workspace configuration
The plugin auto-detects .dsh/dshmm/mcp.json at the workspace root, for example:
{
"mcpServers": {
"unity-mcp": { "type": "http", "url": "http://localhost:8090/" },
"filesystem": { "type": "stdio", "command": "npx", "args": ["-y", "@modelcontextprotocol/server-filesystem", "/data"] }
}
}
- A missing
typeis treated as remote Streamable HTTP;${VAR}environment expansion is supported - The stdio server's cwd defaults to the workspace root
serverNamemust be globally unique; a later duplicate fails loudly (flagged as a conflict in the UI)
Development
Build:
# host plugin
tsc -p packages/dsh-mcp-mgr && node gen.mjs
# UI plugin (from the ui package directory)
tsc -p packages/dsh-mcp-mgr-ui && tsdown --config-loader tsx --env.DSH_BUILD_FACE client
# regression
node verify.mjs
Local (source) install verification and uninstall:
# install
node scripts/install.mjs
# uninstall
node scripts/uninstall.mjs
Design docs live in Doc/requirements.md.