← 返回列表
未验证
把 DeepSeek Harness 的工具能力暴露为标准 MCP Server —— 让 Claude…
尚未跑自动兼容性验证,可查看页面内的依赖与入口分析。 · 最近上游提交 2026/8/28 · 已提供中文文档
将 DeepSeek Harness 工具暴露为标准 MCP 服务器(可流式 HTTP)——从 Claude Code、Codex 或任何 MCP 客户端驱动 dsh
综合分
28.5
GitHub 分
28.5
用户评分
—
★ Stars
1
周下载量
—
兼容 / 相关生态插件(非 dsh 原生,请按其对应运行时安装)
git clone https://github.com/liiiubai/dsh-mcp-bridge.git数据截至 2026/9/19(元数据每日更新 · 实装验证按队列轮转,单条结论的验证时间见上方)
用户评分
还没有人投票,来当第一个
订阅周报,不错过优质插件更新
每周一封 · 高评分插件 + 新用户活动
README
dsh-mcp-bridge 把 DeepSeek Harness 的工具能力暴露为标准 MCP Server —— 让 Claude Code、Codex、OpenClaw 等任意 MCP 客户端来驱动 dsh。 dsh-mcp-bridge 把正在运行的 DeepSeek Harness 变成 Model Context Protocol 服务器(streamable HTTP)。任何 MCP 客户端都能通过安全白名单发现并调用 DSH 的真实工具(文件读取、glob、grep、联网搜索等)——而每一次调用仍然走 DSH 自己的沙箱与审批管线。 零依赖、零构建、装完即用。 为什么需要它 | | 官方 dsh-mcp-client | dsh-mcp-bridge(本项目) | |---|---|---| | 方向 | DSH → 外部 MCP Server(把工具接进来) | 外部 MCP 客户端 → DSH(把能力放出去) | | 传输 | stdio / streamable-http 客户端 | streamable HTTP 服务端,挂在 /mcp | | 客户端 UI | 无(纯 YAML 配置) | —(规划中:可视化管理面板) | 官方 client 回答的是"dsh 里怎么用 MCP 服务器";本项目回答反向问题:"别的 agent 怎么把 dsh 当工具供应商用"。 快速开始 1. 安装 bundle 本地 checkout dsh plugin --profile add ./mcp-bridge 从 GitHub 安装(纯 JS,零构建) dsh plugin --profile add github:you/dsh-mcp-bridge 2. 配置(可选) bundle 自带的 cordis.patch.yml 已经把服务器挂到 /mcp,并使用安全的默认白名单。可以在 profile 的 cordis.patch.yml 里调整: - id: mcp-bridge config: path: /mcp # 端点路径 allowlist: # 暴露给 MCP 客户端的 DSH 工具 - read - glob - grep - web_search 3. 连接任意 MCP 客户端 Claude Code claude mcp add --transport http dsh http://127.0.0.1:3080/mcp 任意 MCP 客户端 / SDK URL: http://127.0.0.1:3080/mcp 工具以 dsh_ 出现(如 dsh_read、dsh_glob、dsh_grep、dsh_web_search)。 安全模型 - 默认白名单只暴露只读、低风险工具(read、glob、grep、web_search)。 - 硬性黑名单(pwsh、write、edit、子代理编排、cordis 控制类等)永远无法暴露——即使被误配进白名单也会被拒绝。 - 每次调用仍然经过 DSH 自己的沙箱 + 审批管线。 - 只应在回环地址(127.0.0.1)上提供服务;除非网络环境可信,不要绑定 0.0.0.0。 双向使用:也把工具接进来 dsh-mcp-bridge 覆盖输出方向(DSH → MCP 客户端)。输入方向(把第三方 MCP Server 挂进 DSH)用官方 @deepseek-ai/dsh-mcp-client,每个服务器一行配置: - id: mcp-github name: '@deepseek-ai/dsh-mcp-client' config: serverName: github transport: stdio command: npx args: ['-y', '@modelcontextprotocol/server-github'] 之后模型会看到 mcp__github__ 工具,与本桥接器暴露的 dsh_ 工具并存。二者组合让 DSH 成为 MCP 生态的完整公民: Claude Code ──HTTP──▶ dsh-mcp-bridge ──▶ DSH 工具(read/glob/grep/web_search) DSH 模型 ──stdio─▶ dsh-mcp-client ──▶ 任意 MCP Server(GitHub/filesystem/…) 完整示例:examples/bidirectional.cordis.patch.yml · Claude Code 快速连接:examples/claude-code-connect.md 工作原理 MCP 客户端 ──streamable HTTP──▶ /mcp(webServer 路由) │ JSON-RPC 2.0(initialize / tools/list / tools/call) ▼ dsh-mcp-bridge 协议层(零依赖纯 JS) │ 白名单 + 黑名单 ▼ agent scope 视图的 ctx.tools(真实沙箱内执行) 桥接器通过 ctx.tools 的 agent scope 视图枚举工具(在 dsh 中 agent 对象本身就是 scope key),因此暴露的工具集与你 agent 实际拥有的完全一致——没有硬编码 schema。 开发 npm test # node:test,零依赖(38 个用例) npm run demo # 对本机运行中的 DSH 现场演示(http://127.0.0.1:3080/mcp) npm run demo:mock # e2e:仓库代码 + 官方 MCP SDK 客户端(无需 DSH) 目录结构: - src/protocol.js — JSON-RPC 2.0 消息处理(纯函数、可测试) - src/catalog.js — 白名单/黑名单工具投影 - src/transport.js — streamable HTTP 处理器(POST JSON、GET SSE) - src/dsh.js — agent scope 工具访问与结果映射 - src/index.js — Cordis 插件入口(apply(ctx, config)) 路线图 - [x] DSH 工具集变化时发送 notifications/tools/list_changed(SSE 广播) - [x] 客户端可视化管理面板(服务器状态、工具树、连通性自测)——见 src/client.js - [x] MCP 2026-07-28 无状态模式:无握手、server/discover、请求 _meta 版本协商、subscriptions/listen 通知流 - [ ] 可配置 serverInfo、分页支持 - [ ] 可选暴露 Resources / Prompts 协议兼容性 | 客户端协议 | 行为 | |---|---| | 2025-06-18 | initialize 握手 + GET SSE 通知(官方 MCP SDK 实测通过) | | 2026-07-28 | 无状态:无握手、请求 _meta 携带版本、server/discover、POST subscriptions/listen 流 | License MIT
扫码进群