dsh-cordis-universal-adapter:DeepSeek Harness 的雙向 MCP 橋接適配器

在 DeepSeek Harness(DSH)的開發中,Host 組合層往往需要連接外部工具(如 MCP 服務器)或加載 Agent 插件包,同時也可能需要將 DSH 自身的能力反向暴露給 MCP 客戶端。dsh-cordis-universal-adapter 提供了一個 Host 組合層的連接器,實現了這兩端的互通。

核心功能

該插件主要解決 DSH 與外部 MCP 生態之間的雙向數據流轉問題:

  1. 消費外部資源:支持加載外部 MCP 服務器(stdio / Streamable HTTP)和 Agent Plugins 1.0 包。它會在 DSH 的上下文中將外部工具註冊爲原生工具(命名格式 mcp:<serverId>:<toolName>)。
  2. 反向暴露工具:通過 export 配置,將 DSH 中已註冊的工具反向導出爲標準 MCP 服務器,供其他 MCP 客戶端調用(命名格式 dsh:<toolName>)。
  3. 雙向通信:支持 Inbound(正向接入)和 Outbound(反向導出)兩種模式。
  4. 連接管理:使用狀態機管理連接狀態,支持 start、stop、update 等生命週期操作,並支持語義路由選擇工具。

安裝與啓用

使用 DSH 的插件管理命令安裝:

dsh plugin --profile web add github:helibeiqi/dsh-cordis-universal-adapter

安裝後,插件會根據配置文件(通常爲 cordis.patch.yml)自動加載定義的服務器或導出配置。

典型用法

1. 加載外部 MCP 服務器

在 cordis.patch.yml 中配置需要連接的外部 MCP 服務器。例如,加載社區提供的 filesystem MCP 服務器:

# cordis.patch.yml
plugins:
  dsh-cordis-universal-adapter:
    servers:
      - id: filesystem
        transport: stdio
        command: npx
        args: ["-y", "@modelcontextprotocol/server-filesystem", "/tmp"]

配置後,DSH 中將出現 mcp:filesystem:read_directory 等工具,Agent 可直接調用。

2. 反向導出 DSH 工具

將 DSH 原生工具暴露爲 MCP 服務器,供 Claude Desktop 或其他 MCP 客戶端使用:

plugins:
  dsh-cordis-universal-adapter:
    export:
      enabled: true
      transport: stdio
      namespace: dsh

啓用後,DSH 進程會提供一個 stdio 端點,外部工具可以通過 npx @modelcontextprotocol/inspector 連接並調用 DSH 工具。

依賴與限制

環境依賴

  • Node.js:需要版本 >= 22.19。
  • DSH 依賴:
    • @deepseek-ai/cordis >= 0.1.0
    • @deepseek-ai/dsh-tools >= 0.1.0

功能限制

  • 不實現沙箱:外部 MCP 服務器的隔離依賴其宿主進程邊界(如 stdio 子進程或遠程 HTTP 服務),插件本身不提供沙箱機制。
  • 返回值要求:反向導出的工具返回值必須是 JSON 可序列化值,不支持二進制或流式輸出。
  • HTTP 認證:Streamable HTTP 認證僅支持靜態頭配置。
  • API 穩定性:相關依賴(如 @deepseek-ai/dsh-tools)處於 Developer Preview 階段,接口可能發生破壞性變更。

適用場景與注意

該插件適合需要在 DSH Host 層集成外部工具生態,或需要將 DSH 能力集成到其他 MCP 客戶端的場景。

在使用前,請確認以下幾點:
1. 檢查目標外部 MCP 服務器的安全性,因爲它將直接在 DSH 進程權限下運行。
2. 注意 API 的版本鎖定,避免因依賴升級導致的不兼容。
3. 啓用語義路由(router.enabled)會增加 LLM 調用開銷。

結尾

dsh-cordis-universal-adapter 是一個連接 DSH 與 MCP 生態的橋樑。它通過 Host 組合層的架構,使得開發者既能方便地調用外部工具,又能將 DSH 的能力反哺給其他客戶端。

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