SerpApi MCP Server
官方SerpApi MCP Server 用
文件
SerpApi MCP 伺服器
一個模型上下文協定 (MCP) 伺服器實作,整合 SerpApi 以提供全面的搜尋引擎結果與資料擷取。
功能特色
- 多引擎搜尋:Google、Bing、Yahoo、DuckDuckGo、YouTube、eBay 以及更多
- 引擎資源:可透過 MCP 資源取得各引擎的參數結構描述(請參閱搜尋工具)
- 即時天氣資料:透過搜尋查詢取得基於位置的天氣預報
- 股票市場資料:透過搜尋整合取得公司財務與市場資料
- 動態結果處理:自動偵測並格式化不同的結果類型
- 靈活的回應模式:完整或精簡的 JSON 回應
- JSON 回應:結構化的 JSON 輸出,支援完整或精簡模式
- 互動式 UI (MCP 應用程式):可選用的
search_table和search_dashboard工具,能在支援的主機中將結果渲染為互動式 UI
快速入門
SerpApi MCP 伺服器以託管服務形式提供,位於 mcp.serpapi.com。若要連線,您需要提供 API 金鑰。您可以在 SerpApi 儀表板 找到您的 API 金鑰。
您可以設定 Claude Desktop 使用託管伺服器:
{
"mcpServers": {
"serpapi": {
"type": "http",
"url": "https://mcp.serpapi.com/YOUR_SERPAPI_API_KEY/mcp"
}
}
}
您也可以將託管伺服器新增至這些 MCP 客戶端:
OpenClaw
openclaw mcp add serpapi --url https://mcp.serpapi.com/YOUR_SERPAPI_API_KEY/mcp --transport streamable-http
Claude Code
claude mcp add --transport http serpapi https://mcp.serpapi.com/YOUR_SERPAPI_API_KEY/mcp
Hermes
hermes mcp add serpapi --url https://mcp.serpapi.com/YOUR_SERPAPI_API_KEY/mcp
Codex
codex mcp add serpapi --url https://mcp.serpapi.com/YOUR_SERPAPI_API_KEY/mcp
自行託管
git clone https://github.com/serpapi/serpapi-mcp.git
cd serpapi-mcp
uv sync && uv run src/server.py
設定 Claude Desktop:
{
"mcpServers": {
"serpapi": {
"type": "http",
"url": "http://localhost:8000/YOUR_SERPAPI_API_KEY/mcp"
}
}
}
取得您的 API 金鑰:serpapi.com/manage-api-key
驗證
支援兩種方法:
- 基於路徑:
/YOUR_API_KEY/mcp(建議) - 基於標頭:
Authorization: Bearer YOUR_API_KEY
範例:
# Path-based
curl "https://mcp.serpapi.com/your_key/mcp" -d '...'
# Header-based
curl "https://mcp.serpapi.com/mcp" -H "Authorization: Bearer your_key" -d '...'
搜尋工具
MCP 伺服器提供一個主要的搜尋工具,支援所有 SerpApi 引擎和結果類型。您可以在 SerpApi API 參考 找到所有可用參數。
引擎參數結構描述也以 MCP 資源形式公開:serpapi://engines(索引)和 serpapi://engines/<engine>。
您可以提供的參數因每個 API 引擎而異。以下提供一些範例參數:
params.q(必要):搜尋查詢params.engine:搜尋引擎(預設:"google_light")params.location:地理篩選條件mode:回應模式 - "complete"(預設)或 "compact"- ...請參閱 SerpApi API 參考 中的其他參數
範例:
{"name": "search", "arguments": {"params": {"q": "coffee shops", "location": "Austin, TX"}}}
{"name": "search", "arguments": {"params": {"q": "weather in London"}}}
{"name": "search", "arguments": {"params": {"q": "AAPL stock"}}}
{"name": "search", "arguments": {"params": {"q": "news"}, "mode": "compact"}}
{"name": "search", "arguments": {"params": {"q": "detailed search"}, "mode": "complete"}}
支援的引擎: Google、Bing、Yahoo、DuckDuckGo、YouTube、eBay 以及更多(請參閱 serpapi://engines)。
結果類型: 答案框、自然搜尋結果、新聞、圖片、購物 - 自動偵測並格式化。
互動式 UI (MCP 應用程式)
預設的 search 工具會回傳 JSON 且保持不變。對於支援 MCP Apps 擴充功能 (SEP-1865) 的主機,有兩個可選用的工具能直接在對話中將結果渲染為互動式 UI,因此大量的 SERP JSON 不會進入模型的上下文視窗:
search_table:將自然搜尋結果顯示為可排序、可搜尋的表格。search_dashboard:包含摘要指標、來源明細圖表,以及附有點擊展開詳細面板的結果表格。
兩者都接受與 search 相同的 params。不支援 MCP Apps 的主機只會忽略這些工具。
無需 MCP 主機即可在本機預覽:
uv run fastmcp dev apps src/server.py
開發
# Local development
uv sync && uv run src/server.py
# Docker
docker build -t serpapi-mcp . && docker run -p 8000:8000 serpapi-mcp
# Regenerate engine resources (Playground scrape)
python build-engines.py
# Testing with MCP Inspector
npx @modelcontextprotocol/inspector
# Configure: URL mcp.serpapi.com/YOUR_KEY/mcp, Transport "Streamable HTTP transport"
疑難排解
- 「缺少 API 金鑰」:在 URL 路徑
/{YOUR_KEY}/mcp或標頭Bearer YOUR_KEY中包含金鑰 - 「無效的金鑰」:請在 serpapi.com/dashboard 驗證
- 「超出速率限制」:請稍候或升級您的 SerpApi 方案
- 「無結果」:請嘗試不同的查詢或引擎
貢獻
- Fork 此儲存庫
- 建立您的功能分支:
git checkout -b feature/amazing-feature - 安裝相依套件:
uv install - 進行您的變更
- 提交變更:
git commit -m 'Add amazing feature' - 推送至分支:
git push origin feature/amazing-feature - 開啟 Pull Request
授權
MIT 授權 - 詳情請參閱 LICENSE 檔案。