前言¶
DSH 的 web_search 工具在默認官方搜索下會調用按量計費的 DeepSeek 搜索服務,依賴 DEEPSEEK_API_KEY,併產生餘額消耗。若希望在 DSH 內切換到匿名免 key 的免費搜索,並且把同一後端接入 Claude Code / Codex 等 MCP 客戶端,dsh-web-search-free 提供了插件開關和 MCP server 兩種用法。
這是什麼¶
sheep-programmer/dsh-web-search-free 是 MIT 許可證的 DSH 插件,npm 包名爲 @sheep233_/dsh-web-search-free。它提供三件事:DSH 內的免費網頁搜索 provider、DSH 設置中的官方/免費切換開關,以及獨立的 MCP server。
核心功能¶
免費後端¶
- 免費後端:Parallel(默認)/ Exa(備用)
- 匿名免 key,無需 API key,不扣任何餘額
- 啓用免費後,
web_search請求僅發往search.parallel.ai/mcp.exa.ai - 可選環境變量
EXA_API_KEY用於提升 Exa 匿名限額
DSH 設置開關¶
設置路徑:DSH 設置 → 插件設置 → 可配置 → 免費網頁搜索。
enabled開關默認關閉,表示使用官方搜索;開啓後使用免費搜索- 免費後端單選:Parallel(默認)/ Exa(備用)
- 變更後會自動維護 profile 補丁文件
~/.dsh/profiles/web/cordis.patch.yml中web行的searchProvider覆蓋;關閉時刪除該覆蓋塊 - 變更後重啓 DSH 生效
MCP server¶
MCP server 位於 lib/mcp-server.js,零依賴,不依賴 DSH。
- 暴露
web_search工具 - 參數:
query必填;provider可選,取值parallel/exa;numResults可選 - 傳輸:stdio 與 HTTP/SSE
- stdio 模式不監聽任何端口
- HTTP/SSE 默認地址爲
http://127.0.0.1:3100,默認只綁本機迴環地址 - 只調用上述免費端點,不讀任何文件/環境,除可選
EXA_API_KEY
安裝與啓用¶
設置卡片要顯示,需要滿足以下條件:profile 爲 web;包已聲明進 dsh.profile.bundles;安裝後重啓 DSH;打開設置前刷新瀏覽器頁面。
- 使用 DSH 官方安裝命令安裝依賴:
dsh plugin --profile web add @sheep233_/dsh-web-search-free
- 將包名加入
~/.dsh/profiles/web/package.json的dsh.profile.bundles,同時確保dependencies中有同名片名;版本範圍以 npm 包當前發佈或包管理器記錄爲準,本文不固定版本號。配置形如:
{
"dsh": {
"profile": {
"bundles": [
"@sheep233_/dsh-web-search-free"
]
}
},
"dependencies": {
"@sheep233_/dsh-web-search-free": "按當前發佈填寫版本範圍"
}
}
-
重啓 DSH,並刷新瀏覽器頁面。
-
打開
DSH 設置 → 插件設置 → 可配置 → 免費網頁搜索,開啓enabled,選擇 Parallel 或 Exa,然後重啓 DSH。 -
如在本地源碼目錄做端到端驗證,可運行:
npm run verify
典型用法:接入 MCP 客戶端¶
stdio 方式¶
stdio 是默認傳輸,不需要額外端口。
Claude Code:
claude mcp add dsh-web-search -- npx -y @sheep233_/dsh-web-search-free
Codex:
codex mcp add dsh-web-search -- npx -y @sheep233_/dsh-web-search-free
也可以使用本地源碼路徑:
claude mcp add dsh-web-search -- node /絕對路徑/dsh-web-search-free/lib/mcp-server.js
codex mcp add dsh-web-search -- node /絕對路徑/dsh-web-search-free/lib/mcp-server.js
HTTP/SSE 方式¶
先啓動 MCP server:
node /絕對路徑/dsh-web-search-free/lib/mcp-server.js --http --port 3100
默認監聽 http://127.0.0.1:3100。可用 --host / --port 調整地址和端口。
Claude Code:
claude mcp add --transport http dsh-web-search http://127.0.0.1:3100
Codex:
codex mcp add --transport http dsh-web-search http://127.0.0.1:3100
其他 MCP 客戶端如果支持 stdio 或 HTTP/SSE,也可按相同命令或 URL 接入。
回退官方¶
在設置卡片中關閉 enabled 開關,然後重啓 DSH。也可以手動刪除 ~/.dsh/profiles/web/cordis.patch.yml 中 # >>> web-search-free 與 # <<< web-search-free 之間的覆蓋塊。
適用場景與注意¶
- 適合在 DSH
webprofile 中用免費後端替代官方計費搜索。 - 適合將免費
web_search工具接入 Claude Code / Codex 或其他支持 stdio / HTTP/SSE 的 MCP 客戶端。 - 插件會運行在當前 DSH 進程環境中,安裝前應檢查源碼與 MIT 許可證。
- DSH 插件側無 key、無數據收集、無監聽;啓用免費搜索後請求僅發往
search.parallel.ai/mcp.exa.ai。 - HTTP/SSE 默認只綁本機迴環地址;如修改
--host暴露到網絡,需要自行評估訪問控制風險。 EXA_API_KEY爲可選項,用於提升 Exa 匿名限額;不設置時使用匿名端點。
結尾¶
dsh-web-search-free 的價值在於把 DSH 內的免費網頁搜索開關、profile 補丁聯動,以及可複用的 MCP server 放在同一個包中。GitHub 倉庫:
https://github.com/sheep-programmer/dsh-web-search-free
目錄頁入口請以 DSH 或社區目錄提供的內容爲準;本文不附未覈實的目錄頁 URL。