Scrapingdog について
Scrapingdogは、リアルタイムのウェブ・検索データを必要とするAIアシスタント向けのホスト型MCPサーバーです。Scrapingdog APIを利用する35種類のツールを提供し、クライアント側のインストールは不要です。
主な機能
- 01ライブウェブデータ用の35ツール
- 02Google検索、Maps、News、Shopping
- 03Amazon、LinkedIn、YouTube、X、Walmart、eBay
- 04スクリーンショットと汎用スクレイピング
- 05リクエスト単位のAPIキーを使うステートレス処理
活用シーン
- 01最新のGoogle検索結果の取得
- 02商品やマーケットプレイスの情報収集
- 03ソーシャルプラットフォーム情報の取得
- 04ウェブページの撮影やスクレイピング
MCP 対応
https://mcp.scrapingdog.com/mcp でホスト型MCPエンドポイントを提供します。MCPクライアントはBearer APIキーを使って、Scrapingdog APIに対応するツールを呼び出せます。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
npx -y scrapingdog-mcpSCRAPINGDOG_API_KEYシークレットYour Scrapingdog API key (from https://www.scrapingdog.com/ dashboard).SCRAPINGDOG_API_BASEOverride the Scrapingdog API base URL.SCRAPINGDOG_TIMEOUT_MSPer-request timeout in milliseconds.ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。
ツール
35掲載時のツール一覧 · 2 週間前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| url | string | はい | スクレイピングするページの絶対 URL。 |
| wait | number | いいえ | ページ読み込み後、キャプチャするまでの待機時間(ミリ秒)。dynamic=true の場合のみ有効です。 |
| country | string | いいえ | プロキシの地理的位置に使用する 2 文字の ISO 国コード(premium が必要)。(API のデフォルト:us) |
| dynamic | boolean | いいえ | true に設定すると、ヘッドレスブラウザーで JavaScript をレンダリングします。クレジットを多く消費します。(API のデフォルト:false) |
| premium | boolean | いいえ | true に設定すると、スクレイピングが難しいサイト向けに高性能(住宅)プロキシを使用します。(API のデフォルト:false) |
| ai_query | string | いいえ | AI を使ってページから特定のデータを抽出するための自然言語による指示。 |
| markdown | boolean | いいえ | 生の HTML ではなく、整形された Markdown に変換したページコンテンツを返します。(API のデフォルト:false) |
| session_number | number | いいえ | 安定した整数を渡すと、複数のリクエスト間で同じプロキシ IP を再利用します。 |
| ai_extract_rules | string | いいえ | 構造化 AI 抽出用のフィールド->指示ルールを含む JSON 文字列。 |
詳細
Scrapingdog MCP Server
Scrapingdog API 向けの Model Context Protocol サーバーです。https://mcp.scrapingdog.com/mcp でホストされています。
AI アシスタントに、Google の検索結果ページ、Maps、News、Shopping、Lens、Amazon、LinkedIn、YouTube、X、Walmart、eBay、スクリーンショット、汎用スクレイパーなど、ウェブの最新データを取得する 35 個のツールを提供します。それぞれ、対応する Scrapingdog エンドポイントを利用します。
インストールは不要です。クライアントで URL を指定し、ご自身の API キーを送信してください。
接続
Scrapingdog ダッシュボードで API キーを取得してから、次の手順を実行します。
Claude Code
claude mcp add --transport http scrapingdog https://mcp.scrapingdog.com/mcp \
--header "Authorization: Bearer YOUR_API_KEY"
Cursor / Windsurf / 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、認証方式「API key」を選択し、キーを貼り付けます。
手動で確認する
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"}'
呼び出し料金は送信したキーに請求され、REST API と同じクレジット数がかかります。各ツールの説明に料金が記載されています。
仕組み
MCP client ──Authorization: Bearer <key>──> mcp.scrapingdog.com ──api_key=<key>──> api.scrapingdog.com
このサーバーはステートレスです。リクエストごとに、そのリクエストで送信されたキーから MCP サーバーとトランスポートを構築し、レスポンスを返す際に破棄します。1 つのプロセスでセッションマップを使わずに複数の顧客にサービスを提供するため、キーがリクエストの処理後も残ることはなく、別の呼び出し元のセッションに漏れることもありません。npm run smoke は、ほかの項目とともに、これを正確に検証します。
キーは Scrapingdog 独自の /account エンドポイントで検証されます(ユーザーキーとチームメンバーキーを解決でき、クレジットは消費しません)。検証結果は短時間キャッシュされます。この確認にアクセスできない場合も、リクエストは通過させます。API 自体が各ツール呼び出しでキーを検証するためです。検証サービスの障害で MCP のすべての機能が停止してはなりません。このサービスでデータベースの認証情報が必要になることはありません。
構成
| パス | 内容 |
|---|---|
src/endpoints.ts | 35 個のエンドポイントを宣言します。API を追加するには、ここにオブジェクトを 1 つ追加するだけです。ハンドラーコードは不要です。 |
src/server.ts | MCP サーバーを構築し、レジストリから各ツールのスキーマを生成します |
src/client.ts | api.scrapingdog.com 用の HTTP クライアントです |
src/auth.ts | API キーの検証とキャッシュを行います |
src/http.ts | ホスト環境向けのエントリーポイント(Streamable HTTP)です |
src/index.ts | ローカル開発専用の stdio エントリーポイントです |
deploy/nginx/ | mcp.scrapingdog.com の vhost です |
ecosystem.config.cjs | pm2 アプリの定義です |
scripts/smoke.mjs | スタブ 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
対話形式で確認するには、次を実行します。
npx @modelcontextprotocol/inspector
# transport: Streamable HTTP, url: http://127.0.0.1:8731/mcp,
# header: Authorization: Bearer <your key>
設定は .env.example にあります。
デプロイ
このサーバーは API サーバーとは別の専用サーバーで実行されるため、ここで問題が起きても api.scrapingdog.com には影響しません。
初回、Ubuntu の新規サーバーでの手順:
git clone https://github.com/Darshan972/Scrapingdog-mcp.git ~/Scrapingdog-mcp
cd ~/Scrapingdog-mcp && bash deploy/setup-server.sh
これにより、Node(.nvmrc に指定されたバージョン)、pm2、nginx、vhost がインストールされ、アプリがビルドおよび起動されます。また、ファイアウォールを開き、TLS 証明書を発行します。DNS がまだこのサーバーを指していない場合は、明確なメッセージを表示して証明書の発行をスキップします。安全に再実行できます。
以降は、main へのプッシュごとに、型チェック、ビルド、スモークテストが実行され、すべて成功した後に pm2 reload でデプロイされます(.github/workflows/deploy.yml)。リポジトリシークレットが 3 つ必要です。
MCP_SERVER_HOST、MCP_SERVER_USER、MCP_SSH_PRIVATE_KEY。
デプロイのヘルスチェックでは、/healthz が 200 を返すことおよび認証なしの POST /mcp が 401 を返すことが求められます。そのため、ゲートウェイを誤って開放するデプロイは、成功扱いにならず失敗します。
アプリは 127.0.0.1 にバインドされるため、nginx 経由でのみアクセスできます。公開サーバーでは変更しないでください。キーの確認はこのプロセス内で行われるため、ポートを公開すると API へのオープンプロキシになってしまいます。
ライセンス
MIT
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。