SerpApi MCP

ทางการ

เซิร์ฟเวอร์ SerpApi MCP สำหรับผลลัพธ์จาก Google และเครื่องมือค้นหาอื่นๆ

คุณทำอะไรได้บ้างด้วย SerpApi MCP?

  • ค้นหาผ่านหลายเครื่องมือค้นหา — เรียกใช้คำค้นหาเดียวใน Google, Bing, Yahoo, DuckDuckGo, YouTube, eBay และอื่นๆ ผ่านเครื่องมือ search โดยตั้งค่า params.engine
  • รับข้อมูลสภาพอากาศและหุ้นแบบเรียลไทม์ — สอบถามสภาพอากาศปัจจุบันตามสถานที่หรือข้อมูลทางการเงินของบริษัทโดยใช้คำถามภาษาธรรมชาติ เช่น “weather in London” หรือ “AAPL stock”
  • ดึงผลลัพธ์ JSON แบบกระชับหรือแบบสมบูรณ์ — ควบคุมขนาดการตอบกลับด้วยพารามิเตอร์ mode เพื่อรับรายละเอียดทั้งหมดหรือสรุปที่กระชับ
  • ดูผลลัพธ์เป็นตารางหรือแดชบอร์ดแบบโต้ตอบ — ใช้ search_table หรือ search_dashboard เพื่อแสดงผลลัพธ์การค้นหาเป็น UI ที่สามารถเรียงลำดับได้ในโฮสต์ MCP ที่รองรับ
  • ค้นพบเครื่องมือค้นหาที่มีและพารามิเตอร์ของมัน — เข้าถึงสคีมาพารามิเตอร์ต่อเครื่องมือค้นหาผ่านทรัพยากร MCP ที่ serpapi://engines และ serpapi://engines/<engine>

เอกสาร

เซิร์ฟเวอร์ SerpApi MCP

การใช้งานเซิร์ฟเวอร์ Model Context Protocol (MCP) ที่ผสานรวมกับ SerpApi เพื่อผลลัพธ์จากเครื่องมือค้นหาและการดึงข้อมูลที่ครอบคลุม

Python 3.13+ MIT License Install in VS Code Install in Cursor

คุณสมบัติ

  • ค้นหาหลายเครื่องมือ: Google, Bing, Yahoo, DuckDuckGo, YouTube, eBay และ อื่นๆ
  • ทรัพยากรเครื่องมือ: สคีมาพารามิเตอร์ต่อเครื่องมือพร้อมใช้งานผ่านทรัพยากร MCP (ดูเครื่องมือค้นหา)
  • ข้อมูลสภาพอากาศแบบเรียลไทม์: สภาพอากาศตามตำแหน่งที่ตั้งพร้อมพยากรณ์ผ่านคำค้นหา
  • ข้อมูลตลาดหุ้น: ข้อมูลทางการเงินของบริษัทและข้อมูลตลาดผ่านการผสานรวมการค้นหา
  • การประมวลผลผลลัพธ์แบบไดนามิก: ตรวจจับและจัดรูปแบบผลลัพธ์ประเภทต่างๆ โดยอัตโนมัติ
  • โหมดการตอบสนองที่ยืดหยุ่น: การตอบสนอง JSON แบบสมบูรณ์หรือแบบกระชับ
  • การตอบสนอง JSON: ผลลัพธ์ JSON ที่มีโครงสร้างพร้อมโหมดสมบูรณ์หรือกระชับ
  • UI แบบโต้ตอบ (MCP Apps): เครื่องมือ search_table และ search_dashboard แบบเลือกใช้ที่แสดงผลลัพธ์เป็น UI แบบโต้ตอบในโฮสต์ที่รองรับ

เริ่มต้นอย่างรวดเร็ว

เซิร์ฟเวอร์ SerpApi MCP พร้อมใช้งานในรูปแบบบริการโฮสต์ที่ mcp.serpapi.com ในการเชื่อมต่อ คุณต้องระบุคีย์ API คุณสามารถค้นหาคีย์ API ของคุณได้บน แดชบอร์ด SerpApi

คุณสามารถกำหนดค่า 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 คุณสามารถค้นหาพารามิเตอร์ที่มีทั้งหมดได้ใน เอกสารอ้างอิง API ของ SerpApi สคีมาพารามิเตอร์ของเครื่องมือยังถูกเปิดเผยเป็นทรัพยากร MCP: serpapi://engines (ดัชนี) และ serpapi://engines/<engine>

พารามิเตอร์ที่คุณสามารถระบุได้นั้นเฉพาะเจาะจงสำหรับแต่ละเครื่องมือ API ตัวอย่างพารามิเตอร์บางส่วนมีให้ด้านล่าง:

  • params.q (จำเป็น): คำค้นหา
  • params.engine: เครื่องมือค้นหา (ค่าเริ่มต้น: "google_light")
  • params.location: ตัวกรองทางภูมิศาสตร์
  • mode: โหมดการตอบสนอง - "complete" (ค่าเริ่มต้น) หรือ "compact"
  • ...ดูพารามิเตอร์อื่นๆ ได้ใน เอกสารอ้างอิง API ของ SerpApi

ตัวอย่าง:

{"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 Apps)

เครื่องมือ search เริ่มต้นส่งคืน JSON และไม่มีการเปลี่ยนแปลง สำหรับโฮสต์ที่รองรับ ส่วนขยาย MCP Apps (SEP-1865) มีเครื่องมือแบบเลือกใช้สองรายการที่แสดงผลลัพธ์เป็น UI แบบโต้ตอบโดยตรงในการสนทนา ดังนั้น JSON SERP จำนวนมากจะไม่เข้าสู่หน้าต่างบริบทของโมเดล:

  • search_table: ผลลัพธ์ทั่วไปในรูปแบบตารางที่จัดเรียงและค้นหาได้
  • search_dashboard: เมตริกสรุป, แผนภูมิการแยกตามแหล่งที่มา และตารางผลลัพธ์พร้อมแผงรายละเอียดแบบคลิกเพื่อขยาย

ทั้งคู่ยอมรับ params เช่นเดียวกับ search โฮสต์ที่ไม่รองรับ 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"

การแก้ไขปัญหา

  • "Missing API key": รวมคีย์ในพาธ URL /{YOUR_KEY}/mcp หรือส่วนหัว Bearer YOUR_KEY
  • "Invalid key": ตรวจสอบที่ serpapi.com/dashboard
  • "Rate limit exceeded": รอหรืออัปเกรดแผน SerpApi ของคุณ
  • "No results": ลองใช้คำค้นหาหรือเครื่องมืออื่น

การมีส่วนร่วม

  1. Fork repository
  2. สร้าง branch คุณสมบัติของคุณ: git checkout -b feature/amazing-feature
  3. ติดตั้ง dependencies: uv install
  4. ทำการเปลี่ยนแปลงของคุณ
  5. Commit การเปลี่ยนแปลง: git commit -m 'Add amazing feature'
  6. Push ไปยัง branch: git push origin feature/amazing-feature
  7. เปิด Pull Request

ใบอนุญาต

ใบอนุญาต MIT - ดูรายละเอียดในไฟล์ LICENSE