# Scrapingdog [Health: Active]

**Category:** 🔎 Search & Data Extraction  
**Repository:** https://github.com/Darshan972/Scrapingdog-mcp  
**GitHub Stars:** 0  
**Views:** 0  
**Installs:** 0  
**Upvotes:** 0  
**Directory Page:** https://allmcps.com/mcp/scrapingdog

## Description
Scrapingdog web-scraping & SERP APIs: web scrape, Google, Amazon, LinkedIn, YouTube, and more.

## Tools
Capabilities this server exposes over MCP:

- **web_scrape** — url
- **google_search** — query
- **google_maps** — query
- **google_news** — — (`query` or a `*_token`)
- **google_trends** — query
- **google_shopping** — query
- **google_scholar** — query` (or `cites`)
- **google_jobs** — query
- **google_finance** — query
- **google_lens** — url
- **google_ai_mode** — query
- **google_ai_overview** — url
- **google_shorts** — query
- **google_hotels** — query`, `check_in_date`, `check_out_date
- **google_patents** — query
- **google_immersive_product** — page_token
- **google_images** — query
- **amazon_search** — query`, `domain`, `page`, `country
- **amazon_product** — asin
- **amazon_offers** — asin
- **walmart_search** — url
- **ebay_search** — url
- **linkedin_profile** — type`, `linkId
- **x_profile** — profileId
- **youtube_search** — search_query
- **youtube_transcripts** — v
- **youtube_video** — v
- **youtube_channel** — channel_id
- **youtube_comments** — v
- **bing_search** — query
- **baidu_search** — query
- **universal_search** — query
- **chatgpt** — prompt
- **screenshot** — url` (returns an image)

## Claude Desktop Quick Installation
Remote MCP endpoint (confidence: high). Install path detected from listing signals. Add as a URL/SSE server in your client:

```json
"mcpServers": {
  "scrapingdog": {
    "url": "https://modelcontextprotocol.io"
  }
}
```

## Documentation & README

# Scrapingdog MCP Server

