HarimxChoi/google-surf-mcp

View on GitHub ↗

Google search MCP. One MCP replaces search + fetch + academic-paper extractor.

280 ★33 forksTypeScriptUpdated 24d ago

What you need to know

google-surf-mcp is a keyless Google search MCP (npm, MIT) that replaces three servers (search + URL fetcher + academic-paper extractor) — 5 tools (search, search_parallel, extract, search_extract, health) with headless Playwright + stealth, CAPTCHA recovery for humans, and inline academic PDF extraction (arxiv, Nature, OpenReview, etc.).

Install

npx google-surf-mcp   (register in your MCP client config)
Requires Node 18+ and Google Chrome (or Chromium) on the system

Usage

  • Register in ~/.claude.json as {google-surf: {command: 'npx', args: ['-y', 'google-surf-mcp']}}
  • search(query) for ~1.5s results; search_extract(query) returns SERP enriched with ~1500-char abstracts by default
  • On CAPTCHA a Chrome window opens for a human to solve (preserving profile reputation); set SURF_HEADLESS=false to keep Chrome visible

Key features

  • 5 tools: search, search_parallel (pool of 4), extract, search_extract (search + parallel extract), health
  • Drops sponsored ads and knowledge panels (geometric verification); academic PDF extraction from arxiv, biorxiv, Nature, OpenReview, NeurIPS, JMLR, PMLR, Springer, PubMed
  • No API key, no proxies, no CAPTCHA solver; Playwright stealth cascade + multi-strategy SERP parser with self-healing strategy reorder
  • Fast: ~1.5s/query sequential, parallel x4 ~1.5s; extraction via liteparse (PDFium spatial) + Readability

Best for

AI agents that need reliable, keyless Google search plus article/PDF extraction without paying for search APIs.

Caveats

  • Requires local Google Chrome/Chromium and Node 18+; designed for local use — SURF_CLOUD_MODE=true is fail-fast on CAPTCHA
  • SSRF guard blocks private/loopback addresses in extract by default; rate limit ~10 RPM toward Google
Platforms: macOS · Linux · WindowsClients: Claude Code · Claude Desktop · Cursor · MCP clients
Documentation ↗

Reviewed 2026-08-11

Topics

academic-researchfetchgoogle-searchmcpmodel-context-protocolpdf-processingplaywrightself-healing
Stars
280★
Forks
33
Language
TypeScript
License
MIT
Created
2026-04-30
Last push
2026-08-11