PluginBench
Skill
Review
Audit score 70

google-search

fetcher-sh/fetcher-skills

Pay-per-call Google Search API with native operator support—no quota, no Custom Search Engine setup.

What is google-search?

A Google Search API alternative that returns clean JSON results for programmatic queries. Use it when you need Google search results with full operator support (site:, filetype:, intitle:, exact phrases), pagination, and language/region scoping, billed per call in USDC or prepaid credits.

  • Execute Google searches programmatically via HTTP GET, returning results as JSON
  • Support all Google search operators: site:, filetype:, intitle:, and quoted exact phrases
  • Paginate results and scope by country/region and UI language
  • Pay per call in USDC (Base, Polygon, Arbitrum, Monad, Solana) or use prepaid credits
  • Access via standard HTTP or MCP server integration

How to install google-search

npx skills add https://github.com/fetcher-sh/fetcher-skills --skill google-search
Prerequisites
  • FETCHER_API_KEY for prepaid credits (obtain at https://fetcher.sh/topup) OR x402-compatible wallet for pay-per-call
  • Network access to https://google.fetcher.sh
Claude Code
Cursor
Windsurf
Cline

How to use google-search

  1. 1.Set FETCHER_API_KEY environment variable with your prepaid credits key (or omit for x402 pay-per-call)
  2. 2.Make a GET request to https://google.fetcher.sh/api/search with query parameter
  3. 3.Add optional parameters: page (pagination), country (region scope), hl (UI language), safe (SafeSearch), noEncode (for pre-formatted operators)
  4. 4.Parse the JSON response with status, message, and data fields
  5. 5.For MCP integration, configure mcpServers in your config with the google-search endpoint URL and Authorization header

Use cases

Good for
  • Competitive research: search a competitor's site for pricing pages or product announcements
  • Rank tracking: monitor where your content appears in Google results across regions
  • Content discovery: find PDFs or specific file types matching your query using filetype: operator
  • Site-specific search: retrieve all indexed pages from a domain without Custom Search Engine setup
  • Localized research: get search results in different languages and regions for market analysis
Who it's for
  • AI agents and coding assistants performing web research
  • Developers building search-driven applications without Google API quotas
  • Competitive intelligence and SEO monitoring tools
  • Content researchers and data analysts

google-search FAQ

How much does each search cost?

$0.005 USD per call, billed in USDC on supported blockchains or deducted from prepaid credits.

Do I need a Google API key or Custom Search Engine?

No. This is a direct alternative—no API key application, no Custom Search Engine setup, no per-day quota.

Can I use Google's search operators like site: and filetype:?

Yes. All Google operators pass through directly: site:, filetype:, intitle:, and quoted exact phrases work exactly as in the browser.

What payment methods are supported?

Prepaid credits (purchased via topup endpoint) or x402 pay-per-call in USDC on Base, Polygon, Arbitrum, Monad, or Solana.

Can I integrate this with Claude or other AI agents?

Yes. Use the standard HTTP endpoint with Bearer token auth, or configure the MCP server for seamless agent integration.

Full instructions (SKILL.md)

Source of truth, from fetcher-sh/fetcher-skills.


name: google-search description: >- A Google Search API alternative and SERP API alternative on fetcher.sh — pay-per-call in USDC via x402, or prepaid credits with a Bearer key, no API key application. Use when the user wants programmatic Google search results as clean JSON, including Google's own operators — site:, filetype:, intitle:, and quoted exact phrases — plus pagination, language (hl), and country/region scoping. Also covers rank tracking input, competitive research, and search-result monitoring without Google's own Custom Search API quota and billing. keywords:

  • google-search
  • serp-api
  • serp-api-alternative
  • google-search-api
  • web-search
  • web-search-api
  • x402
  • ai-agent

Google Search API

Google's own search results as clean JSON — one plain HTTP GET per call, paid as you go. Google's search operators pass straight through: site:, filetype:, intitle:, and quoted exact phrases all work exactly as they do in the browser. No Custom Search Engine setup, no per-day query quota, no billing account.

Base URL: https://google.fetcher.sh

Authentication

Two ways to pay, same data — full mechanics in the fetcher skill:

# 1. Prepaid credits (recommended — get a key at https://fetcher.sh/topup
#    or via POST /api/credits/topup, see the fetcher skill)
export FETCHER_API_KEY="bby_live_xxxxxxxxxxxx"
curl -H "Authorization: Bearer $FETCHER_API_KEY" \
  "https://google.fetcher.sh/api/search?query=hello"

# 2. x402 pay-per-call — omit the header; a GET with no payment returns 402
#    with machine-readable payment requirements (USDC on Base, Polygon,
#    Arbitrum, Monad, or Solana). @x402/fetch signs and retries automatically.

Every response is { "status": number, "message": string, "data": ... }; the HTTP status mirrors status.

Endpoint ($0.005/call)

EndpointWhat it returns
/api/searchGoogle web search results for a query

Required: query. Optional: safe (SafeSearch), page (pagination), hl (UI language, e.g. en), country (region scope), count (results per page — currently 10), noEncode (skip query re-encoding for pre-formatted operator strings).

Scenarios

Restrict to one site:

curl -H "Authorization: Bearer $FETCHER_API_KEY" \
  --data-urlencode "query=site:github.com x402 payments" -G \
  "https://google.fetcher.sh/api/search"

PDFs only:

curl -H "Authorization: Bearer $FETCHER_API_KEY" \
  --data-urlencode "query=agentic commerce filetype:pdf" -G \
  "https://google.fetcher.sh/api/search"

Exact phrase:

curl -H "Authorization: Bearer $FETCHER_API_KEY" \
  --data-urlencode 'query="pay per call api"' -G \
  "https://google.fetcher.sh/api/search"

Localized results (UK, French UI) and pagination:

curl -H "Authorization: Bearer $FETCHER_API_KEY" \
  --data-urlencode "query=agentic commerce" -G \
  --data-urlencode "country=GB" \
  --data-urlencode "hl=fr" \
  --data-urlencode "page=2" \
  "https://google.fetcher.sh/api/search"

Combine operators — title match plus site restriction:

curl -H "Authorization: Bearer $FETCHER_API_KEY" \
  --data-urlencode "query=intitle:pricing site:x402.org" -G \
  "https://google.fetcher.sh/api/search"

MCP

{
  "mcpServers": {
    "google-search": {
      "url": "https://google.fetcher.sh/mcp",
      "headers": { "Authorization": "Bearer bby_live_..." }
    }
  }
}

Free: search_endpoints, describe_endpoint, check_balance. Paid: fetch_data (any endpoint above), topup_credits, plus the named shortcut google_search. Drop the headers block to pay per call with x402 instead — see the fetcher skill for the full flow.

Errors

  • 400 — missing/invalid parameter (message names it)
  • 401 — unknown or rotated key
  • 402 — payment required (x402 challenge) or topup_required (credits exhausted)
  • 404 — not a priced path
  • No rate limits; no refunds on upstream failures (settlement precedes delivery)

Reference