dsh-mcp-oauth-client:DeepSeek Harness 通用 MCP 管理與客戶端橋接插件

前言

DeepSeek Harness (DSH) 的核心設計理念是「一切皆插件」。在使用 DSH 構建工作流或智能體時,通常需要連接多個 Model Context Protocol (MCP) 服務。這些服務形態各異,有的提供 HTTP 接口,有的依賴本地進程;有的需要認證,有的則無需認證。在 DSH 原生配置中管理這些服務往往需要手動編輯 YAML 文件,配置複雜且容易出錯。

dsh-mcp-oauth-client 是爲此設計的通用管理插件。它提供了一個可視化的管理界面,並作爲客戶端橋接,支持通過配置文件或界面添加、管理和連接各類 MCP 服務。

插件概覽

  • 插件名稱:dsh-mcp-oauth-client
  • 維護者:fangzaozao
  • 開源協議:MIT
  • 定位:面向 DeepSeek Harness 的通用 MCP 管理與客戶端橋接插件
  • 說明:雖然包名保留了 oauth 歷史名稱,但它不僅支持帶認證的服務,也支持無認證的 MCP 服務。

核心功能

該插件提供以下能力:

  • 可視化管理:在 DSH 的「設置 → MCP」界面中統一管理所有服務。
  • HTTP 流式支持:支持可流式 HTTP 協議,包含以下認證方式:
    • 無認證
    • OAuth 2.1 + PKCE
    • Bearer 令牌
    • 自定義請求頭
  • 本地進程支持:支持標準輸入輸出(stdio)協議,可配置啓動命令、參數、環境變量和工作目錄。
  • 服務控制:支持添加、刪除、啓用、停用、重新連接服務,以及查看當前工具數量。
  • OAuth 自動化:支持自動打開瀏覽器進行授權,通過本機回調地址完成認證,並使用官方 MCP SDK 處理令牌刷新。

安裝與啓用

該插件通過 npm 包管理。安裝時需要指定 Web profile。

1. 通過 npm 安裝

dsh plugin --profile web add dsh-mcp-oauth-client

2. 通過本地 tarball 安裝

如果插件已打包,可以直接安裝:

pnpm pack
dsh plugin --profile web add ./dsh-mcp-oauth-client-0.3.0.tgz

3. 通過 Git 安裝

從 Git 安裝時,插件會執行 prepare 腳本進行構建。如果使用 pnpm 10 及以上版本,需要在 DSH profile 的 pnpm-workspace.yaml 中明確允許該構建腳本:

allowBuilds:
  dsh-mcp-oauth-client: true

然後使用固定的 commit SHA 進行安裝,以確保構建結果穩定:

dsh plugin --profile web add github:fangzaozao/dsh-mcp-oauth-client#COMMIT_SHA

使用方法

安裝完成後,啓動 Web profile,進入「設置 → MCP」頁面,點擊「添加服務器」開始配置。

HTTP 服務配置

對於 HTTP 類型的 MCP 服務,界面提供了四種認證方式供選擇:

  1. 無認證:適用於公開訪問或由網絡層(如防火牆)保護的端點。
  2. OAuth 2.1 / PKCE:支持動態註冊,也支持手動填寫客戶端 ID 和客戶端密鑰。
  3. Bearer 令牌:直接輸入令牌,插件會自動在請求頭中添加 Authorization: Bearer <token>。
  4. 自定義請求頭:適用於 API Key 或特定服務商的請求頭格式。

stdio 服務配置

對於本地標準輸入輸出(stdio)類型的 MCP 服務,需要填寫可執行命令。

  • 命令:填寫啓動該 MCP 服務的可執行文件或腳本路徑。
  • 參數:命令參數每行填寫一個。
  • 環境變量:使用 名稱=值 的格式填寫。
  • 工作目錄:可選配置。

管理器模式

該插件包只安裝管理器,不內置默認的 MCP 地址、憑據或本地命令。需要通過界面添加的具體服務條目,其配置會寫入當前 profile 的 cordis.patch.yml 文件中。只有管理器條目本身需要設置 manager: true;如果該服務是由組合包提供的,且組合包已包含管理器,則無需重複設置。

注意事項

  1. 安全存儲:在界面中填寫的憑據會以明文形式寫入 cordis.patch.yml。請勿將該配置文件提交到 Git 倉庫。
  2. 令牌持久化:OAuth 的訪問令牌和刷新令牌僅保存在插件進程的內存中。如果插件重啓,令牌將失效,需要重新授權。
  3. 系統要求:運行該插件需要 Node.js 20 或更高版本。
  4. DSH 版本兼容性:需要支持組合包和 Web 客戶端擴展的 DSH 版本。
  5. 預覽狀態:本插件面向 DeepSeek Harness 開發者預覽版。DSH 仍在快速迭代,後續版本可能包含破壞性變更。

總結

dsh-mcp-oauth-client 解決了 DSH 環境下管理異構 MCP 服務(特別是涉及認證和本地進程)的配置痛點。通過可視化的操作和標準化的配置輸出,它降低了連接外部工具的門檻。對於需要深度集成 MCP 生態的 DSH 用戶,這是一個值得安裝的基礎設施插件。

更多細節和源碼,請訪問 GitHub 倉庫。

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

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

小夜