@fdcicyber/google-search-mcp
v1.0.0
Published
MCP server: Google search, image search, news, page scraping and screenshots via stealth puppeteer
Downloads
106
Maintainers
Readme
google-search-mcp
MCP server that gives AI agents Google search and web scraping through a stealth browser (super-puppeteer). Runs headful by default — Google serves a captcha wall to headless Chrome on datacenter IPs.
Tools
| Tool | What it does |
|------|--------------|
| google_search | Organic results (max 20): title, url, snippet. fetchContent: N also fetches the top N result pages as compressed markdown. Pagination, lang, region. |
| google_images | Full-size image URL, dimensions, source page, title, thumbnail. |
| google_news | News tab: headline, source, snippet, url. |
| scrape_page | Any URL → boilerplate-free markdown. Optional query keeps only the most relevant blocks within maxChars. |
| extract_images | All images from any page (img, og:image) with alt + dimensions. |
| screenshot | PNG screenshot returned as image content the agent can see. |
Token economy
Fetched page content goes through two passes so agents don't burn tokens on boilerplate:
- Readability extraction (in-browser) — strips nav/header/footer/ads/cookie banners, picks the densest content container, drops blocks with >60% link density (menus, link farms), emits ordered markdown blocks (headings, paragraphs, lists, quotes, code, tables).
- Relevance budget (server-side) — if content exceeds the character budget, blocks are scored by query-term frequency density (
TF / sqrt(len)) plus heading and early-position bonuses; the highest-signal blocks are kept in original order with…marking gaps.
Requirements
- Node.js >= 23 (runs TypeScript natively)
- Chrome (installed automatically by puppeteer)
Usage (npx, no install)
npx -y @fdcicyber/google-search-mcpClaude Code / MCP client config
{
"mcpServers": {
"google-search": {
"command": "npx",
"args": ["-y", "@fdcicyber/google-search-mcp"]
}
}
}Or with Claude Code CLI:
claude mcp add google-search -- npx -y @fdcicyber/google-search-mcpFirst run downloads Chrome via puppeteer (cached in ~/.cache/puppeteer, one-time).
Notes
- Browser launches lazily on first tool call and is reused across calls; one page per request.
- Google consent cookies are pre-seeded so the GDPR interstitial never appears.
- Keep it headful. Headless Chrome from this network gets
google.com/sorry(unusual traffic captcha).
