Help us improve
Share bugs, ideas, or general feedback.
From serpapi
Searches Google, Bing, Amazon, Walmart, YouTube, Google Maps, and 100+ engines via SerpApi REST API. Useful for retrieving search results, product prices, local businesses, academic papers, news, jobs, and SERP analysis.
npx claudepluginhub serpapi/serpapi-claude-plugin --plugin serpapiHow this skill is triggered — by the user, by Claude, or both
Slash command
/serpapi:searchThis skill is limited to the following tools:
The summary Claude sees in its skill listing — used to decide when to auto-load this skill
Search any engine via a single REST endpoint. Each API call costs one search credit.
Fetches live SERP results via SerpAPI for keywords, local map packs, People Also Ask, AI Overviews, SERP features from Google, Bing, and Maps.
Searches the web via Bright Data CLI: `bdata search` for Google/Bing/Yandex SERP results, `bdata discover` for intent-ranked semantic discovery with optional page content. Hands off to `scrape` or `data-feeds` when appropriate.
Extracts structured Google search data using SerpApi: organic results, knowledge graph, answer boxes, PAA, pagination. For search apps, SEO monitoring, data extraction.
Share bugs, ideas, or general feedback.
Search any engine via a single REST endpoint. Each API call costs one search credit.
Important: Always use Bash(curl ...) to call the SerpApi REST API. Do not use WebFetch, WebSearch, or any other HTTP tool.
The API key must be set as an environment variable:
export SERPAPI_API_KEY="your_key_here"
If SERPAPI_API_KEY is not set, tell the user:
Set your SerpApi API key:
export SERPAPI_API_KEY="your_key"— get one free at https://serpapi.com/manage-api-key
Every search follows the same pattern regardless of engine:
curl -s "https://serpapi.com/search.json?engine=ENGINE&QUERY_PARAM=QUERY&api_key=$SERPAPI_API_KEY"
The only things that vary per engine are:
engine valueq, k, query, etc.)Pick the engine based on user intent:
Default to google_light for general web searches — it's faster and cheaper than google. Use google only when you need knowledge graph, ads, or advanced SERP features.
Each engine has its own parameters documented in a JSON schema file at engines/<engine_name>.json relative to this plugin's root directory. Read the relevant file when you need engine-specific parameter details.
The JSON schema structure:
params: engine-specific parameters (query, filters, pagination, etc.)common_params: shared SerpApi parameters (api_key, device, no_cache, etc.)description, optional required, type, options, and group fields.These work across most engines:
| Param | Description |
|---|---|
location | Search origin (city-level recommended). E.g., Austin, Texas, United States |
gl | Country code. E.g., us, uk, fr |
hl | Language code. E.g., en, es, de |
device | desktop (default), tablet, or mobile |
no_cache | true to force fresh results (costs a credit; cached results are free) |
num | Number of results (where supported) |
start / page | Pagination. Google uses start (0, 10, 20...), Amazon/Walmart use page (1, 2, 3...) |
json_restrictor | Restrict response fields for smaller payloads. E.g., organic_results.title,organic_results.link |
SerpApi returns structured JSON. Key top-level fields vary by engine:
organic_results, knowledge_graph, answer_box, related_questions, local_resultsshopping_results or organic_results (with price, rating, etc.)local_results (with address, rating, GPS coordinates, phone)organic_results (with citation_id, cited_by count, PDF links)news_resultsimages_resultsbest_flights, other_flights, price_insightsjobs_resultssummary, financials, graphAlways summarize results for the user. Never dump raw JSON unless explicitly asked.
Use json_restrictor to reduce response size when you only need specific fields.
For price comparisons or cross-engine research, query multiple engines sequentially:
# Compare prices across Amazon, Walmart, and Google Shopping
curl -s "https://serpapi.com/search.json?engine=amazon&k=airpods+pro&api_key=$SERPAPI_API_KEY"
curl -s "https://serpapi.com/search.json?engine=walmart&query=airpods+pro&api_key=$SERPAPI_API_KEY"
curl -s "https://serpapi.com/search.json?engine=google_shopping&q=airpods+pro&api_key=$SERPAPI_API_KEY"
Consolidate and compare the results for the user.
curl via Bash. Never use WebFetch, WebSearch, or other HTTP tools. The allowed-tools header restricts this skill to Bash(curl *) and Read.google_light over google for simple web searches.no_cache=false (the default) to benefit from free cached results.+ or %20.engines/<engine>.json when you need to look up available parameters for a specific engine.