dsh-mcp-hub:DSH 下的 MCP 一鍵部署與工具中樞

前言

在 DeepSeek Harness(DSH)裏接 MCP(Model Context Protocol)服務器,常見做法是改靜態 mcp.json 或手寫客戶端配置,改完往往還要重啓進程。Windows 開發機上還有一層摩擦:npx 實際是 npx.cmd,Node 的 spawn 在沒處理好 PATHEXT 時容易直接 ENOENT;DSH 在 Windows 上原生命令執行工具是 pwsh 而不是 bash,再裝一個「通用 shell MCP」容易和內置能力重複;依賴缺失時日誌往往只有堆棧,缺少可執行的修復命令。

下面介紹社區插件 dsh-mcp-hub(維護者 JD579g),分類爲工作流。它在 DSH 設置頁提供 MCP 的一鍵安裝、在線搜索、環境診斷和權限分級,連接已運行的 Harness 時無需再重啓;工程上偏 Windows 優先,在 macOS / Linux 上也可安裝使用。

這是什麼

dsh-mcp-hub 是 DSH 插件:在 Settings → MCP Tools 裏搜索 MCP 服務器、點安裝,即可在當前 Harness 中註冊連接,不必手改配置文件、不必爲 npx.cmd 單獨折騰。同一能力也通過斜槓命令和麪向模型的工具暴露。

與「只維護一份 mcp.json」相比,README 中的功能矩陣概括了差異:一鍵添加、連接時不強制重啓、按需搜索官方 MCP Registry / npm / GitHub、與 DSH 原生工具去重並說明原因、每臺服務器四級權限、7 個零依賴內置 MCP 服務(61 個工具)、以及 /mcp doctor 與設置頁裏的環境診斷。

核心功能

設置頁「MCP Tools」

設置頁集中提供:狀態欄、環境 Doctor、一鍵預設、按需搜索(官方 MCP Registry / npm / GitHub)、已安裝服務器列表及每臺服務器的權限下拉、當前平臺的 DSH 原生工具列表、自定義 MCP 表單、內置終端與實時 host 日誌。

斜槓命令

README 中列出的命令如下,與設置頁能力對應:

/mcp doctor                 # 診斷環境
/mcp list                   # 已安裝服務器及運行狀態
/mcp search sqlite          # 搜索註冊表(不全量預拉取)
/mcp add mcp-sqlite         # 安裝
/mcp permission kb ask      # 權限:永久 / 本會話 / 每次詢問 / 禁用
/mcp reload                 # 全量重新同步

內置零依賴 MCP 服務

插件自帶 7 個可在任意 MCP Host 下以 stdio 方式運行的服務器,共 61 個工具:files、exec、net、kb(長期記憶)、util、hub(控制面)、device(僅 Android/DSHA 有意義;桌面端不提供)。

權限與去重

每臺外部 MCP 服務器可選四級權限:always(永久)、this session(本會話詢問一次)、ask every time(每次詢問)、disabled(禁用)。「詢問」走 DSH 的審批通道;無審批 UI 時 fail closed,不會靜默放行。

目錄與搜索結果會並列展示 DSH 原生能力,並提示候選服務器是否與已有工具重複,避免再裝第二個 shell 等冗餘服務。

Windows 優先的工程細節

平臺相關邏輯集中在 lib/platform.js,以可注入的平臺參數寫成純函數,便於在 Linux CI 上測 Windows 分支、在 Windows runner 上真實執行。要點包括:PATHEXT 感知的可執行文件解析(解決 spawn npx 找不到 npx.cmd)、默認文件根目錄(用戶主目錄與 %TEMP%)、路徑策略與危險命令列表、終端回退鏈 pwsh.exe → powershell.exe → cmd.exe 等。詳見倉庫 README 的「Windows-first engineering」表格。

安裝與啓用

需要 Node.js >= 20。運行時零第三方依賴(MCP SDK 由 DSH 提供)。

方式一:DSH 插件通道(與手動安裝同一產物)

安裝後需 重啓 DSH 一次,再打開 Settings → MCP Tools → Doctor:

dsh plugin --profile web add dsh-mcp-hub

方式二:從克隆目錄或解壓後的 release 包安裝

Windows(PowerShell):

.\install.ps1 -Verify

macOS / Linux:

./install.sh

同樣在安裝完成後重啓 DSH 一次,並在 Settings → MCP Tools → Doctor 檢查環境。README 說明執行策略與 pnpm 回退等細節見倉庫文檔。

當前 package.json 版本爲 1.2.0,許可證 MIT。Roadmap 註明尚未發佈到 npm,因此 dsh plugin add dsh-mcp-hub(無 clone)仍屬規劃項;以倉庫說明爲準。

典型用法

  1. 完成安裝並重啓 DSH,在 Settings → MCP Tools → Doctor 查看缺失項;Doctor 會給出具體修復命令(例如 winget install OpenJS.NodeJS.LTS、winget install astral-sh.uv 等),而不是隻拋堆棧。
  2. 在設置頁或命令行搜索需要的 MCP,例如 /mcp search sqlite,確認與 DSH 原生工具無重複後 /mcp add … 或點一鍵安裝。
  3. 對敏感服務器設置權限,例如 /mcp permission kb ask,按會話或每次調用走審批。
  4. 需要全量同步配置時使用 /mcp reload;已安裝服務器 不會自動更新,要新版本需重新安裝。

Python 類 MCP 依賴 uvx;插件會提示 winget 安裝命令,但不會代你安裝。

適用場景與注意

適合誰: 主要在 Windows 上使用 DSH、希望少改配置、快速試 Registry / npm / GitHub 上的 MCP,並需要內置文件/執行/網絡/記憶等零依賴工具包的開發者。

誠實邊界(README「Honest status」):

  • CI 在 windows-latest、ubuntu-latest、macos-latest(Node 20/22)驗證;Windows 上會真實跑安裝/卸載腳本,GUI 僅有 browser-half 冒煙,首跑 UI polish 可能仍偏新。
  • 註冊表搜索依賴第三方 API,限速與故障會暴露給用戶。
  • 無頭會話下「ask」權限無法彈窗,會拒絕而非默認允許。
  • 插件 未 發佈到 npm(見 Roadmap)。

安全與信任: 插件以 當前 DSH 進程權限 運行,內置 exec、路徑策略與危險命令攔截仍不能替代你對第三方 MCP 服務器源碼與許可證的審查。安裝前請閱讀 GitHub 倉庫 與 MIT 許可證;問題反饋可使用倉庫提供的 bug 模板(版本、OS、Node、doctor 報告、hub.log 相關行)。

社區目錄 SkillHub 插件頁 與 GitHub 爲獨立信息源,與 DeepSeek / 幻方無官方從屬關係;DSH 生態理念是「一切皆插件」,本文僅作技術介紹。

結尾

dsh-mcp-hub 把 MCP 的 discovery、安裝、權限、診斷和一組零依賴內置服務收進 DSH 設置頁與 /mcp 命令,並針對 Windows 上 spawn、路徑與終端差異做了可測試的平臺層。若你已在用 DSH 且頻繁增減 MCP,可先走官方插件通道安裝,用 Doctor 補齊 Node / uvx 等依賴,再按需搜索安裝外部服務器。

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

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

小夜