Preface

The core concept of DeepSeek Harness is “everything is a plugin.” In local development or daily use, managing skill files and MCP server configurations usually requires manually editing YAML files, which is error-prone and lacks visual debugging tools. The dsh-mcp-skills plugin provides a direct web-based management entry point, consolidating previously scattered configuration items into a Web interface.

Plugin Positioning

This is a DeepSeek Harness client plugin maintained by Lrxc. By injecting code, it adds two management pages, “Skills” and “MCP,” to the Web settings panel, allowing centralized management of user-owned skills and MCP server configurations.

Core Features

Skills Page

This page is used to manage user-owned skills. It supports browsing, importing (ZIP format), deleting, and enabling/disabling skills. Skill files are stored in the $DSH_HOME/skills directory.
- Import rules: ZIP import supports a single skill (SKILL.md in the root directory or <name>/SKILL.md) or multiple skill directories.
- Deduplication: Existing skills are not overwritten; the template/ directory is skipped; the import result displays the number of skipped items.

MCP Page

This page is used to manage MCP server configurations. It supports both stdio and Streamable HTTP types.
- Configuration storage: MCP server configurations are saved in $DSH_HOME/mcp-servers.yaml.
- Integration writing: Enabled servers are written to the current profile’s cordis.patch.yml and automatically connected after restarting dsh.
- Tool registration: Mounted tool names use the format mcp__<server>__<tool>.
- File operations: The plugin only adds or removes mcp-* lines it generated itself, without modifying other content in the file (comments, anchors, and !!js expressions are all preserved as-is). Writing operations are atomic, and a .bak backup is kept.

Connection Testing

Provides connection testing with a 15-second timeout. If a test times out, the connection is closed and the child process is recycled. Testing and actual mounting use the same environment sanitization rules.

Installation and Activation

Prerequisites

  • Installed DeepSeek Harness (dsh) with a web profile.
  • pnpm available in the PATH environment variable.

Install Commands

Install from npm:

dsh plugin --profile web add dsh-mcp-skills

Install from GitHub:

dsh plugin --profile web add https://github.com/Lrxc/dsh-manage-hub.git

Install from a local directory:

git clone https://github.com/Lrxc/dsh-manage-hub.git
dsh plugin --profile web add file:./dsh-manage-hub

Restart Service

After installation, restart the service to make the configuration take effect:

dsh --profile web

Notes

  1. Configuration file syntax check: If the profile’s cordis.patch.yml contains syntax errors, the plugin refuses to rewrite it and reports an error; it does not overwrite the file.
  2. Environment variable sanitization: For security reasons, *_KEY / *_PASSWORD / *_SECRET / *_TOKEN and DSH_* environment variables are not passed to MCP child processes. If credentials are needed, configure them explicitly in the server’s environment variables.
  3. Test button dependency: The page’s “Test” button uses the MCP SDK included with the host installation (listed as an optional peer dependency and not duplicated in this package). If the host does not provide the SDK, only the Test button will show as unavailable; skill management and other MCP features are unaffected.

Summary

dsh-mcp-skills solves the problems of scattered and hard-to-manage skill and MCP server configurations in a DSH environment through a Web interface. It provides visual capabilities for adding, deleting, updating, and browsing configurations, while preserving atomicity and safety for file operations.

  • GitHub repository: https://github.com/Lrxc/dsh-manage-hub
  • Plugin directory: https://www.skillhub.cn/plugins/Lrxc/dsh-mcp-skills