dsh-dr-panda-mcp:把已運行的 DrPanda MCP 接到 DeepSeek Harness

前言

在 DeepSeek Harness(DSH)裏做生產排障時,智能體往往需要讀 MySQL、搜 CLS、查隊列積壓、看各環境探測結果,但這些能力通常散落在各自的後臺與 CLI。若每次都在 Harness 裏手寫 HTTP 或腳本,維護和權限邊界都會變重。

DrPanda MCP 是一套只讀的生產問題排查服務(Web 控制台 + /mcp 端點)。本文介紹的 dsh-dr-panda-mcp 是 DSH 的 carrier 插件:它不內嵌 DrPanda,而是用 Harness 自帶的 @deepseek-ai/dsh-mcp-client,通過 Streamable HTTP 連接你已經部署好的 DrPanda /mcp,把遠端工具以 mcp__drpanda__* 的形式掛載進當前智能體。

這是什麼

一句話:在 DSH Web 側一鍵安裝橋接配置,用環境變量指向 DrPanda 的 MCP URL 與 Bearer Token,即可讓智能體調用 DrPanda 已註冊目標上的只讀工具。

架構關係

DeepSeek Harness
  └─ dsh-dr-panda-mcp(本插件)
       ├─ drpanda_mcp_doctor          (本機診斷工具)
       └─ @deepseek-ai/dsh-mcp-client
            transport: streamable-http
            url:       $DR_PANDA_MCP_URL
            headers:   Authorization: Bearer $DR_PANDA_MCP_TOKEN
                 └─ dr-panda-mcp(需你單獨部署的 Python 服務)

與 dr-panda-mcp 的分工如下:

倉庫 角色
linyu19872008/dr-panda-mcp Python MCP + Web 控制台(PyPI:dr-panda-mcp)
linyu19872008/dsh-dr-panda-mcp DSH 一鍵安裝 + 橋接配置 + doctor

安裝本插件 不會 自動部署 DrPanda。應先部署服務、在控制台註冊目標,再連接 Harness。

核心功能

橋接成功後,智能體可見的工具命名空間爲 mcp__drpanda__*(默認 server 名爲 drpanda,可由 DR_PANDA_MCP_SERVER 調整)。README 中列出的示例如下:

工具(示例) 用途
mcp__drpanda__systems_status 列出環境/目標及近期探測結果
mcp__drpanda__mysql_query / mysql_explain 只讀 MySQL
mcp__drpanda__cls_search / cls_context CLS 日誌檢索
mcp__drpanda__gitlab_search_code 代碼搜索
mcp__drpanda__kafka_lag / rabbit_queues 隊列積壓
mcp__drpanda__mongo_* / es_* / redis_* / nacos_* / jenkins_* 等 其他已註冊目標

此外提供本機工具 drpanda_mcp_doctor:當橋接工具未出現或調用返回 401 時,可先讓智能體執行該工具做連通性與鑑權排查。

前置條件

  1. 已安裝 DeepSeek Harness,且內置 @deepseek-ai/dsh-mcp-client(Desktop 或 dsh web)。
  2. 已有運行中的 dr-panda-mcp 實例(Web 控制台 + /mcp)。
  3. 在 DrPanda 控制台 My account 中取得 MCP Bearer Token(/mcp 不接受 Web 會話 Cookie)。

安裝與啓用

下面介紹官方 README 中的安裝步驟。

安裝插件

dsh plugin --profile web add github:linyu19872008/dsh-dr-panda-mcp

若使用本地目錄(已 checkout 的副本):

dsh plugin --profile web add ./dsh-dr-panda-mcp

配置憑證並重啓

爲 DSH 進程 導出環境變量後重啓 Web:

export DR_PANDA_MCP_URL=http://127.0.0.1:8111/mcp
export DR_PANDA_MCP_TOKEN='<token from DrPanda My account>'
# optional:
# export DR_PANDA_MCP_SERVER=drpanda

dsh web

校驗配置

dsh --profile web --dump-config | grep -A20 drpanda-mcp

環境變量說明

變量 默認值 含義
DR_PANDA_MCP_URL http://127.0.0.1:8111/mcp Streamable HTTP MCP 端點
DR_PANDA_MCP_TOKEN (空) Bearer Token,真實調用必填
DR_PANDA_MCP_SERVER drpanda 工具命名空間(mcp__<name>__*)

若不想用環境變量,可在 profile patch 中覆蓋橋接行(示例見 README);不要把有效 Token 提交進 cordis.patch.yml。

典型用法

經過上面的步驟並重啓 dsh web 後,可按 README 建議驗證:

  1. 讓智能體調用 drpanda_mcp_doctor,確認橋接與鑑權。
  2. 再調用 mcp__drpanda__systems_status,查看環境與探測概況。
  3. 按排障需要調用對應的 mcp__drpanda__* 工具(如只讀 SQL、CLS 搜索、隊列 lag 等)。

具體能調用哪些工具,取決於你在 DrPanda 控制台中爲該實例註冊的目標類型。

適用場景與注意

適合誰

  • 已在團隊內部署 DrPanda,希望在 DSH Web 智能體裏統一使用同一套只讀排障 MCP 工具的研發、SRE 或值班同學。
  • 希望用 Harness 生態「插件 + 內置 MCP 客戶端」方式接入遠端服務,而不是在對話裏臨時拼 HTTP 的同學。

務必注意

  • 插件隨 當前 dsh 進程 運行,具備該進程的環境與網絡權限;安裝前應閱讀倉庫源碼與 MIT 許可證,並確認 Token 與 MCP URL 的來源可信。
  • 本倉庫 不嵌入 DrPanda:未部署 dr-panda-mcp 時,僅安裝本插件無法獲得 mcp__drpanda__* 能力。
  • DrPanda 定位爲 只讀 生產排查;寫入、變更類操作不在該 MCP 工具集設計範圍內。
  • DSH 社區插件目錄(如 SkillHub)爲獨立站點,與 DeepSeek / 幻方無官方從屬關係;安裝命令以各插件 README 爲準。

結尾

dsh-dr-panda-mcp 解決的是「Harness 與已運行 DrPanda 之間的 Streamable HTTP 橋接」:一鍵 patch、環境變量憑證、drpanda_mcp_doctor 輔助排障。部署好 DrPanda 並註冊目標後,即可在智能體側使用 mcp__drpanda__* 做聯網只讀排查。

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

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

小夜