/ 目錄 / 演練場 / mcp-omnisearch
● 社群 spences10 ⚡ 即開即用

mcp-omnisearch

作者 spences10 · spences10/mcp-omnisearch

一個 MCP,涵蓋所有搜尋引擎 — Tavily、Brave、Kagi、Exa,加上 Firecrawl 做內容擷取。無需同時管理 5 個 MCP 即可混用多個提供商。

mcp-omnisearch 透過四個工具統一整合了網路搜尋、AI 搜尋、GitHub 搜尋與內容擷取。只需提供你所訂閱的提供商金鑰;未設定金鑰的提供商會被靜默略過。適合需要跨搜尋後端備援或依查詢類型進行成本優化的情境。

為什麼要用

核心特性

即時演示

實際使用效果

omnisearch.replay ▶ 就緒
0/0

安裝

選擇你的客戶端

~/Library/Application Support/Claude/claude_desktop_config.json  · Windows: %APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "omnisearch": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-omnisearch"
      ],
      "_inferred": true
    }
  }
}

開啟 Claude Desktop → Settings → Developer → Edit Config。儲存後重啟應用。

~/.cursor/mcp.json · .cursor/mcp.json
{
  "mcpServers": {
    "omnisearch": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-omnisearch"
      ],
      "_inferred": true
    }
  }
}

Cursor 使用與 Claude Desktop 相同的 mcpServers 格式。專案級設定優先於全域。

VS Code → Cline → MCP Servers → Edit
{
  "mcpServers": {
    "omnisearch": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-omnisearch"
      ],
      "_inferred": true
    }
  }
}

點擊 Cline 側欄中的 MCP Servers 圖示,然後選 "Edit Configuration"。

~/.codeium/windsurf/mcp_config.json
{
  "mcpServers": {
    "omnisearch": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-omnisearch"
      ],
      "_inferred": true
    }
  }
}

格式與 Claude Desktop 相同。重啟 Windsurf 生效。

~/.continue/config.json
{
  "mcpServers": [
    {
      "name": "omnisearch",
      "command": "npx",
      "args": [
        "-y",
        "mcp-omnisearch"
      ]
    }
  ]
}

Continue 使用伺服器物件陣列,而非映射。

~/.config/zed/settings.json
{
  "context_servers": {
    "omnisearch": {
      "command": {
        "path": "npx",
        "args": [
          "-y",
          "mcp-omnisearch"
        ]
      }
    }
  }
}

加入 context_servers。Zed 儲存後熱重載。

claude mcp add omnisearch -- npx -y mcp-omnisearch

一行命令搞定。用 claude mcp list 驗證,claude mcp remove 移除。

使用場景

實戰用法: mcp-omnisearch

以多個搜尋引擎備援的方式研究某個主題

👤 研究人員、分析師,以及曾因單一引擎偏差而吃過虧的人 ⏱ ~15 min beginner

何時使用: 面對一個全新主題,且不同引擎的前 10 名結果往往差異顯著時。

前置條件
  • 至少一組搜尋 API 金鑰(Tavily 免費方案最容易取得) — tavily.com/signup — 免費方案每月 1000 次請求
步驟
  1. 先用最便宜的提供商執行搜尋
    Search Tavily for 'latest MCP protocol changes 2026'. Summarize the top 5 results.✓ 已複製
    → 附帶引用來源的摘要
  2. 換用另一個提供商交叉比對
    Now search the same query on Brave. Which results show up in both? Which are unique?✓ 已複製
    → 重疊結果分析
  3. 擷取最有價值結果的完整內容
    Use web_extract on the top result and give me the actual useful text, not nav boilerplate.✓ 已複製
    → 乾淨的文章 markdown 內容

結果: 一份經過多引擎交叉驗證、可信度更高的研究結論。

注意事項
  • 各提供商的配額不同 — Tavily 較寬裕,Kagi 按查詢計費 — 探索性搜尋導向 Tavily,高價值的「直接給我答案」查詢則透過 FastGPT 使用 Kagi
  • web_extract 在 JavaScript 較重的網站上會失敗 — SPA 網站使用 Firecrawl(支援 JS 渲染);靜態頁面使用 Tavily extract
搭配使用: notion

透過 AI 搜尋取得附引用來源的快速答案

👤 想要直接得到「答案」而非「10 個藍色連結」的使用者 ⏱ ~5 min beginner

何時使用: 面對具體的事實性問題,且希望得到有來源依據的推理結論時。

前置條件
  • 至少一組 AI 搜尋金鑰:KAGI_API_KEY、EXA_API_KEY 或 LINKUP_API_KEY — Kagi FastGPT 的單次查詢費用最低
步驟
  1. 透過 ai_search 提問
    Use ai_search (Kagi FastGPT) for: what's the default rate limit for the GitHub Models API as of Q1 2026?✓ 已複製
    → 附帶引用來源的直接答案
  2. 驗證引用來源
    Open the top citation with web_extract and confirm the claim.✓ 已複製
    → 引用來源的原文內容

