Introduction¶
For developers using the DeepSeek Harness (DSH) Web profile, troubleshooting costs can be high when MCP server configuration, startup/shutdown, and status checking are scattered across different locations. dsh-mcp-settings is an installable DSH bundle that integrates a settings-driven MCP server manager, a read-only inventory Remote, and a Web Settings UI into a single compatible Web profile, allowing you to manage mcp.servers from Settings > MCP.
DSH’s philosophy is “Everything is a plugin”; the community directory is an independent site with no official affiliation to DeepSeek or Hyperbolic, and should not be written as an official app store.
What is This¶
The positioning of dsh-mcp-settings is:
Settings-driven MCP server manager, inventory Remote, and Web settings UI for DeepSeek Harness
It is maintained by aka-danielZhang, and the GitHub repository address is:
https://github.com/aka-danielZhang/dsh-mcp-settings
This bundle installs three plugin lines for a compatible Web profile:
| Plugin Line | Responsibility |
|---|---|
dsh-mcp-settings-manager |
Owns the mcp.servers configuration space, starts and stops a built-in MCP client fiber for each enabled server, and publishes the merged connection status |
dsh-mcp-settings-inventory |
Exposes the read-only mcpInventory/list Remote |
dsh-mcp-settings-ui |
Adds the MCP Settings page, providing Form/JSON editing, enable/disable toggling, status polling, and tool count display |
The target profile cannot already have another settings-driven MCP manager or MCP Settings UI mounted. Existing mcp.servers user configurations will not be deleted.
Core Features¶
Manager¶
dsh-mcp-settings-manager is responsible for MCP server lifecycle and status:
- Owns the
mcp.serversconfiguration space. - Starts a built-in MCP client fiber for each enabled server.
- Stops the corresponding fiber when a server is disabled.
- Publishes the merged connection status.
Inventory¶
dsh-mcp-settings-inventory exposes the read-only Remote:
mcpInventory/list
It is used to list the MCP inventory and does not provide write operations.
UI¶
dsh-mcp-settings-ui adds the Settings > MCP page:
- Form editing and JSON editing.
- Directly enable / disable servers.
- Status polling.
- Tool count display.
- Supports
stdioservers and Streamable HTTP servers. - Supports credential references.
Credential references work as follows:
- HTTP servers use
authorizationCredentialRefto construct the Bearer authorization header. stdioservers useenvCredentialRefsto map the target environment name to credential references.
Installation and Enablement¶
First, confirm the environment. According to verified facts, the following conditions must be met before installation:
- A matching DeepSeek Harness development build is required, and its
webprofile must already provide the DSH peer packages listed inpackage.json. - The Harness build must emit the
mcp-client/statusevent; the README states that this event is not yet in the public Harness default branch. - Node.js requirement:
^22.19.0 || >=24. - When installing directly from GitHub, pnpm 10 or later is required.
- The
versioninpackage.jsonis0.2.3,packageManagerispnpm@11.7.0, andengines.nodeis^22.19.0 || >=24.0.0. - The currently compatible DeepSeek Harness version is
0.1.0-rc.7, corresponding to@deepseek-ai/dsh-rootand@deepseek-ai/dsh-mcp-client. - Starting from
v0.2.2, the manager locally mirrors reconnect defaults and server-name patterns instead of importing unreleaseddsh-mcp-clientexports.
Installation from GitHub¶
Execute:
dsh plugin --profile web add github:aka-danielZhang/dsh-mcp-settings
This command only installs the bundle and does not install or upgrade Harness-owned peer packages. Therefore, it must point to a compatible Web profile that already has the required peer packages.
If you are installing code that you do not fully control, it is recommended to pin the commit:
dsh plugin --profile web add github:aka-danielZhang/dsh-mcp-settings#<commit-sha>
pnpm build permission¶
Git installation triggers the repository’s prepare script to generate lib/. pnpm blocks dependency build scripts before profile authorization. If the first installation reports an ignored build, add the package key printed during installation to the allowBuilds section in ~/.dsh/profiles/web/pnpm-workspace.yaml, then repeat the installation command. The structure is similar to:
allowBuilds:
"<package key printed during installation>": true
This authorization allows package code to run during the installation stage, so you should check the source code and license before installation.
Restart and Verify¶
Restart the Web profile after installation:
dsh --profile web
Then open:
Settings > MCP
The existing mcp.servers list is still available.
Use the following command to check the combined profile lines:
dsh --profile web --dump-config
The output should contain:
dsh-mcp-settings-manager
dsh-mcp-settings-inventory
dsh-mcp-settings-ui
Installation from Local Checkout¶
You can also clone the repository and install from the local path:
git clone https://github.com/aka-danielZhang/dsh-mcp-settings.git
cd dsh-mcp-settings
dsh plugin --profile web add file:.
Typical Usage¶
The usage flow after the above installation steps is:
- Open
Settings > MCP. - Edit
mcp.serversin the Form or JSON view. - For HTTP servers, configure
authorizationCredentialRefto construct the Bearer authorization header. - For
stdioservers, configureenvCredentialRefsto map the target environment name to credential references. - Toggle the server enable/disable status.
- View the connection status and tool count in the UI.
To remove the bundle, execute:
dsh plugin --profile web remove dsh-mcp-settings
Then restart the Web profile. The bundle lines will disappear after removal, but user configurations will be retained.
Applicable Scenarios and Notes¶
Suitable for developers using DSH in a compatible Web profile who wish to manage MCP servers via Web Settings.
Notes on installation and use:
dsh plugin addonly installs the bundle and does not install or upgrade Harness-owned peer packages.- This bundle relies on a matching Harness development build, and that build must emit the
mcp-client/statusevent. - The target profile cannot already have another settings-driven MCP manager or MCP Settings UI mounted.
- DSH is pre-release software; when extension points change, peer ranges, type descriptors, and bundle patches should be updated together.
- Starting from
v0.2.2, the manager locally mirrors reconnect defaults and server-name patterns instead of importing unreleaseddsh-mcp-clientexports. - Plugins run under the permissions of the current
dshprocess; you should check the source code, dependencies, and license before installation. - The license field is not clearly stated in the scraped data. The README mentions migration from an MIT-licensed package and points to LICENSE, but the LICENSE text or the license field for this plugin is not provided.
Conclusion¶
The value of dsh-mcp-settings lies in centralizing MCP server management in DSH Web Settings: the manager handles mcp.servers start/stop and status, the inventory provides the read-only mcpInventory/list Remote, and the UI provides Form/JSON editing, enable/disable toggling, status polling, and tool count display.
The directory page URL is not provided in the scraped data. The GitHub repository address is:
https://github.com/aka-danielZhang/dsh-mcp-settings