A [Model Context Protocol](https://modelcontextprotocol.io) server that exposes the
[Scrapingdog](https://www.scrapingdog.com) web-scraping and SERP APIs as tools any
MCP-compatible client (Claude Desktop, Claude Code, Cursor, etc.) can call.

One tool per Scrapingdog product — general web scraping, the full Google family,
Amazon, Walmart, eBay, LinkedIn, X, YouTube, Bing, Baidu, and screenshots.

## Requirements

- Node.js ≥ 18
- A Scrapingdog API key — get one on your [dashboard](https://www.scrapingdog.com/).

## Install & build

```bash
npm install
npm run build
```

## Configuration

The server reads your API key from the **`SCRAPINGDOG_API_KEY`** environment
variable. It is never passed as a tool argument, so it stays out of the model's
context, transcripts, and logs.

| Variable | Required | Default | Description |
| --- | --- | --- | --- |
| `SCRAPINGDOG_API_KEY` | yes | — | Your Scrapingdog API key. |
| `SCRAPINGDOG_API_BASE` | no | `https://api.scrapingdog.com` | Override the API base URL. |
| `SCRAPINGDOG_TIMEOUT_MS` | no | `90000` | Per-request timeout in milliseconds. |

### Claude Desktop

Add to `claude_desktop_config.json`
(macOS: `~/Library/Application Support/Claude/claude_desktop_config.json`):

```json
{
  "mcpServers": {
    "scrapingdog": {
      "command": "node",
      "args": ["/absolute/path/to/ScrapingdogMCP/dist/index.js"],
      "env": {
        "SCRAPINGDOG_API_KEY": "your_api_key_here"
      }
    }
  }
}
```

### Claude Code

```bash
claude mcp add scrapingdog -e SCRAPINGDOG_API_KEY=your_api_key_here -- node /absolute/path/to/ScrapingdogMCP/dist/index.js
```

## Available tools

**35 tools.** Each tool's full parameter set (with descriptions and API
defaults) is generated from [`src/endpoints.ts`](src/endpoints.ts) and surfaced
to the client as the tool's input schema. All paths were validated against the
live API except `amazon_reviews` (⚠️) — see [Known issues](#known-issues).

### General

| Tool | Scrapingdog endpoint | Key required args |
| --- | --- | --- |
| `web_scrape` | `/scrape` | `url` |

### Google family

| Tool | Scrapingdog endpoint | Key required args |
| --- | --- | --- |
| `google_search` | `/google` | `query` |
| `google_maps` | `/google_maps` | `query` |
| `google_news` | `/google_news/v2` | — (`query` or a `*_token`) |
| `google_trends` | `/google_trends` | `query` |
| `google_shopping` | `/google_shopping` | `query` |
| `google_scholar` | `/google_scholar` | `query` (or `cites`) |
| `google_jobs` | `/google_jobs` | `query` |
| `google_finance` | `/google_finance` | `query` |
| `google_lens` | `/google_lens` | `url` |
| `google_ai_mode` | `/google/ai_mode` | `query` |
| `google_ai_overview` | `/google/ai_overview` | `url` |
| `google_shorts` | `/google_shorts` | `query` |
| `google_hotels` | `/google_hotels` | `query`, `check_in_date`, `check_out_date` |
| `google_patents` | `/google_patents` | `query` |
| `google_immersive_product` | `/google_immersive_product` | `page_token` |
| `google_images` | `/google_images` | `query` |

### E-commerce

| Tool | Scrapingdog endpoint | Key required args |
| --- | --- | --- |
| `amazon_search` | `/amazon/search` | `query`, `domain`, `page`, `country` |
| `amazon_product` | `/amazon/product` | `asin` |
| `amazon_reviews` ⚠️ | `/amazon/reviews` | `asin` |
| `amazon_offers` | `/amazon/offers` | `asin` |
| `walmart_search` | `/walmart/search` | `url` |
| `ebay_search` | `/ebay/search` | `url` |

### Social / professional

| Tool | Scrapingdog endpoint | Key required args |
| --- | --- | --- |
| `linkedin_profile` | `/linkedin` | `type`, `linkId` |
| `x_profile` | `/x/profile` | `profileId` |
| `youtube_search` | `/youtube` | `search_query` |
| `youtube_transcripts` | `/youtube/transcripts` | `v` |
| `youtube_video` | `/youtube/video` | `v` |
| `youtube_channel` | `/youtube/channel` | `channel_id` |
| `youtube_comments` | `/youtube/comments` | `v` |

### Other search engines

| Tool | Scrapingdog endpoint | Key required args |
| --- | --- | --- |
| `bing_search` | `/bing/search` | `query` |
| `baidu_search` | `/baidu/search` | `query` |
| `universal_search` | `/search` | `query` |

### AI / LLM & tools

| Tool | Scrapingdog endpoint | Key required args |
| --- | --- | --- |
| `chatgpt` | `/chatgpt` | `prompt` |
| `screenshot` | `/screenshot` | `url` (returns an image) |

## Known issues

All 35 endpoints were validated against the live API and return data, with one
exception:

- **`amazon_reviews`** — the `/amazon/reviews` route is correct, but the live
  endpoint currently responds `HTTP 400 "Something went wrong"` for every input
  (any ASIN, with or without extra params). This looks like a Scrapingdog
  backend/plan-scope issue rather than a wrapper bug. It stays marked with
  `verify: true` in `src/endpoints.ts` until it returns data. List flagged
  endpoints anytime with:

```bash
npm run list:unverified
```

## Adding or adjusting an endpoint

Every endpoint is a single declarative object in
[`src/endpoints.ts`](src/endpoints.ts) — no handler code to write. To add a
Scrapingdog product (e.g. Google Hotels, Patents, TikTok), append:

```ts
{
  tool: "google_hotels",
  title: "Google Hotels API",
  path: "/google_hotels",
  description: "…",
  params: [
    { name: "query", type: "string", required: true, description: "…" },
    // …
  ],
}
```

Rebuild with `npm run build`.

## Architecture

```
src/
  types.ts       Endpoint / EndpointParam type definitions
  endpoints.ts   Declarative registry of every Scrapingdog API
  client.ts      HTTP client: URL building, API-key resolution, error handling
  server.ts      Compiles each endpoint into an MCP tool + Zod input schema
  index.ts       stdio entry point
```

## License

MIT