結果: 一個經過驗證的快速答案,比一般搜尋往返更便宜、更快速。

注意事項
  • AI 搜尋可能自信地錯誤引用來源 — 對重要的聲明,務必用 web_extract 查看最主要的引用來源

在 GitHub 公開資源中搜尋參考實作

👤 正在評估函式庫或尋找程式碼模式的開發者 ⏱ ~15 min intermediate

何時使用: 遇到「有人用 Rust 解過 X 嗎?」這類問題時。

前置條件
  • 無任何權限範圍的 GITHUB_API_KEY(僅存取公開資源) — github.com/settings/tokens — 使用不帶任何權限範圍的傳統 token 即可
步驟
  1. 使用程式碼運算子進行搜尋
    github_search for fn main() language:rust path:src/ 'tokio::select!' — top 20 repos.✓ 已複製
    → 含檔案命中的儲存庫列表
  2. 擷取值得閱讀的特定檔案
    For the top 3 hits, use web_extract on the raw.githubusercontent URLs and show me the tokio::select! patterns they use.✓ 已複製
    → 附帶上下文的程式碼片段

結果: 一份聚焦的真實世界實作閱讀清單,供你學習參考。

搭配使用: github

組合

與其他 MCP 搭配,撬動十倍槓桿

omnisearch + notion

跨多個搜尋引擎研究主題,並將整理後的筆記儲存至 Notion

Research 'post-quantum TLS 2026 state of play' across Tavily and Brave, extract the 3 best sources, and save a Notion page summarizing them.✓ 已複製
omnisearch + github

在 GitHub 公開搜尋中找到儲存庫後,再透過 github MCP 對最佳儲存庫執行深度操作

github_search for rate-limiter libraries in Go, pick the top, then via the github MCP open its latest 3 issues.✓ 已複製

工具

此 MCP 暴露的能力

工具輸入參數何時呼叫成本
web_search query: str, provider?: tavily|brave|kagi|exa, options?: {site?, filetype?, time?, lang?} 需要使用運算子控制的廣泛網路搜尋 1 provider API call
ai_search query: str, provider?: kagi_fastgpt|exa|linkup 需要附引用來源的直接答案,而非單純的連結列表 1 AI-search call (costlier than regular search)
github_search query: str, kind?: code|repo|user 使用 GitHub 語法搜尋程式碼、儲存庫或使用者 1 GitHub API call (30/min code search limit)
web_extract url: str, provider?: firecrawl|tavily|kagi 從指定 URL 擷取乾淨的文章文字內容 1 extractor call

成本與限制

運行它的成本

API 配額
依提供商而異。Tavily:免費每月 1000 次請求。Brave:免費每月 2000 次。Kagi:按查詢計費。Exa:免費方案約每月 1000 次。
每次呼叫 Token 數
搜尋結果:500-1500 tokens。附引用來源的 AI 搜尋:1-3k。擷取的文章:2-8k。
費用
可從免費開始(Tavily、Brave、Exa 均有免費方案);Kagi 按查詢計費;Firecrawl 自架部署 = 免費
提示
建議路由策略:廣泛探索搜尋 → Tavily/Brave;高價值精確答案 → Kagi FastGPT;內容擷取 → 自架 Firecrawl。

安全

權限、密鑰、影響範圍

最小權限: GitHub token: empty scopes (public only)
憑證儲存: 依提供商分別設定環境變數:TAVILY_API_KEY、BRAVE_API_KEY 等。
資料出站: 查詢內容會傳送至各已設定提供商的 API;結果再回傳至本地
切勿授予: GitHub token with repo write — web_search is public-only Self-hosted Firecrawl without auth exposed to public internet

故障排查

常見錯誤與修復

Provider not configured

為該提供商設定對應的環境變數,或在呼叫時傳入 provider= 參數以切換至其他提供商。

驗證: echo $TAVILY_API_KEY
Firecrawl extraction timeout

該頁面為 JavaScript 較重的 SPA;請提高 FIRECRAWL 的逾時設定,或改用 tavily/kagi extract 處理靜態頁面。

GitHub search returns 403

未驗證的程式碼搜尋有嚴格的速率限制。請提供 GITHUB_API_KEY,即使不帶任何權限範圍也適用。

驗證: curl -H 'Authorization: Bearer $GITHUB_API_KEY' https://api.github.com/rate_limit

替代方案

mcp-omnisearch 對比其他方案

替代方案何時用它替代權衡
brave-search MCP只需要單一搜尋引擎且想要最簡化設定時無 AI 搜尋功能,也不支援多提供商備援
searxng MCP想要完全自架的元搜尋服務且不需要任何 API 金鑰時需要自行架設 SearXNG 實例
kindly-web-search需要內建更完整內容擷取功能時(如完整的 StackOverflow 討論串、GitHub issues)支援的提供商較少

更多

資源

📖 閱讀 GitHub 上的官方 README

🐙 查看未解決的 issue

🔍 瀏覽全部 400+ MCP 伺服器和 Skills