Back to home@Heath96

dsh-heath-mcp

MCP server bridge for DeepSeek Harness: stdio / streamable-http / legacy-SSE transports, web settings UI (form + JSON), tools as mcp__<server>__<tool>. Burp Suite ready out of the box.

Stars
1
Language
JavaScript
Created
Aug 17, 2026
Updated
Aug 17, 2026
GitHub repo

Introduction

dsh-heath-mcp

DeepSeek Harness (dsh) 的 MCP 服务桥接插件 —— 一个插件连遍所有主流 MCP 服务器,Web 端可视化配置,重启零操作自动恢复。

✨ 核心优点

能力说明
🔌 三种传输协议全支持stdio(本地进程)· streamable-http(远程端点)· 旧版 sse 事件流 —— 兼容性拉满,别人连不上的旧式 SSE 端点(如 Burp Suite)我们直接连
🎯 Burp Suite 开箱即用原生支持 Burp 的 SSE 端点(http://127.0.0.1:9876),无需 mcp-proxy 等任何中间代理;也兼容代理方式(见下文专题)
🧰 模型直接调用 MCP 工具每个服务器的工具注册为 mcp__<服务名>__<工具名>,GitHub / Burp 的工具模型立即可用
🖥️ Web 可视化配置设置 → MCP 服务:表单新增(自动写 JSON)或 粘贴 JSON 两种方式;实时状态表格、每行「测试连接 / 重连」——改配置无需重启
♻️ 持久挂载,重启零操作挂载在 profile 组合中,每次 dsh web 启动自动加载配置并重连(指数退避),彻底告别"重启后手动恢复"
📦 零构建、纯 ESM无编译步骤,clone 即装;MIT 协议

安装(clone → 装包 → 加行 → 重启)

# 公开仓库,直接安装:
dsh plugin --profile web add github:Heath96/dsh-heath-mcp

# 或 clone 后本地安装:
git clone https://github.com/Heath96/dsh-heath-mcp
dsh plugin --profile web add ./dsh-heath-mcp
# 等价于:pnpm --dir $DSH_HOME/profiles/web add --offline ./dsh-heath-mcp

然后往 profile 补丁加一行($DSH_HOME/profiles/<name>/cordis.patch.yml):

- insert:
    - id: mcp-bridge
      name: 'dsh-heath-mcp'
      config: {}

重启 dsh web。插件自动读取 $DSH_HOME/.dsh/mcp-servers.json(不存在则自动创建;建议直接在 Web 端配置)。

🎯 Burp Suite 连接专题

方式一(推荐,免代理,插件原生支持)

{
  "servers": {
    "burpsuite": {
      "transport": "sse",
      "url": "http://127.0.0.1:9876",
      "enabled": true
    }
  }
}

Web 端操作:设置 → MCP 服务 → 「+ 新增服务」→ 传输类型选 sse → URL 填 http://127.0.0.1:9876 → 保存。Burp 在线即连上,27 个工具(HTTP1/2 请求、Repeater、Intruder、Scanner、Collaborator 等)立即可被模型调用。

方式二(mcp-proxy 代理,可选)

如果你出于鉴权需要坚持用 mcp-proxy.jar(它会将 Burp SSE 包装为带鉴权的 HTTP 端点),先保持代理常驻运行:

java -jar <你的 mcp-proxy.jar 路径> --sse-url http://127.0.0.1:9876

然后把插件的配置指向代理的 HTTP 端点(transport: "streamable-http")。注意:插件直连方式一不受任何代理稳定性影响。

配置速查(JSON / 表单通用)

字段适用传输说明
transport全部stdio | streamable-http | sse
command / args / env / cwdstdio子进程规格(cross-spawn 自动处理 .cmd
url / headershttp, sse端点 + 认证头
enabled全部默认 true
toolCallTimeoutMs全部单次调用超时,默认 60000
reconnect.*全部enabled / initialDelayMs / maxDelayMs / maxAttempts 指数退避,默认开启

完整示例:

{
  "servers": {
    "github": {
      "transport": "stdio",
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-github"],
      "env": { "GITHUB_TOKEN": "ghp_xxx" },
      "enabled": true
    },
    "burpsuite": {
      "transport": "sse",
      "url": "http://127.0.0.1:9876",
      "enabled": true
    },
    "remote": {
      "transport": "streamable-http",
      "url": "https://example.com/mcp",
      "headers": { "Authorization": "Bearer xxx" },
      "enabled": false
    }
  }
}

连通性验证

cd dsh-heath-mcp
npm install          # 引入 @modelcontextprotocol/sdk
node scripts/verify-servers.mjs [路径/mcp-servers.json]

逐服务输出 PASS / SKIP / FAIL,任一失败即非零退出。

常见问题

  • npx on Windows:SDK 用 cross-spawn,.cmd shim 自动解析。
  • 服务连不上但插件正常:连接失败不致命(默认继续后台重试),看状态表的"最近错误"列定位原因。
  • Burp 连不上:先确认 Burp 本体在运行且 MCP 监听 9876;重启 Burp 后点该行「重连」。
  • "Failed to load plugins":多为 client 模块 inject 未填服务名所致——本仓库已修复为 ['slots'],勿改回包名。

License

MIT — see LICENSE.