
ArvinQi/dsh-mcp
31Last commit Aug 16, 2026
dsh-mcp DSH plugin
dsh-mcp provides a visual management interface for MCP servers in DeepSeek Harness, including adding, editing, testing, and toggling servers. It also introduces a search-based injection mode to reduce token consumption and keep the tool list stable, avoiding cache invalidation.
How to install the dsh-mcp DSH plugin
dsh plugin --profile web add dsh-mcpCopying does not run this command. Review the repository and version before installing the dsh-mcp DSH plugin.
dsh-mcp DSH plugin data source
dsh-mcp DSH plugin snapshot date: Aug 16, 2026
discovered
What the dsh-mcp DSH plugin can do
- Visual MCP server management: add, edit, delete, start/stop, test connection, and refresh via Settings → MCP.
- Per-tool fine-grained control: expand each server to see all tools, uncheck to disable injection instantly.
- Dual injection modes: 'search' (on-demand retrieval, saves tokens) and 'full' (inject all at once).
- OAuth support: automatically opens browser for authorization code + PKCE flow, token persistence and auto-refresh.
- Zero npm dependencies: directly uses DSH internal capabilities, install and use immediately.
- Stable tool list: prevents repeated re-registration and cache invalidation when tools haven't changed.
Where the dsh-mcp DSH plugin fits
- Manage multiple MCP servers from a single UI without editing config files.
- Reduce token consumption by only injecting tools when needed via search mode.
- Securely connect to OAuth-protected MCP servers with automatic browser-based authorization.
- Quickly test MCP server connectivity and tool availability before regular use.
- Develop and debug MCP tools by selectively enabling/disabling specific tools per server.
Who the dsh-mcp DSH plugin is for
- DSH users who want a visual MCP management interface.
- Developers working with multiple MCP servers and seeking to optimize token usage.
- Users who need to configure OAuth-authenticated MCP servers in DSH.
dsh-mcp DSH plugin limitations
- Only supported in DSH web environment (profile web).
- Requires DSH to be installed and configured with cordis.patch.yml entries.
- OAuth first-time authorization requires browser interaction, connection timeout extended to 5 minutes.
- Local link installation needs additional symlink setup for node_modules resolution.
- Changes to the host half require editing built files directly; browser half modifications need rebuild.
dsh-mcp DSH plugin: from the repository README
Quoted from the ArvinQi/dsh-mcp README, the upstream source of the dsh-mcp DSH plugin. Copyright remains with the original authors.
**[English](README.en.md) | 简体中文** [](https://dshfind.com/zh/plugins/ArvinQi/dsh-mcp?ref=badge)  ## 为什么用 dsh-mcp? **解决的核心问题:** - **MCP 工具全量注入烧 token**:接入多个 MCP 服务器后工具可达上百个,每轮全量注入开销巨大。`search` 按需检索模式让模型通过 `mcp_tool_search` 热注入所需工具,大幅节省 token。 - **工具列表反复更新破坏缓存**:`tools/list_changed` 通知会让同名工具被反复注销/重注册,系统提示词工具列表抖动、prompt cache 频繁失效。工具列表稳定化让未变化的工具保留原注册,最大化 cache 命中。 - **没有可视化管理入口**:服务器配置、启停、工具勾选全靠手工改文件。Settings → MCP 一站式可视化完成。 **功能优势:** - **可视化管理**:服务器列表 / 新建 / 编辑 / 删除 / 测试连接 / 启停 / 刷新,全 UI 操作 - **工具级精细控制**:每个服务器展开工具列表,默认全选,可取消勾选只加载需要的部分 - **双注入模式**:`search`(按需检索,省 token)与 `full`(全量注入) - **零 npm 依赖**:直接对接 DeepSeek Harness 内部能力,安装即用 - **OAuth 认证支持**:`streamable-http` 服务器若走 MCP OAuth(授权码 + PKCE),连接时自动打开浏览器授权;token 持久化、由 SDK 自动刷新(24 小时内活跃自动续期) - **三种安装方式**:npm / GitHub git 源 / 本地 link;中英文界面与文档 ## 功能 - **托管 MCP 服务器注册表**(host):持久化定义(storage-domain `mcp_servers`)、按服务器挂载 `@deepseek-ai/dsh-mcp-client` 实例、环境变量注入(明文入定义、secret 走 credentials)、 连接探测(test)。 - **Web 设置管理页**(client):Settings → MCP,列表/编辑/删除/测试服务器。 - **OAuth 认证**(host,`lib/oauth.js`):`streamable-http` 服务器遇 401 + OAuth 挑战时自动走 授权码
Read the full READMERepository license: MIT
dsh-mcp DSH plugin questions
How do I install dsh-mcp?
You can install dsh-mcp via npm with `dsh plugin --profile web add dsh-mcp`, or directly from GitHub with `dsh plugin --profile web add github:ArvinQi/dsh-mcp`. For local development, use `dsh plugin --profile web add link:<absolute path>`. After installation, add the plugin entry to `$DSH_HOME/profiles/web/cordis.patch.yml` and restart `dsh web`.
How do I configure an OAuth-protected MCP server?
When adding a server with `streamable-http` transport, if the server returns a 401 with OAuth challenge, dsh-mcp automatically opens your browser for the authorization code + PKCE flow. After you log in and consent, the token is persisted and reused for subsequent connections. The first authorization may take up to 5 minutes, but non-OAuth servers are unaffected.
What is the difference between 'search' and 'full' injection modes?
In 'search' mode, the model calls `mcp_tool_search` to retrieve and hot-inject specific tools only when needed, saving tokens and reducing context bloat. In 'full' mode, all enabled tools are injected into the system prompt at once, which is simpler but uses more tokens. You can switch modes at the top of the MCP settings page.
Can I disable specific tools from a server without removing the server?
Yes. Expand the server's tool list in the MCP settings page, uncheck the tools you don't need, and the change takes effect immediately without saving. Disabled tools are not injected into the system prompt, helping you save tokens.
Why does my tool list keep changing after restarting a server?
dsh-mcp stabilizes the tool list: if a tool's content hasn't changed, it avoids deregistering and re-registering the same tool, which prevents cache invalidation. If you see unexpected changes, make sure the server's tool definitions are identical. You can also use the 'refresh' button on the MCP settings page to sync the latest state.