Scrapingdog web-scraping & SERP APIs: web scrape, Google, Amazon, LinkedIn, YouTube, and more.
MCPpedia last refreshed this data
io.github.Darshan972/scrapingdog-mcp is an MCP server that scrapingdog web-scraping & SERP APIs: web scrape, Google, Amazon, LinkedIn, YouTube, and more. Its tool list has not been published yet over stdio and sse, requires no API key, and scores 82/100 on MCPpedia's security, maintenance and efficiency rubric.
Config is the same across clients - only the file and path differ.
{
"mcpServers": {
"scrapingdog": {
"env": {
"SCRAPINGDOG_API_KEY": "your_api_key_here"
},
"args": [
"/absolute/path/to/ScrapingdogMCP/dist/index.js"
],
"command": "node"
}
}
}Are you the author?
Add this badge to your README to show your security score and help users find safe servers.
Scrapingdog web-scraping & SERP APIs: web scrape, Google, Amazon, LinkedIn, YouTube, and more.
This server supports HTTP transport. Be the first to test it - help the community know if it works.
Five weighted categories - click any category to see the underlying evidence.
No known CVEs.
Checked scrapingdog-mcp against OSV.dev.
Click any tool to inspect its schema.
Be the first to review
Have you used this server?
Share your experience - it helps other developers decide.
Sign in to write a review.
Others in other
Private-by-default, local-first memory/context/task orchestrator for MCP apps and agents.
Compress tool outputs, logs, files, and RAG chunks before they reach the LLM. 60-95% fewer tokens, same answers. Library, proxy, MCP server.
SQL for Android APK and DEX files: classes, methods, strings, references and smali.
System 1 decision models (Jev, Laya, Cua-S1) as brain for agents: Browser use, computer use, games and robotics
MCP Security Weekly
Get CVE alerts and security updates for io.github.Darshan972/scrapingdog-mcp and similar servers.
Start a conversation
Ask a question, share a tip, or report an issue.
Sign in to join the discussion.
The Model Context Protocol server for the
Scrapingdog APIs, hosted at https://mcp.scrapingdog.com/mcp.
It gives an AI assistant 35 tools for live web data — Google SERPs, Maps, News, Shopping, Lens, Amazon, LinkedIn, YouTube, X, Walmart, eBay, screenshots and a general-purpose scraper — each backed by the corresponding Scrapingdog endpoint.
There is nothing to install. Point your client at the URL and send your own API key.
Get an API key from the Scrapingdog dashboard, then:
Claude Code
claude mcp add --transport http scrapingdog https://mcp.scrapingdog.com/mcp \
--header "Authorization: Bearer YOUR_API_KEY"
Cursor / Windsurf / any client with an mcp.json
{
"mcpServers": {
"scrapingdog": {
"url": "https://mcp.scrapingdog.com/mcp",
"headers": { "Authorization": "Bearer YOUR_API_KEY" }
}
}
}
claude.ai — Settings → Connectors → Add custom connector, URL
https://mcp.scrapingdog.com/mcp, authentication "API key", paste your key.
Check it by hand
curl -s https://mcp.scrapingdog.com/mcp \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-H "Accept: application/json, text/event-stream" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'
Calls are billed to the key you send, at the same credit cost as the REST API. A tool's description states what it costs.
MCP client ──Authorization: Bearer <key>──> mcp.scrapingdog.com ──api_key=<key>──> api.scrapingdog.com
The server is stateless: every request builds its own MCP server and transport from the key on
that request and tears them down with the response. One process serves many customers without a
session map, so a key never outlives the request it came on and cannot leak into another caller's
session. npm run smoke asserts exactly that, among other things.
Keys are verified against Scrapingdog's own /account endpoint (which resolves user keys and team
member keys, and costs no credits), cached briefly. If that check is unreachable the request is let
through, because the API itself still enforces the key on every tool call — an outage in the
verifier must not take the whole MCP surface down. No database credentials are needed anywhere in
this service.
| Path | What it is |
|---|---|
src/endpoints.ts | The 35 endpoints, declared. Adding an API means appending one object here — no handler code. |
src/server.ts | Builds the MCP server and derives each tool's schema from that registry |
src/client.ts | The HTTP client for api.scrapingdog.com |
src/auth.ts | API-key verification and caching |
src/http.ts | The hosted entry point (Streamable HTTP) |
src/index.ts | A stdio entry point, for local development only |
deploy/nginx/ | The mcp.scrapingdog.com vhost |
ecosystem.config.cjs | pm2 app definition |
scripts/smoke.mjs | Pre-deploy checks against a stubbed API |
npm ci
npm run build
npm run smoke # stubs the API: no key needed, no credits spent
npm run dev # the HTTP server on http://127.0.0.1:8731/mcp
SCRAPINGDOG_API_KEY=... npm run dev:stdio # stdio, for poking at one tool
Inspect it interactively:
npx @modelcontextprotocol/inspector
# transport: Streamable HTTP, url: http://127.0.0.1:8731/mcp,
# header: Authorization: Bearer <your key>
Settings live in .env.example.
The server runs on its own box, separate from the API servers, so a problem here cannot affect api.scrapingdog.com.
First time, on a bare Ubuntu box:
git clone https://github.com/Darshan972/Scrapingdog-mcp.git ~/Scrapingdog-mcp
cd ~/Scrapingdog-mcp && bash deploy/setup-server.sh
That installs Node (from .nvmrc), pm2, nginx and the vhost, builds and starts