前言¶
DeepSeek Harness(命令名 dsh)是 DeepSeek AI 开源的智能体运行时,官方仓库把原则写成一句话:Everything is a Plugin(一切皆插件)。模型、工具、技能、会话、沙箱和界面都可以按 profile 增删,不必改 harness 源码。官方入门路径是装好 Node.js 后执行 npx @deepseek-ai/dsh web。目前仍是面向开发者的预览版,接口还会变。
给智能体接外部工具时,Model Context Protocol(MCP)已经是常见约定:一边是独立进程里的 MCP server,一边是宿主里的客户端。DSH 自带的桥接层是 @deepseek-ai/dsh-mcp-client:每个 server 写成一条 Cordis 插件条目,发现到的工具会以 mcp__服务器名__工具名 的形式注册到 ctx.tools。官方仓库的 examples/mcp-memory 也写得很清楚:DSH 只负责按 overlay 拉起 stdio 命令或连上 Streamable HTTP,不会替你下载 server、初始化数据库、选模型或管另一套 HTTP 服务。结果就是:真正费时间的往往不是「会不会接 MCP」,而是自己拼一份 YAML,再逐个确认哪些 server 今天还能连上。
社区目录 DeepSeek Harness 插件库 收录了由 Edge-Echo 维护的 dsh-mcp-bridge。它把一组精选 MCP server 收成可安装的 bundle:默认只开零配置演示,其余用注释预设,连通性用仓库脚本和 CI 检查。需要先分清来源:这个目录是独立站点,与 DeepSeek / 幻方没有官方从属关系,不是官方应用商店。安装命令以目录页原文为准;功能边界以仓库 README、cordis.patch.yml、servers/*.json 和官方 dsh-mcp-client 说明交叉核对。
这是什么¶
dsh-mcp-bridge 是一款面向 DeepSeek Harness 的 MCP 全家桶插件,由 Edge-Echo 维护,源码在 Edge-Echo/dsh-mcp-bridge,许可证为 MIT,主要语言是 JavaScript。npm 包名同样是 dsh-mcp-bridge,当前版本 0.1.3(2026-08-15 发布),依赖 @deepseek-ai/dsh-mcp-client ^0.1.0-rc.6,要求 Node.js >=22。目录页将它归在「记忆」分类——包内确实带有会话内知识图谱的 memory 预设——但插件本身不是单独的记忆引擎,而是一组可启用的 MCP server 定义。
截至 2026 年 8 月 18 日,目录详情页与 GitHub 仓库均显示 4 星。目录收录日期为 2026-08-15,仓库最近一次推送也在同一天。GitHub topic 标了 dsh-plugin、deepseek-harness 和 mcp。
它解决的问题可以收成一句:不要从空白 YAML 开始猜哪些 MCP server 能在 dsh 里跑起来。插件在 servers/ 里为每个精选 server 放一份机器可读定义,scripts/verify-servers.mjs 会逐个做连通性检查;GitHub Actions 工作流 verify.yml 在 main 的 push / pull request 上跑同一套脚本。桥接能力来自 DSH 内置客户端:stdio 与 streamable-http、自动重连、改 patch 后 HMR 热替换。
精选了哪些 MCP 服务器¶
仓库 README 与 cordis.patch.yml 一致:默认只启用 MCP 官方 everything 演示 server,其余条目写在注释里,按需取消注释。六个条目的职责如下。
1、everything(默认开启)
对应 @modelcontextprotocol/server-everything,零配置,本地 npx 拉起,不需要 API key。提供 echo、add、长任务、小图片等演示工具。README 表格写明 13 个工具;servers/everything.json 的验证笔记写:2026-08-15 在 Windows 上端到端跑通,模型调用 mcp__everything__echo,收到 Echo: hello。
2、memory(取消注释即用)
对应 @modelcontextprotocol/server-memory,会话内知识图谱,实体 / 关系 / 观察,不需要额外环境变量。README 写明 9 个工具;servers/memory.json 标注 verify.status 为 verified,日期同样是 2026-08-15。这是目录把它分到「记忆」的直接原因。它是参考实现级别的 MCP memory server,不是 graph-memory 那类单独的 DSH 记忆插件。
3、filesystem
对应 @modelcontextprotocol/server-filesystem,读写和搜索都限定在显式授权的根目录。最后一个参数必须改成真实存在的目录,占位路径 C:/path/to/allowed/root 不能直接用。servers/filesystem.json 把状态标成 needs-config;验证笔记写:给定真实目录时可列出工具(笔记里是 13 个)。README 表格写的是 14 个工具。两处数字不一致,启用前以本机 verify 实际列出的工具为准。
4、github
仓库 / issue / PR 操作,需要环境变量 GITHUB_TOKEN。cordis.patch.yml 和 servers/github.json 都提醒:GitHub 官方 server 已迁到 github-mcp-server,当前预设仍写 @modelcontextprotocol/server-github,启用前要确认生态里现在该用哪个包名。状态是 needs-config,没有写验证日期。
5、playwright
对应 @playwright/mcp,导航、点击、填表、截图一类浏览器自动化。首次运行会下载浏览器,比较重,CI 里跳过。可设 PLAYWRIGHT_BROWSERS_PATH,或接受第一次下载。
6、remote-http
模板条目,transport: streamable-http,用来接自建或托管的 HTTP MCP server。示例 URL 是 http://localhost:3000/mcp,可选 Bearer token。README 把它写成 DSH、Reasonix、CodeWhale 共用同一进程的入口:三者都是 agent harness,MCP 是共同语言。
工具呈现在模型侧的名字与 Claude Code / Codex 的服务器限定形式相同。例如演示 server 的 echo 是 mcp__everything__echo。官方 dsh-mcp-client 还说明:目前只桥接 Tools,Resources 和 Prompts 没有 harness 侧消费者。
安装与启用¶
前置条件:本机 PATH 上要有 dsh 和 pnpm。仓库 README 写明 dsh plugin 会把命令转发给 pnpm;没有 pnpm 时可先执行 npm i -g pnpm。package.json 要求 Node.js >=22。
社区目录页给出的安装命令如下,在 DeepSeek Harness 终端里运行即可:
dsh plugin add github:Edge-Echo/dsh-mcp-bridge
dsh CLI 会从 GitHub 解析插件并装进当前配置。如需可复现安装,按目录页说明固定 commit 哈希:
dsh plugin add github:Edge-Echo/dsh-mcp-bridge#<commit>
把上面的 <commit> 换成仓库里真实的提交哈希,不要留字面量。
仓库 README 另外给出了针对 web profile、并走 npm 包名的写法:
dsh plugin --profile web add dsh-mcp-bridge
# 本地 checkout:dsh plugin --profile web add ./dsh-mcp-bridge
dsh web # 重启 profile
两种入口不要混着用猜测出来的 owner/repo。目录页以 github:Edge-Echo/dsh-mcp-bridge 为准;README 以 npm 包名 dsh-mcp-bridge 为准。插件以当前 dsh 进程的权限运行,安装时可能执行代码。装之前打开仓库看源码和 MIT 许可证。
典型用法¶
装完并重启 profile 之后,默认只有 everything 在跑。第一次调用会通过 npx 下载对应 server 包,之后走缓存。README 给的自检方式是:让模型「调用 everything 服务器的 echo 工具,传 hello」,它应当使用 mcp__everything__echo。
若要启用会话内知识图谱,在当前 profile 的 cordis.patch.yml 里取消 mcp-memory 那一段注释。改 profile 的 patch 会走 HMR,文档写明无需重启进程。对应条目形如:
- id: mcp-memory
name: '@deepseek-ai/dsh-mcp-client'
config:
serverName: memory
transport: stdio
command: npx
args: ['-y', '@modelcontextprotocol/server-memory']
启用 filesystem 时,把最后一个参数改成真实根目录,不要照抄占位路径。启用 github 前先准备 GITHUB_TOKEN,并再核一次当前应该安装的包名。
自己加一个 stdio MCP server,推荐写到 profile 的用户 patch 层(同样走 HMR):
# $DSH_HOME/profiles/<name>/cordis.patch.yml
- id: mcp-myserver
name: '@deepseek-ai/dsh-mcp-client'
config:
serverName: myserver
transport: stdio
command: npx
args: ['-y', 'your-mcp-server']
env:
YOUR_TOKEN: !!js process.env.YOUR_TOKEN
serverName 在同一进程内必须唯一,允许字符是 [A-Za-z0-9_-],长度 1 到 32。远程 HTTP 则改 transport: streamable-http,填写 url 和可选的 headers。
想在本机复核精选目录,可以在仓库里执行:
npm install
npm run verify
# 等价于:node scripts/verify-servers.mjs
脚本会对每个 server 打印 PASS / SKIP / FAIL,任一失败则退出码非 0。单 server 超时可用 VERIFY_TIMEOUT_MS 调整;CI 里用的是 45000。只排一个 server 时:node scripts/probe-server.mjs npx -y your-mcp-server。
适用场景与注意事项¶
适合已经在用 dsh、希望少写一份 MCP YAML 的人:先确认演示通路,再按注释打开 memory、filesystem 或远程 HTTP。也适合要把同一套 HTTP MCP 同时给 DSH 和其他 harness 用的情况。不适合把本插件当成「官方 MCP 应用商店」,也不适合在没看源码的情况下,把 GitHub token、本机文件系统根目录或浏览器自动化一次性全部打开。
使用时注意下面几条,都来自目录页、仓库文档或官方客户端说明,不是使用建议清单之外的推断。
1、权限与信任。目录页写明:插件以当前 dsh 进程的权限运行,安装时可能执行代码。filesystem 能读写你授权的根目录;github 能碰仓库和 issue;playwright 能驱动本机浏览器。只对源码和许可证核过的仓库授权,需要可复现时锁定 commit。
2、默认失败不致命。failOnStartupError 默认是 false:某个 server 连不上只记日志、不注册工具,插件条目仍会激活。看起来「装上了」,模型侧却没有对应 mcp__… 工具时,先查 profile 日志。
3、验证覆盖面。CI 跑的是零配置那一档;github、playwright、remote-http 在 catalog 里是 needs-config 或明确排除。README 里的「已验证」指脚本对当前精选定义做过连通性检查,不是对你机器上每一项配置的保证。filesystem 的工具数量,README 与 servers/filesystem.json 也不完全一致。
4、官方客户端的能力边界。@deepseek-ai/dsh-mcp-client 只把 MCP Tools 注册进 ctx.tools。Resources、Prompts 目前没有 harness 侧消费者。stdio 子进程随插件生命周期拉起和退出;HTTP 服务必须事先已经在跑。
5、Windows。README 写:MCP SDK 用 cross-spawn,可以解析 .cmd shim,不需要单独的 npx.exe。若用 dsh --profile "任务" 做 headless 验证却挂起,文档要求 profile 的 dsh.profile.bundles 里有 @deepseek-ai/dsh-headless;直接 dsh plugin add @deepseek-ai/dsh-headless 会因其未发布依赖 404,需要手动加。缺它时插件树能激活,但没有 agent 消费任务。
小结¶
dsh-mcp-bridge 把 DSH 官方 MCP 客户端和一组精选 server 定义捆在一起:一条命令装上 bundle,默认只开 everything 做通路检查,memory、filesystem、GitHub、Playwright 和远程 HTTP 按注释启用。连通性检查有仓库脚本和 CI,但「能连上」不等于「你的 token、根目录和浏览器下载都已经配好」。
目录页:https://deepseek-harness-plugin.com/zh-CN/plugins/dsh-mcp-bridge/
GitHub:https://github.com/Edge-Echo/dsh-mcp-bridge