Fetch Router について
Fetch Router は、個々のウェブページを確実に取得したいエージェント向けの MCP サーバーです。ブロックやログイン画面、空の JavaScript ページ、検証失敗を検出して別経路で再試行し、取得失敗は課金されません。
主な機能
- 01ページ読み込みと期待テキストの検証
- 02ブロックやログイン画面の検出
- 03別経路での再試行
- 04Markdown または HTML の返却
- 05ドメイン別の経路信頼性確認
活用シーン
- 01検索結果やユーザー提供リンクの読み取り
- 02Playwright を自前管理せず JavaScript ページを取得
- 03要約前にページの読み込みを確認
MCP 対応
ホステッド MCP サーバーは https://fetchrouter.dev/mcp で利用でき、ローカル stdio にも対応します。検証付き取得の `fetch_page` と、経路ごとの成功率を調べる `domain_reliability` を提供します。
設定
リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。
https://fetchrouter.dev/mcpclaude mcp add --transport http dev-fetchrouter-fetchrouter https://fetchrouter.dev/mcp{"mcpServers":{"dev-fetchrouter-fetchrouter":{"type":"http","url":"https://fetchrouter.dev/mcp"}}}Cursor で開く{"servers":{"dev-fetchrouter-fetchrouter":{"type":"http","url":"https://fetchrouter.dev/mcp"}}}VS Code で開く{"mcpServers":{"dev-fetchrouter-fetchrouter":{"type":"http","url":"https://fetchrouter.dev/mcp"}}}{"mcpServers":{"dev-fetchrouter-fetchrouter":{"serverUrl":"https://fetchrouter.dev/mcp"}}}コマンドはターミナルで実行し、JSON は各クライアントの MCP 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。
https://fetchrouter.dev/mcp認証が必要ツール
詳細
fetchrouter-mcp
Fetch Router の MCP サーバーです。ページが実際に読み込まれた場合にのみ課金される、AI エージェント向けの Web フェッチを提供します。
エージェントが受け取る 200 OK が、実際には Cloudflare のチャレンジ、DataDome のブロック、または空の React シェルであることがよくあります。その結果、エラーページを要約してしまいます。Fetch Router は、HTTP エラー、ブロックページやチャレンジページ(Cloudflare、DataDome、PerimeterX、Akamai、Imperva、Kasada など)、ログイン画面、空の JavaScript シェル、期待するテキストの有無をページごとに確認します。確認に失敗した場合は、ヘッドレスブラウザーなどの別の経路で再試行します。フェッチに失敗しても料金はかかりません。
使う場面
- エージェントが自分で選んでいないページを読み込む場合:検索結果、ユーザーからのリンク、自分で管理していないサイトなど。
- リクエストが 200 を返しただけでなく、ページが実際に読み込まれたかを確認する必要がある場合。
- ブラウザーが必要なシングルページアプリを対象にしており、自分で Playwright を実行したくない場合。
- リクエストごとではなく、正常に読み込めたページごとに料金を支払いたい場合。
使わない場面
- サイト全体のクロール、リンクのマッピング、検索。 クローラー(Firecrawl、Crawl4AI、Apify)を使用してください。Fetch Router は一度に 1 つの URL を処理します。
- ログインやペイウォールのあるページ。 ポリシーによりサポートされていません。
- よく知っているサイトが 1、2 件だけの場合。 通常の
fetchや独自の Playwright スクリプトのほうが安価です。 - 現時点で保護が厳しい小売サイトや旅行サイト。 プレミアムなブロック解除経路は、まだ顧客向けのトラフィックには対応していません。どのページが読み込めるかはベンチマークをご覧ください。
セットアップ
キーなしで、IP アドレスあたり 1 日最大 25 ページまで利用できます。それ以上利用する場合は、https://fetchrouter.dev/#signup で無料キーを取得してください(500 クレジット、カード不要)。
リモート(インストール不要)。 Streamable HTTP の https://fetchrouter.dev/mcp を使用し、ヘッダーにキーを指定します。
claude mcp add --transport http fetchrouter https://fetchrouter.dev/mcp --header "Authorization: Bearer fr_..."
キーなし(1 日あたりの無料利用枠)で試すこともできます。
claude mcp add --transport http fetchrouter https://fetchrouter.dev/mcp
その他のクライアント:URL は https://fetchrouter.dev/mcp、任意のヘッダーは Authorization: Bearer fr_...(または X-API-Key: fr_...)です。
Claude Code プラグイン(MCP サーバーと verified-fetch スキルを含みます。任意のキーを一度だけ尋ね、安全に保存します)。
claude plugin marketplace add JonnoGit/fetchrouter-mcp
claude plugin install fetchrouter@fetchrouter
ローカル(npx 経由の stdio)。
{
"mcpServers": {
"fetchrouter": {
"command": "npx",
"args": ["-y", "fetchrouter-mcp"],
"env": { "FETCHROUTER_API_KEY": "fr_..." }
}
}
}
Claude Code:claude mcp add fetchrouter -e FETCHROUTER_API_KEY=fr_... -- npx -y fetchrouter-mcp。無料の 1 日あたりの利用枠を使う場合は、キーを省略してください(-e … または env ブロックを省略)。
ツール
fetch_page(url, mode?, expect_text?, expect_selector?, max_cost?):Markdown(デフォルト)または HTML と、配信に使用された経路および試行した内容を返します。max_costはクレジットの上限です。1 は通常の HTTP のみ、2(デフォルト)はブラウザーを使用できます。ページを読み込めない場合は、エラーに理由(blocked:cloudflare、http_404、expect_text_missingなど)が示され、課金されません。domain_reliability(domain):実際に検証されたフェッチに基づく、過去 30 日間のサイトに対する経路ごとの成功率です。無料で、キーは不要です。
動作の信頼性
6 種類のサイトにある公開ページ 166 件の固定リストを、毎晩、通常の HTTP とヘッドレスブラウザーで、データセンターの IP アドレスからフェッチします。結果、手法、CSV:https://fetchrouter.dev/benchmark
料金
静的ページは 1 クレジット($0.001)、ブラウザーでレンダリングしたページは 2 クレジットです。失敗時は無料です。詳細:https://fetchrouter.dev/#pricing
環境変数(stdio)
| 変数 | デフォルト |
|---|---|
FETCHROUTER_API_KEY | 任意(指定しない場合:1 日 25 ページまで無料) |
FETCHROUTER_BASE_URL | https://fetchrouter.dev |
FETCHROUTER_MAX_CHARS | 60000(長いページは切り詰められます) |
開発
npm install
npm run build
FETCHROUTER_API_KEY=fr_... node dist/index.js
ツールの定義は src/tools.ts にあり、ホスト型エンドポイント https://fetchrouter.dev/mcp と共有されています。
MIT ライセンスです。One + Done LLC が運営しています。お問い合わせ先:[email protected]
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。