DeepSeek Harness plugin

dsh-mcp-servers

DeepSeek Harness bundle that exposes Model Context Protocol (MCP) servers — stdio, streamable HTTP and legacy SSE — as native Harness tools, with a settings UI, live status, auto-reconnect, and

Jump to install

Source facts

Repository
meltartica/dsh-mcp-servers
Latest update
Aug 17, 2026
Category
Tools & Capabilities
GitHub stars
0
Format
plugin
Catalog evidence
Upstream dsh.bundle evidence
Evidence path
package.json#dsh.bundle
Checked against
0.1.0-rc.8
Upstream check date
2026-08-20

This evidence comes from the upstream catalog. This site has not installed, run, or security-reviewed the plugin.

Install

Start with a prompt that asks an agent to review the GitHub repository and source. Switch to the command if you want to install it yourself.

Copy this prompt into DSH, Codex, or another agent and ask it to review the GitHub repository and source first.

Do not install or run any commands yet. Read this plugin's GitHub repository, README, and relevant source code. Then answer the questions below clearly and directly so I can decide whether it fits my needs:

1. What is this plugin, and what problem does it solve?
2. Who is it for, and what are its typical use cases?
3. How is it used after installation? Include one minimal example.
4. What known limitations or privacy, security, compatibility, or maintenance risks does it have?
5. Give a clear recommendation: recommend, conditionally recommend, or do not recommend, with reasons.

Distinguish statements documented by the repository, inferences from source code, and unknowns. If evidence is insufficient, say so explicitly. Do not guess or simply repeat the README.

GitHub: https://github.com/meltartica/dsh-mcp-servers
Plugin: dsh-mcp-servers
Author: meltartica

Check the source files

Read the README and other files from this plugin directory before installing.

File explorer3 files
README.mdSource · read only

dsh-mcp-servers

Expose Model Context Protocol servers as tools inside DeepSeek Harness. A dsh bundle with both a server half (connects to MCP servers, registers their tools) and a client half (a settings UI in the web app).

Made with DeepSeek V4 Flash.

Features

  • stdio, streamable http, and legacy SSE transports — one shared endpoint field, tabs in the UI
  • Tools registered automatically under mcp__<serverId>__<toolName> — the same server-qualified shape the official @deepseek-ai/dsh-mcp-client and Claude Code use (e.g. server id shadcnmcp__shadcn__get_component); names are normalized to [A-Za-z0-9_-], capped at 64 chars, and get a deterministic 12-hex hash suffix when normalization/truncation would collide
  • tools/list_changed re-sync — when a server signals its tool list changed, the generation re-registers in place (old tools stay live until the new set registers)
  • Live status dots — green when connected, red with the reason on failure; auto-reconnects with backoff when a connection drops (idle SSE streams, crashed processes)
  • Test button per card — probes connect + tool listing against the current draft without registering anything
  • Edit cards — type tabs, command/args textarea, env variables (or http headers) as key/value rows with show/hide values, paste .env from the clipboard, enabled switch
  • Tabs: All / Local / Remote / Backup & Restore
  • Backup & Restore: export/import the server list as JSON (with inline preview), and optional WebDAV sync (push/pull, https-only, Basic auth) plus an optional daily automatic backup at 12:00 PM — password stored server-side as a secret, never sent back to the browser

Install

Requires DeepSeek Harness with the dsh CLI.

# from a directory containing this repo (or publish it, then use the bare name);
# <name> is the profile you boot, e.g. `web`
dsh plugin --profile <name> add ./dsh-mcp-servers
dsh --profile <name>

Then open Settings → MCP Servers, add a server, hit Test, and Save.

Other install methods

From a built tarball (npm run pack produces dsh-mcp-servers-<version>.tgz):

dsh plugin --profile <name> add ./dsh-mcp-servers-<version>.tgz

Rebuild after changes with npm run build — profiles load the built dist/ and client/client.js, not the sources.

Configuration

stdio server

fieldexample
typestdio
commandnpx
command args-y<br>@modelcontextprotocol/server-everything (one per line, first line is the command)
envkey/value rows, e.g. API_KEY / your token

http / sse server

fieldexample
typehttp (streamable) or sse (legacy event-stream)
urlhttps://example.com/mcp or https://example.com/sse
headerskey/value rows (e.g. Authorization / Bearer …)

Backup & Restore

  • Local file: export the current config (all servers, endpoints, env, headers) as JSON, import it back, or preview what would be exported.
  • WebDAV: URL, username, password (https only), Push/Pull. Toggle Back up daily at 12:00 PM to auto-push every day at noon local time.

Development

npm install          # note: .npmrc sets legacy-peer-deps (two framework rc lines)
npm run build        # server dist/ + client bundle
npm run check        # typecheck (server + client) + sanitizer test
npm run pack         # build + produce dsh-mcp-servers-<version>.tgz
npm run publish:npm  # build + publish to npm (run `npm login` first)

Versioning is build-based: 1.<YYMMDD>.<build> (e.g. 1.260817.1); the counter increments on every build and resets each day.

The client UI follows the Harness design system: primitives are host-injected externals (@deepseek-ai/dsh-client-ui-primitives) and native controls use --dsw-* theme tokens with hex fallbacks.

Notes / limitations

  • Tool input schemas are whitelist-stripped to the Harness-supported JSON Schema subset (src/sanitize.ts); unsupported keywords (minLength, format, anyOf, schema-form additionalProperties) are dropped.
  • MCP results render as text; image/resource blocks collapse to JSON/text, not rich blocks.
  • WebDAV requires an https endpoint; credentials in the URL are rejected (passed separately).
  • Config/WebDAV routes are loopback-only.