
目前似乎都要付費。目前的實際選項如下:
方案(方案 │ API Key │ 費用 │ 品質):
- DuckDuckGo (duckduckgo-search) │ ❌ 不需要 │ 免費 │ 一般搜尋結果
- SerpApi │ ✅ 需要 │ 付費(有免費額度) │ 可取得 Google AI Overviews
- Tavily │ ✅ 需要 │ 免費額度 1000次/月 │ 專為 AI agent 設計
- Google Custom Search API │ ✅ 需要 │ 免費 100次/天 │ 一般搜尋,無 AI Overviews
目前市面上主流的 AI 搜尋引擎 MCP (Model Context Protocol) 伺服器主要分為通用搜尋與 AI 研發優化兩類。以下整理幾個常見的選項及其費用:
Brave Search
price:
https://api-dashboard.search.brave.com/documentation/pricing
這是目前社群與官方最推崇的選項,因為它的免費額度高且 API 密鑰容易取得。
- 付費方案: 每月 $5 美元可獲得 1,000 次查詢。($5.00 / per 1,000 requests)
- 特色: 重視隱私,反應速度快,適合日常通用搜尋。
Exa (原 Metaphor,為 AI 打造的搜尋)
Exa 是專門為大型語言模型設計的搜尋引擎,它搜尋的是網頁內容的語義而非關鍵字。
- 免費額度: 每月提供 1,000 次免費查詢。
- 付費方案: 採計次收費,基礎搜尋每 1,000 次約 $7 美元。
- 特色: 能過濾出更適合 AI 閱讀的乾淨內容,適合需要高品質參考資料的場景。
Tavily (專注於 AI 研究)
許多自主代理(Agents)預設使用的搜尋工具,強調資訊的整合與研究深度。
- 免費額度: 每月 1,000 次免費查詢。
- 付費方案: 每月 $30 美元起(約 4,000 次查詢)。
- 特色: 搜尋結果經過 AI 優化與評分,適合複雜的資料蒐集與分析任務。
Perplexity (透過第三方 MCP 實作)
雖然官方目前以 API 形式為主,但 GitHub 上有許多開源的 MCP 實作可以串接 Perplexity。
- 費用: * API 模式: 根據 Token 與搜尋次數計費(每 1,000 次搜尋約 $5 美元)。
- Web 模式: 若使用某些開源 MCP 封裝,可透過你現有的 Pro 訂閱(每月 $20 美元)權限來呼叫。
- 特色: 整合性最強,直接提供總結後的答案與來源。
Google Custom Search (漸入歷史)
- 免費額度: 每天 100 次免費查詢。
- 付費方案: 超過後每 1,000 次 $5 美元。
- 注意: 舊版的 API 預計於 2027 年關閉,目前社群開發重心已轉向 Brave 或 Tavily。
DuckDuckGo 官網:
https://duckduckgo.com/
關於 DuckDuckGo 的 MCP 伺服器,情況與 Brave 或 Exa 略有不同,主要特點是「免費但非官方」。
DuckDuckGo MCP 的定位
目前 DuckDuckGo 並沒有推出官方的 MCP 伺服器,社群中常見的工具(如 duckduckgo-mcp-server 或 duck-duck-scrape-mcp)大多是透過 網頁爬蟲 (Web Scraping) 或非官方 API 實作的。
費用與限制
- 費用: 完全免費。因為它是模擬瀏覽器行為或使用公開介面,不需要註冊 API Key。
- 限制: * 頻率限制 (Rate Limiting): 這是最大的缺點。如果你在短時間內發送太多請求,DuckDuckGo 會暫時封鎖你的 IP,導致 AI 搜尋失敗。
- 穩定性: 由於是爬蟲原理,如果網頁改版,MCP 可能會失效,需要等待開發者更新。
常見的 MCP 實作方式
如果你想在 Claude Desktop 或其他支援 MCP 的環境安裝,通常使用以下指令(以常見的社群版本為例):
JSON
{
"mcpServers": {
"ddg-search": {
"command": "uvx",
"args": ["duckduckgo-mcp-server"]
}
}
}
想要自架 AI 搜尋 MCP 伺服器且不被 Google 阻擋,最穩定的做法是透過 SearXNG。這是一個開源、隱私且整合型的搜尋引擎(Metasearch Engine),它能同時抓取 Google、Bing、DuckDuckGo 等數十個來源。
自架 SearXNG 核心
這是自架搜尋的第一步,建議使用 Docker 部署,這樣可以透過代理(Proxy)或更換 IP 來避免被 Google 阻擋。
- 準備一份
docker-compose.yml,包含searxng與redis。 - 在
settings.yml中啟用 JSON 格式輸出,這對 MCP 讀取資料非常重要。 - 防擋機制: 在設定檔中加入多個代理伺服器(Upstream Proxies),或利用
limiter功能模擬真人搜尋行為。
串接 MCP 伺服器
當你的 SearXNG 運作後,你需要一個 MCP 伺服器來翻譯 LLM 的請求。你可以使用社群維護的 searxng-mcp-server,或是簡單用 Python/Node.js 自己寫一個。
- 環境變數: 設定
SEARXNG_URL=http://your-vps-ip:8080。 - 溝通協議: MCP 會將 LLM 的
search指令轉化為http://your-vps-ip:8080/search?q=query&format=json。
避免被 Google 阻擋的技巧
如果你直接從單一 VPS IP 大量爬取 Google,很快就會遇到驗證碼。
- 多後端輪替: SearXNG 可以同時開啟 Bing、DuckDuckGo、Brave 與 Wikipedia。當 Google 暫時失效時,其他來源依然能提供準確結果。
- 使用容器化的住宅代理: 如果預算允許,可以讓 SearXNG 的出口流量經過如 Bright Data 或 Proxyrack 的住宅 IP 池。
- 延遲請求: 在 MCP 層級加入少許隨機延遲(1-3秒),避免瞬間併發請求過高。
總結來說,追求完全自主控制與多來源整合,請選 SearXNG;追求開發效率與穩定性,請選 Brave Search API 搭配簡單的 MCP 封裝。
