dsh-mcp-lens:用兩個模型接口收斂 MCP 工具上下文

前言

在 DeepSeek Harness(DSH)裏接入 MCP 工具時,工具目錄越大,模型每輪可見的工具 schema 越多,上下文壓力和 API 成本也越高。dsh-mcp-lens 是 labmimors 維護的一個 DSH 社區插件,目標是用 mcp_searchmcp_call 兩個穩定模型接口處理大規模 MCP 工具,只在需要時展示候選工具的 exact inputSchema,並對最終 server/tool 調用做授權控制。

這是什麼

dsh-mcp-lens 的定位是:降低 MCP 上下文和 API 成本。它通過兩個模型接口、懶發現和精確 schema 調用,把大量 MCP 工具收斂爲更小的模型可見面。

基礎信息如下:

  • 倉庫名:labmimors/dsh-mcp-lens
  • 許可證:MIT
  • GitHub:https://github.com/labmimors/dsh-mcp-lens

核心功能

兩個穩定的模型接口

插件支持通過兩個模型可見接口搜索並調用 1,000 個 MCP 工具。模型不再直接面對完整工具目錄,而是通過穩定的接口完成發現和調用。

只展示需要時的小候選集

插件不會把所有工具 schema 都交給模型。它會在需要時,對一個小的 ranked set 展示 exact inputSchema 值。這樣可以減少模型每輪需要處理的工具定義規模。

調用受 allowTools 和 denyTools 控制

最終 server/tool 調用會經過 allowToolsdenyTools 門禁。denyTools 始終優先。

換句話說,遠程工具不會先暴露給模型,除非它匹配 allowTools;如果同時命中 denyTools,則以 denyTools 爲準。

懶激活

懶激活時,插件不啓動 MCP 進程,也不打開 MCP socket。它把 MCP 資源的啓動推遲到真正需要的時刻。

本地目錄計算器

插件包含一個本地目錄計算器,用於自報工具 schema 的字節測量。

共享結果應視爲 self-reported local measurements。它不是簽名,也不能作爲“測量確實發生”的證明。

附帶無依賴 GitHub Action

插件還附帶一個 dependency-free GitHub Action,用於審計 checked-in tool payloads。它可以把工具 payload 的規模檢查放到 CI 中。

安裝與啓用

先確認環境滿足以下要求:

  • DeepSeek Harness 0.1.0-rc.6
  • Node.js ^22.19.0>=24.0.0
  • pnpmPATH

最快安裝方式:

dsh plugin --profile web add dsh-mcp-lens@next

npm next tag 當前解析到 0.1.0-rc.9

如果需要固定到已評審版本,可以使用:

dsh plugin --profile web add dsh-mcp-lens@0.1.0-rc.9

安裝完成後,可以查看當前 profile 配置並啓動 Harness:

dsh --profile web --dump-config
dsh --profile web

第一條命令用於查看當前 profile 的配置,第二條命令用於啓動 profile。

典型用法

安裝後,你可以按常規方式提示 Harness,不需要在提示詞中特別提到 mcp_searchmcp_call

如果你使用倉庫中的 GitHub Action 示例來審計 checked-in tool payload,可以這樣配置:

- uses: labmimors/dsh-mcp-lens@v0.1.0-rc.7
  with:
    tools-file: fixtures/request-header-tools.json

這個 Action 用於檢查已檢入的工具 payload。

如果你按 README 場景接入 MCP 文檔服務器,它不需要額外 API key;但 Harness 本身仍需一個配置好的模型 provider。

適用場景與注意

dsh-mcp-lens 更適合這些場景:

  • 數十到數千個 MCP 工具
  • 多個 MCP 服務器
  • 長尾工具目錄
  • 每次請求都攜帶全部工具 schema 會造成明顯上下文壓力

如果你只有少量工具,並且這些工具幾乎每次請求都會用到,就不一定需要引入它。

使用前注意以下幾點:

1、插件會以當前 dsh 進程權限運行。安裝前建議檢查源碼、MIT 許可證、Action 版本和 allowTools / denyTools 配置。

2、denyTools 在搜索和調用中始終優先。如果工具需要隱藏或禁止調用,應優先使用 denyTools

3、本地計算器的共享結果只是自報的本地測量,不是簽名,也不是測量證明。

結尾

dsh-mcp-lens 的價值在於:把大規模 MCP 工具目錄收斂爲兩個模型接口,在需要時展示 exact inputSchema,並用 allowToolsdenyTools 控制最終調用。它適合工具數量較多、目錄較複雜、希望降低 MCP 上下文和 API 成本的 DSH 場景。

可先查看 GitHub 倉庫的發佈版本、許可證和 Action 示例:

https://github.com/labmimors/dsh-mcp-lens

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

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

小夜