Google Search (via Apify)
Google web search for AI agents: title, link and snippet in Custom Search JSON API format.
Installation
Ajoutez ceci à la configuration MCP de votre client (Claude Desktop : claude_desktop_config.json ; Cursor : .cursor/mcp.json ; VS Code et les autres utilisent la même forme « mcpServers »).
claude mcp add --transport http google-search-via-apify 'https://mcp.apify.com/?tools=automationnation/google-custom-search-api' --header 'Authorization: <Your Apify API token, sent as '\''Bearer <token>'\''. Get it at https://console.apify.com/settings/integrations (free account).>'
{
"mcpServers": {
"google-search-via-apify": {
"type": "http",
"url": "https://mcp.apify.com/?tools=automationnation/google-custom-search-api",
"headers": {
"Authorization": "<Your Apify API token, sent as 'Bearer <token>'. Get it at https://console.apify.com/settings/integrations (free account).>"
}
}
}
}
Documentation
Tirée du README du projet sur GitHub, actualisée chaque semaine. Les liens ouvrent GitHub.
Sommaire
Google Custom Search JSON API alternative: same requests, same JSON
Google Custom Search API Alternative is an Apify Actor that replaces Google's Custom Search JSON API, which Google has closed to new customers and retires on 1 January 2027. It answers the same /customsearch/v1 requests with the same JSON (items with title, link, displayLink and snippet, plus image search), built from live Google results, at $5 per 1,000 searches with no daily cap.
Price: $5 per 1,000 searches of up to 10 results ($4 on Gold and above) · Run it: https://apify.com/automationnation/google-custom-search-api · Guide: https://retracn.github.io/automationnation-actors/google-custom-search-api/
Quick facts
- Drop-in endpoint: replace https://www.googleapis.com/customsearch/v1 with https://automationnation--google-custom-search-api.apify.actor/customsearch/v1 and send your Apify token (token=… or Authorization: Bearer) instead of key=.
- Same parameters: q, num, start, gl, hl, lr, cr, safe, dateRestrict, siteSearch, exactTerms, excludeTerms, orTerms, fileType and searchType=image with its image filters; cx is accepted and ignored.
- Open WebUI: pick the External web search engine with URL https://automationnation--google-custom-search-api.apify.actor/search and your Apify token as the key, to keep Google results now that Google PSE is closed to new customers.
- SearXNG-compatible route for AnythingLLM and other SearXNG clients: https://automationnation--google-custom-search-api.apify.actor/searxng?token=YOUR_APIFY_TOKEN returns Google results in SearXNG's JSON format.
- Same JSON: kind, queries.request and nextPage, searchInformation and items[] with title, htmlTitle, link, displayLink, snippet, htmlSnippet and formattedUrl (image items add mime and image.contextLink, width, height, byteSize, thumbnailLink).
- Web searches use Google's "Web" results view: ten plain results per page without the AI Overview, ads or video and forum boxes, close to what the API returned.
- Differences: it searches the whole web (pass site lists as siteSearch or site: operators), totalResults is a lower bound, there is no pagemap, and a request takes about 4–10 seconds.
- Price: $5 per 1,000 searches of up to 10 results, the price Google charged; searches with no results are free and there is no daily cap.
Use it as a drop-in Custom Search JSON API
Change the endpoint and the key; keep the rest of your code:
| Before | After | |
|---|---|---|
| Endpoint | https://www.googleapis.com/customsearch/v1 | https://automationnation--google-custom-search-api.apify.actor/customsearch/v1 |
| Auth | key=YOUR_GOOGLE_KEY&cx=YOUR_ENGINE_ID | token=YOUR_APIFY_TOKEN or header Authorization: Bearer YOUR_APIFY_TOKEN |
curl "https://automationnation--google-custom-search-api.apify.actor/customsearch/v1?q=best+crm+for+startups&num=10&token=$APIFY_TOKEN"
Python (examples/cse_requests.py) and JavaScript (examples/cse_fetch.mjs) versions are in examples/. The response is the API's JSON: items[].title, link, displayLink, snippet, queries.nextPage and searchInformation; searchType=image works too.
Example input
{
"queries": [
"best project management software"
],
"maxResultsPerQuery": 10
}
Run it from code
REST API
curl -X POST "https://api.apify.com/v2/acts/automationnation~google-custom-search-api/run-sync-get-dataset-items?token=$APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{"queries": ["best project management software"], "maxResultsPerQuery": 10}'
Python — see examples/python_example.py
# pip install apify-client
from apify_client import ApifyClient
client = ApifyClient("YOUR_APIFY_TOKEN")
run = client.actor("automationnation/google-custom-search-api").call(run_input={
"queries": [
"best project management software"
],
"maxResultsPerQuery": 10
})
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
print(item.get("title"), item.get("link"), item.get("displayLink"), item.get("snippet"))
JavaScript — see examples/node_example.mjs
// npm install apify-client
import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: 'YOUR_APIFY_TOKEN' });
const run = await client.actor('automationnation/google-custom-search-api').call({
"queries": [
"best project management software"
],
"maxResultsPerQuery": 10
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
for (const item of items) console.log(item.title, item.link, item.displayLink, item.snippet);
Use it with AI agents (MCP)
Hosted MCP server URL (Claude, ChatGPT, Cursor and other clients with remote MCP support):
https://mcp.apify.com?tools=automationnation/google-custom-search-api
Local config for Claude Desktop / Cursor — mcp/claude_desktop_config.json:
{
"mcpServers": {
"google-custom-search-api": {
"command": "npx",
"args": [
"-y",
"@apify/actors-mcp-server",
"--tools",
"automationnation/google-custom-search-api"
],
"env": {
"APIFY_TOKEN": "YOUR_APIFY_TOKEN"
}
}
}
}
FAQ
When does the Custom Search JSON API stop working? Google closed it to new customers and says existing customers have until 1 January 2027 to move to an alternative.
Do I have to rewrite my code? No. Change the endpoint to https://automationnation--google-custom-search-api.apify.actor/customsearch/v1 and send an Apify API token instead of the Google key; the parameters and the JSON response stay the same.
Can I keep my Programmable Search Engine's site list? Not through cx, which is ignored. Pass one site as siteSearch, or several in the query as site:a.com OR site:b.com.
What does it cost? $5 per 1,000 searches of up to 10 results ($4.50 on Silver, $4 on Gold and above), with no daily cap. Google charged $5 per 1,000 after 100 free queries a day; Apify's free plan includes $5 of monthly credit, about 1,000 searches.
More from AutomationNation
- AI Visibility Tracker — $0.05 per answer checked ($0.04 on Gold) + $0.50 per optional report · GitHub examples
- Google Jobs Scraper — $2 per 1,000 jobs ($1.50 on paid plans) + $0.03 per search · GitHub examples
- YouTube Transcript Scraper — $1.50 per 1,000 transcripts ($1.20 on Gold and above) · GitHub examples
- Google Shopping Scraper — $1 per 1,000 products ($0.80 on Gold and above) · GitHub examples
- Google Flights Scraper — $0.20 per 1,000 flights ($0.16 on Gold and above) · GitHub examples
- Google Hotels Scraper — $1 per 1,000 hotels ($0.80 on Gold and above) · GitHub examples
- Google Ads Transparency Scraper — $1 per 1,000 ads ($0.80 on Gold and above) · GitHub examples
- Google News Scraper — $1 per 1,000 articles ($0.80 on Gold and above) · GitHub examples
- Google Images Scraper — $0.25 per 1,000 images ($0.20 on Gold and above) · GitHub examples
- Google Videos Scraper — $1 per 1,000 videos ($0.80 on Gold and above) · GitHub examples
- Google Trends Scraper — $1 per 1,000 keyword reports ($0.27–$0.90 on paid plans) · $0.50 per 1,000 trending searches · GitHub examples
- App Store Reviews Scraper — $0.08 per 1,000 reviews ($0.05–$0.07 on paid plans) · GitHub examples
- Google Play Reviews Scraper — $0.08 per 1,000 reviews ($0.05–$0.07 on paid plans) · GitHub examples
- AEO & GEO Tracker — Google AI Overview Citation Checker — $0.04 per keyword ($0.032 on Gold), plus $2 per run from 17 Nov 2026; $0.01 per keyword until 16 Oct 2026 · GitHub examples
- Google Maps Leads Scraper — $0.03 per lead ($0.024 on Gold); $0.08 per business found with the no-website or unclaimed filters · GitHub examples
- Google Maps Leads Scraper UK — $0.05 per lead ($0.04 on Gold) · GitHub examples
- App Store & Google Play Reviews Scraper + AI — $0.05 per app report ($0.04 on Gold) · GitHub examples
- UK Companies House Leads — Filing Signals & AI Outreach — $0.008 per lead
- Contact Waterfall Enrichment — Emails & Directors — $0.015 per company
- All Actors and guides · AI visibility trackers compared · Google Jobs scrapers compared · Google Trends scrapers compared · App Store review scrapers compared · Google Play review scrapers compared · YouTube transcript scrapers compared · Google Flights scrapers compared · Google Hotels scrapers compared · Google Ads Transparency scrapers compared · Google Shopping scrapers compared · Google News scrapers compared
This repository holds usage examples. The scraper itself runs on the Apify platform; you need a free Apify account and API token. Examples are MIT licensed.
Questions fréquentes
Qu'est-ce que Google Search (via Apify) ?
Google web search for AI agents: title, link and snippet in Custom Search JSON API format.
Comment installer Google Search (via Apify) ?
Il fonctionne comme serveur distant. Dans Claude Code : claude mcp add --transport http google-search-via-apify 'https://mcp.apify.com/?tools=automationnation/google-custom-search-api' --header 'Authorization: <Your Apify API token, sent as '\''Bearer <token>'\''. Get it at https://console.apify.com/settings/integrations (free account).>'. Pour les autres clients, collez la configuration JSON de cette page dans leurs réglages MCP.
Faut-il une clé API pour Google Search (via Apify) ?
Oui. Il attend Authorization, à renseigner dans sa configuration.
Google Search (via Apify) est-il open source ?
Oui. Son code est sur GitHub sous licence MIT.
Qui maintient Google Search (via Apify) ?
Il est publié par retracn. AI.tn le référence sans le maintenir ni le recommander.
Issu du registre MCP officiel. Être listé n'est pas une recommandation : vérifiez le code et les permissions d'un serveur avant de lui donner accès à vos données.