前言¶
在 DSH 的插件化思路里,外部工具可以按插件方式接入,而不需要每個工具單獨維護一套調用代碼。對於需要調用文件系統、GitHub、搜索、數據庫等 MCP 服務的場景,dsh-mcp-bridge 提供了一個橋接插件:它連接 stdio 或 HTTP/SSE MCP 服務器,並把服務器聲明的工具自動註冊爲 DSH agent 可調用工具。
這是什麼¶
Chhlafiu4312/dsh-mcp-bridge 是面向 DeepSeek Harness(DSH)的 MCP 客戶端橋接插件,許可證爲 MIT。它零依賴、不使用 SDK,本地 MCP 服務器通過 stdio 上的原始 JSON-RPC 2.0 通信;遠程 HTTP/SSE MCP 服務器通過 url 配置,並經 mcp-remote 橋接。
核心能力¶
- 支持本地 stdio MCP 服務器,通過
command和args啓動。 - 支持遠程 HTTP/SSE MCP 服務器,通過
url配置,並經mcp-remote橋接。 - 連接成功後,自動把服務器工具註冊爲
mcp_<server>_<tool>形式。 - 對聲明 resources 和 prompts 能力的服務器,可自動註冊相應資源與提示詞工具。
- 服務器異常退出時,最多重試 3 次,回退間隔爲 2s / 5s / 10s。
- 插件停止或更新時,會終止由它啓動的子進程。
- 支持按服務器配置
allowTools、denyTools和timeoutMs。
安裝與啓用¶
推薦使用 dsh plugin 安裝:
dsh plugin --profile web add "github:Chhlafiu4312/dsh-mcp-bridge#main"
安裝後重啓 dsh web,再通過 DSH_MCP_SERVERS 配置服務器。對於 dsh plugin / preset 安裝方式,配置在插件啓動時讀取,修改配置後需要重啓 DSH。
配置示例¶
DSH_MCP_SERVERS 中的服務器條目可以是本地 stdio 形式:
{
"id": "filesystem",
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-filesystem", "~/projects"]
}
這裏的 id 會成爲工具名前綴,例如文件目錄工具會註冊成 mcp_filesystem_list_directory。
遠程服務器可以配置 url:
{
"id": "my-server",
"url": "https://x.example/mcp"
}
如果只想開放部分工具,可以使用 allowTools / denyTools 過濾;如果某項配置暫時不想啓用,可以設置 disabled: true。該條配置會保留在列表中,但不會連接或校驗。
典型用法¶
以文件系統 MCP 服務器爲例,配置 DSH_MCP_SERVERS 後,agent 可以看到類似這樣的工具:
mcp_filesystem_list_directory
如果連接了 GitHub MCP 服務器,也可能出現類似工具:
mcp_github_create_issue
可以使用 mcp_status 查看當前連接狀態。
如果要把它作爲長期 agent preset,可以創建 preset 目錄並放入插件文件:
mkdir -p ~/.dsh/.agent-presets/mcp-agent
cp plugin.js ~/.dsh/.agent-presets/mcp-agent/
cp agent.cordis.yml.example ~/.dsh/.agent-presets/mcp-agent/agent.cordis.yml
cp preset.yml.example ~/.dsh/.agent-presets/mcp-agent/preset.yml
然後在 mcp-agent preset 中啓動會話。
適用場景與注意¶
適合需要讓 DSH agent 調用外部 MCP 工具,並且希望以插件方式管理這些工具的場景。需要注意:
- MCP 服務器會以你的權限運行,只連接你信任的服務器。
- 文件系統服務器應限定目錄,只給 agent 可能需要訪問的路徑。
- API token 通常通過
env字段傳入;生產環境建議優先使用 secret manager 或環境變量。 - 對於不支持的 JSON-Schema 關鍵字,插件會降級爲開放輸入,MCP 服務器仍是工具行爲與數據的權威來源。
package.json中聲明瞭peerDependencies:
"@deepseek-ai/dsh": "*"
安裝前建議檢查源碼、許可證,並確認目標 DSH 環境匹配。
結尾¶
dsh-mcp-bridge 的價值在於把 MCP 服務器接入 DSH 的流程簡化爲:安裝插件、配置服務器、自動獲得工具。它保持零依賴、不使用 SDK,並保留了較明確的生命週期邊界。
GitHub 倉庫:https://github.com/Chhlafiu4312/dsh-mcp-bridge