DeepSeek Harness 的 MCP 服务器安装与验证工具:交互式 init 会把真实 patch 条目写进 profile,list 与 validate 检查配置,CI 强制的验证器逐个连接精选服务器。
安装
# npm 包(预构建)
dsh plugin --profile web add dsh-mcp-bridge
# GitHub 源码(首次需按提示配置 allowBuilds 构建授权后重试)
dsh plugin --profile web add github:Edge-Echo/dsh-mcp-bridge
装任何插件都等于在你的机器上跑第三方代码,权限和你本人一样大——能读你的文件、用你的凭据、访问网络,工具审批管不到它。GitHub 来源的插件还会在安装时执行构建脚本——pnpm 默认拦截,所以安装可能停在 ERR_PNPM_GIT_DEP_PREPARE_NOT_ALLOWED 或 ERR_PNPM_IGNORED_BUILDS;dsh 会打印出需要添加的确切键名,把它加进该 profile 的 pnpm-workspace.yaml 的 allowBuilds 下,重跑一次即可装上。放行构建本身就是一次信任判断:请只安装可信来源,并尽量锁定 commit(github:owner/repo#sha)。
README
dsh-mcp-bridge
Part of the dsh-toolkit family: dsh-mcp-bridge · dsh-win-toolkit · dsh-netassist · dsh-driftwatch
面向 DeepSeek Harness (dsh) 的精选、验证过的 MCP 全家桶插件。
一条命令装上经过实战检验的 MCP server 集合——而不是让你自己去琢磨一份 YAML。每个精选 server 在 servers/ 里有机器可读定义,scripts/verify-servers.mjs 会逐个检查连通性,所以「已验证」是 CI 保证的事实,不是宣传话术。
模型看到的工具名为 mcp__<serverName>__<toolName>(与 Claude Code / Codex 的服务器限定命名一致)。桥接层是 DSH 内置的 @deepseek-ai/dsh-mcp-client:支持 stdio / streamable-http、自动重连、HMR 热替换。
English docs: README.md.
交互式安装器
npx dsh-mcp-bridge init # 交互式选择服务器
npx dsh-mcp-bridge list # 查看目录 + 验证状态
npx dsh-mcp-bridge validate # 列出 profile 里已配置的 MCP 条目
init 会把真正的 insert: 条目写进 profile 的用户 patch 层
($DSH_HOME/profiles/<name>/cordis.patch.yml)——所以你选的服务器能跨插件升级保留,
并和你自己的 patch 共存。需要环境变量或占位路径的服务器会给出警告。
为什么不自己配?
因为难的不是 YAML,而是它周围的一切。
- 用户 patch 层是覆盖语义:在那里写一个新 id 会报
patch: entry "x" not found,新服务器必须用insert:。 - 配置少缩进一层会被解析成
config: null,服务器静默地永远不启动。 - 连上了但没暴露工具的服务器,和正常工作的服务器长得一模一样,直到你问模型。
这个包提供了可用的写法、会写对的安装器(init)、检查器(list、validate),以及一个真的会去连接的验证器。
快速开始
前置条件:dsh 与 pnpm 在 PATH 上(dsh plugin 内部转发 pnpm;未装可 npm i -g pnpm)。
dsh plugin --profile web add dsh-mcp-bridge
# 本地开发: dsh plugin --profile web add ./dsh-mcp-bridge
dsh web # 重启 profile
默认启用 MCP 官方 everything 演示 server(无 API key,纯本地 npx)。重启后让模型「调用 everything 服务器的 echo 工具,传 hello」,它应该会用 mcp__everything__echo。
首次运行会通过
npx下载 server 包,之后有缓存。
精选目录
| Server | 能干什么 | 需要的配置 | 验证状态 |
|---|---|---|---|
everything |
演示工具:echo、add、长任务、小图片 | 无(默认开启) | ✅ 13 个工具 |
memory |
会话内知识图谱(实体/关系) | 无 | ✅ 9 个工具 |
filesystem |
文件读写/搜索,仅限显式授权的根目录 | 改 root 目录(args) | ✅ 14 个工具(给定真实目录时) |
github |
仓库 / issue / PR | GITHUB_TOKEN |
⏸ 需配置 |
playwright |
浏览器自动化(导航/点击/截图) | 首次需下载浏览器 | ⏸ 较重,CI 跳过 |
remote-http |
自建 / 托管的 HTTP MCP server | URL(可选 token) | ⏸ 需配置 |
启用某个注释预设:在 profile 的 cordis.patch.yml 里取消对应注释块(HMR 热替换,无需重启),或直接改本包的 cordis.patch.yml。
自己验证目录
npm install # 会带入 @deepseek-ai/dsh-mcp-client → MCP SDK
npm run verify # 或:node scripts/verify-servers.mjs
逐个打印 PASS / SKIP / FAIL,有失败时退出码非 0。VERIFY_TIMEOUT_MS=15000 可调单 server 超时。单 server 排障:node scripts/probe-server.mjs npx -y your-mcp-server。
添加自己的 MCP server
每个 server 就是一条 @deepseek-ai/dsh-mcp-client 条目。推荐加到 profile 的用户 patch 层(HMR 即时生效):
# $DSH_HOME/profiles/<name>/cordis.patch.yml
- id: mcp-myserver
name: '@deepseek-ai/dsh-mcp-client'
config:
serverName: myserver # 命名空间,进程内唯一([A-Za-z0-9_-]{1,32})
transport: stdio # 或 streamable-http
command: npx
args: ['-y', 'your-mcp-server']
env:
YOUR_TOKEN: !!js process.env.YOUR_TOKEN
或者:把定义放进 servers/(这样 verify 会覆盖它),并在本包 cordis.patch.yml 里加对应条目。
配置字段速查(来自 dsh-mcp-client)
| 字段 | 传输 | 必填 | 说明 |
|---|---|---|---|
transport |
两者 | 是 | "stdio" 或 "streamable-http" |
serverName |
两者 | 是 | 工具命名空间,存活实例内唯一 |
command / args / env / cwd |
stdio | command 必填 | 子进程规范 |
url / headers |
http | url 必填 | 端点 + 认证头 |
toolCallTimeoutMs |
两者 | 否 | 单次调用超时,默认 60000 |
failOnStartupError |
两者 | 否 | 连接失败时拒绝激活(默认 false) |
reconnect.* |
两者 | 否 | 自动重连退避(默认开启) |
与 Reasonix / CodeWhale 联动
三者都是 agent harness——MCP 就是共同语言。你给 Reasonix / CodeWhale 配的任何 server 都能加到这里;自建的 streamable-http server 可以让 DSH、Reasonix、CodeWhale 共用一个进程。见 servers/remote-http.json。
排错(Windows)
- headless 验证挂起(
dsh --profile <name> "任务"):profile 需要在dsh.profile.bundles里手动加@deepseek-ai/dsh-headless(dsh plugin add @deepseek-ai/dsh-headless会因其未发布依赖 404 失败)。缺它时树能激活但没有 agent 消费任务。 - Windows 下
npx正常可用:MCP SDK 使用cross-spawn,能解析.cmdshim,不需要npx.exe。 - server 连上了但没有工具:看 profile 日志;
failOnStartupError: false时失败条目会静默激活但不注册工具。
发布(npm)
npm version patch(或手动改package.json),提交,打 tagvX.Y.Z。git push origin main --tags。- GitHub Actions(
publish.yml)自动发布到 npm——需要 npm trusted publisher(OIDC)关联仓库。设置:npm → Access Tokens → Generate new token → Publish with GitHub Actions。
给仓库打上 GitHub topic dsh-plugin,这样会出现在社区列表里(awesome-dsh-plugin、WhaleHub)。
License
MIT — 见 LICENSE。
链接
同类插件
Tencent/WeKnora#dsh-weknora★ 31002
把 WeKnora 知识库接入 dsh 的四个只读工具:列出知识库、混合检索原文片段、按顺序还原单篇文档,以及直接取用 WeKnora 自己带引用的 RAG 或 ReAct agent 回答(含可续聊的 session id)。
superdesigndev/treg★ 3752
给 Agent 的工具目录:按「要做的事」检索约 2,600 个外部接口(SEO 与 SERP、外链、社交、人物与公司信息补全、广告库、抓取),查看参数与单次调用价格后直接调用,凭据由服务端注入。附带技能,MCP 行在未设置 TREG_TOKEN 前保持禁用。
TencentCloudBase/CloudBase-AI-Toolkit#dsh-plugin★ 1127
把腾讯云 CloudBase 后端接入 DeepSeek Harness——在对话里搭好并部署全栈应用,查询结果渲染为表格卡片(分页、排序、导出 CSV),部署后可预览真实域名,并提供 CloudBase MCP 工具集(`mcp__cloudbase__*`),登录走 device-code 流程。
gitroomhq/postiz-agent#dsh-postiz★ 498
通过 MCP 将 DeepSeek Harness 连接到 Postiz:列出已连接的社交媒体渠道、获取各平台发帖规则,并向 X、LinkedIn、Instagram、Facebook、Threads、TikTok、YouTube、Reddit、Bluesky、Mastodon、Discord、Slack、Telegram 等平台排期、存草稿或发布帖子;附带 postiz 工作流技能。
EthanYoQ/Invoice-Downloader#dsh-invoice-downloader★ 465
面向 DeepSeek Harness 的本地 IMAP 发票下载、OCR 识别、归档与 Excel 报销汇总。
anysearch-team/anysearch-dsh★ 432
基于 AnySearch 的实时网页与垂直搜索插件,为 DeepSeek Harness 提供搜索工具。
社区评论
评论公开保存在 GitHub Discussions。加载评论会连接 GitHub 和 Giscus;发表内容需要 GitHub 账号。