ScrapingDog-MCP
An MCP server that exposes all 77 ScrapingDog API endpoints as AI-ready tools, enabling web scraping, Google search, Amazon product data, LinkedIn profiles, YouTube transcripts, and more through a single API key.
README
πΆ ScrapingDog MCP Server
The complete Model Context Protocol server for ScrapingDog β all 77 API endpoints as AI-ready tools.
Give Claude (or any MCP client) the power to scrape any webpage, search Google, pull Amazon product data, read LinkedIn profiles, fetch YouTube transcripts, track Google Trends, and much more β through one API key.
Built by extracting the entire official documentation (~90 pages at scrapingdog.com/documentation) into machine-readable specs, then verifying endpoints against the live API β including fixing endpoints the official docs get wrong (see Deviations).
β‘ Quick start
1. Get an API key β free 200-credit trial, no credit card: api.scrapingdog.com/register
2. Install (pick your client):
Claude Code (recommended: user scope = available in every project)
claude mcp add --scope user scrapingdog -e SCRAPINGDOG_API_KEY=YOUR_KEY -- npx -y github:alessandrobenigni/ScrapingDog-MCP
Claude Desktop
Add to claude_desktop_config.json (Settings β Developer β Edit Config):
{
"mcpServers": {
"scrapingdog": {
"command": "npx",
"args": ["-y", "github:alessandrobenigni/ScrapingDog-MCP"],
"env": { "SCRAPINGDOG_API_KEY": "YOUR_KEY" }
}
}
}
Cursor / Windsurf / any MCP client
Same JSON shape as above in the client's MCP config (.cursor/mcp.json, ~/.codeium/windsurf/mcp_config.json, β¦).
From a local clone (fastest startup, easiest to hack on)
git clone https://github.com/alessandrobenigni/ScrapingDog-MCP.git
cd ScrapingDog-MCP
npm install
claude mcp add --scope user scrapingdog -e SCRAPINGDOG_API_KEY=YOUR_KEY -- node "$(pwd)/src/index.js"
3. Use it β just ask your AI naturally:
"Search Google for 'best espresso machine 2026' and summarize the top results" "Scrape this product page and extract the price" "Get the transcript of this YouTube video" "What's trending on Google Trends for 'AI agents' in the US this year?" "Pull the LinkedIn company profile for Anthropic" "How many ScrapingDog credits do I have left?" (β
accounttool)
That's it. No proxy management, no CAPTCHAs, no blocked requests.
π§° The 77 tools
Every tool maps 1:1 to a ScrapingDog endpoint, with every documented parameter typed and described. Credit costs are per successful request and are shown in each tool's description.
π Web Scraping
| Tool | What it does | Credits |
|---|---|---|
scrape |
Scrape any URL β raw HTML. JS rendering (dynamic), premium residential proxies (premium), geotargeting (country), sticky sessions (session_number), Cloudflare/CAPTCHA bypass (stealth_mode), custom header forwarding |
1β25 |
scrape_post |
Forward a POST body (forms, POST-only APIs) through the proxy layer | 1+ |
screenshot |
Screenshot any page (viewport or full-page, png/jpg/webp) β returned as an actual image | 5 |
π Google Search & AI
| Tool | What it does | Credits |
|---|---|---|
google_search |
Full SERP as JSON: organic results, ads, AI Overviews, knowledge graph, local pack, top stories, related questions/searches, inline images/videos/shopping, discussions, immersive products, pagination | 5 |
google_ai_mode |
Google's AI Mode answers | 10 |
google_ai_overview |
Standalone AI Overview extraction | 5 |
google_autocomplete |
Query suggestions | β |
google_lens |
Visual search by image URL | β |
πΊοΈ Google Maps, Trends, News
| Tool | What it does |
|---|---|
google_maps_search / google_maps_places / google_maps_reviews / google_maps_photos / google_maps_posts |
Complete Maps data: place search, place details, paginated reviews, photos, business posts |
google_trends / google_trends_autocomplete / google_trends_trending_now |
Interest over time, entity lookup, real-time trending topics |
google_news_search / google_news_v2 |
News SERP + the newer topic-token News API |
π Google Scholar & Patents
google_scholar Β· google_scholar_profiles Β· google_scholar_author Β· google_scholar_author_citation Β· google_scholar_cite Β· google_patents Β· google_patent_details
Tip:
google_patentsreturnspatent_idaspatent/US11734097B1/en; pass just the publication number (US11734097B1) togoogle_patent_details.
ποΈ Google Shopping & verticals
google_shopping Β· google_immersive_product Β· google_images Β· google_videos Β· google_shorts Β· google_finance Β· google_jobs Β· google_local Β· google_hotels Β· google_flights Β· google_ads_transparency
Multi-step flows are documented in the tool descriptions β e.g. Flights chains
departure_tokenβbooking_token; Shopping filters chain viashoprs.
π Other search engines
bing_search Β· bing_shopping Β· duckduckgo_search Β· baidu_search Β· universal_search (20 credits, engine-agnostic)
π¦ Amazon
| Tool | Credits |
|---|---|
amazon_product (by ASIN) |
1 (US) / 5 (other countries) |
amazon_search |
1 (US) / 5 (other) / +25 premium |
amazon_reviews Β· amazon_offers Β· amazon_autocomplete |
5 / 5 / β |
π Walmart, eBay, Flipkart, Myntra
walmart_product Β· walmart_search Β· walmart_reviews Β· walmart_autocomplete Β· ebay_search Β· ebay_product Β· flipkart_search Β· flipkart_product Β· myntra_search Β· myntra_product
Walmart/eBay/Flipkart/Myntra tools take the full target-site URL (locale lives in the domain, e.g.
ebay.co.uk).
πΌ LinkedIn, Jobs & Local
| Tool | What it does | Credits |
|---|---|---|
linkedin_person_profile |
Full person profile by public ID | 50β100 |
linkedin_company_profile |
Company/school profile | 10 |
linkedin_post |
Post data | 5 |
linkedin_jobs_search / linkedin_job_overview |
Job search + job details | 5 |
yelp_scraper / indeed_scraper / zillow_scraper |
Local businesses, job listings, real estate | 4 / 1 / 2 |
π± Social & Video
x_profile Β· x_post Β· tiktok_profile Β· tiktok_post Β· tiktok_ads Β· youtube_search Β· youtube_video Β· youtube_channel Β· youtube_comments Β· youtube_transcripts (only 1 credit!)
π€ AI & Utilities
| Tool | What it does | Credits |
|---|---|---|
chatgpt_scraper |
Send a prompt to ChatGPT, get the structured conversation back | 30 |
account |
Remaining credits, concurrency, plan info β costs nothing, check it anytime | 0 |
webhook |
Fire-and-forget async scraping: returns a sid immediately, result POSTs to your dashboard-configured webhook |
β |
ποΈ How it works
specs/*.json βββΊ src/index.js βββΊ 77 MCP tools over stdio
(source of truth) (generic engine)
specs/*.jsonβ nine category files holding every endpoint: exact URL, method, credit cost, every documented parameter (name/type/required/default/description), quirks, and response structure. Extracted from the full official docs on 2026-07-10.src/index.jsβ a single ~200-line engine. At startup it loads the specs and registers one tool per endpoint. To fix or extend an API, edit a JSON file β zero code changes.docs/*.mdβ distilled human-readable API reference per category (param tables, response shapes, gotchas).test/smoke.jsβ end-to-end test: boots the server over stdio as a real MCP client and makes live API calls.
Built-in robustness
| Concern | Handling |
|---|---|
| Your API key | Injected server-side from SCRAPINGDOG_API_KEY β never exposed as a tool parameter, never visible to the model |
| Rate limits / transient errors | Automatic retry (3 attempts, backoff) on 429 / 5xx |
| Slow scrapes | 90s client timeout (ScrapingDog's own limit is 60s) |
| Giant HTML pages | Capped at 400k chars with a clear truncation notice |
| Screenshots | Returned as real MCP image content (base64 png/jpg/webp), not text |
| API errors | Mapped to actionable hints (401 β bad key, 403 β plan doesn't include this API, 410 β target returned nothing, β¦) |
π§ͺ Verify your install
SCRAPINGDOG_API_KEY=YOUR_KEY npm test # macOS/Linux
$env:SCRAPINGDOG_API_KEY="YOUR_KEY"; npm test # Windows PowerShell
Boots the server, lists all 77 tools, and makes 4 live calls (account, google_search, scrape, youtube_transcripts). Uses ~7 credits.
β οΈ Deviations from the official docs
Found and fixed by testing against the live API (2026-07-10):
- YouTube endpoints β the docs list
https://api.scrapingdog.com/youtubefor all five YouTube APIs. That URL returns the ScrapingDog web app, not data. The real endpoints (used by this server) are/youtube/search,/youtube/video,/youtube/channel,/youtube/comments,/youtube/transcripts. youtube_videoparameter β docs sayvideo_id; the live API rejects it and requiresv.- Datacenter proxy mode (
http://scrapingdog:APIKEY@proxy.scrapingdog.com:8081) is a passthrough HTTP proxy, not a REST endpoint β documented in docs/engines-utilities.md but intentionally not exposed as a tool. - Where the docs omit a credit cost or response sample (a handful of endpoints), the tool description says so explicitly rather than guessing.
π³ Credits, limits & error codes
- Free plan: 200 credits/month. Every tool description states its cost;
accountis free and shows your balance. - Cost-saving tip:
scrapedefaults to JS rendering (5 credits). Passdynamic: falsefor static pages β 1 credit. - Requests time out server-side after 60 seconds; concurrency is limited per plan tier (excess β 429, which this server retries automatically).
| Code | Meaning |
|---|---|
| 200 | Success |
| 202 | Accepted, queued |
| 400 | Bad request β check parameters |
| 401 | Invalid or missing API key |
| 403 | Your plan doesn't include this API |
| 404 | Resource not found |
| 410 | Target URL returned no content |
| 429 | Rate limit β auto-retried |
π§ Troubleshooting
| Symptom | Fix |
|---|---|
Server exits immediately: SCRAPINGDOG_API_KEY ... not set |
Pass the key via -e (Claude Code) or the env block (JSON configs) |
401 Unauthorized on every call |
Key is wrong/expired β check your dashboard |
403 Forbidden on one specific tool |
That API isn't in your plan tier |
npx install is slow on first launch |
It's cloning + installing once; subsequent launches use the cache. Or use the local-clone install |
| Tool returns truncated HTML | Expected on huge pages (400k-char cap) β scrape a more specific URL or use a structured tool instead of raw scrape |
| Windows: server won't start from a path with spaces | Quote the path in your config: "args": ["C:\\path with spaces\\src\\index.js"] |
πΊοΈ Repo map
βββ src/index.js # the server (spec-driven engine)
βββ specs/ # machine-readable endpoint specs β the source of truth
β βββ web-scraping.json
β βββ google-search.json
β βββ google-ai-maps-trends.json
β βββ google-news-scholar-patents.json
β βββ google-shopping-other.json
β βββ engines-utilities.json
β βββ amazon-walmart.json
β βββ ecommerce.json
β βββ profiles-jobs-local.json
β βββ social-youtube.json
βββ docs/ # human-readable API reference per category
βββ test/smoke.js # live end-to-end test
βββ .env.example
π€ Contributing
ScrapingDog ships new APIs regularly. Adding one is trivial:
- Add an endpoint object to the matching
specs/*.json(or a new spec file) βtool_name,endpoint,params,credits,description,response_summary. - Restart the server. The tool exists.
- Run
npm test, open a PR.
π License
MIT Β© Alessandro Benigni
Not affiliated with ScrapingDog β an independent MCP integration. ScrapingDog is a product of its respective owners. Use responsibly and in accordance with the terms of service of the sites you scrape.
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.