Region Fetch について
Region Fetchは、指定した国の訪問者に見える形で公開HTTPS URLを取得するMCPサーバーです。Ed25519署名付きレシートを返し、モデルに渡す前に署名とレスポンス本文を検証します。
主な機能
- 01国を指定した公開HTTPS URLの取得
- 02HTTPモードとブラウザーモード
- 03Ed25519署名付きレシートの生成
- 04署名とレスポンス本文の検証
活用シーン
- 01国ごとのウェブサイト表示の確認
- 02取得結果の出所と完全性の検証
MCP 対応
stdioのMCPサーバーとして`regionfetch`ツールを1つ公開し、指定国からURLを取得して検証済みレシートを返します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
npx -y regionfetch-mcpREGION_FETCH_WALLET_PRIVATE_KEYシークレットPrivate key of a funded Base wallet. The server signs one fresh x402 authorization per tool call. Keep it in the host's env block; it is never a tool argument.REGION_FETCH_MAX_PAYMENTPer-payment ceiling, for example "$0.10". Use "off" to disable the cap.REGION_FETCH_BASE_URLDeployment origin.REGION_FETCH_PAYMENT_SIGNATUREシークレットA single pre-made x402 authorization. Funds exactly one request, so this is for one-shot testing only; prefer the wallet key.ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。
ツール
1掲載時のツール一覧 · 2 週間前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| url | string | はい | 取得する公開 HTTPS URL。 |
| mode | enum | いいえ | 軽量なリクエストには http、JavaScript のレンダリングには browser を指定します。既定値は http です。http | browser |
| country | enum | はい | リクエストの送信元となる国。US | DE | JP | BR | IN |
詳細
regionfetch-mcp
Region Fetch 用の MCP サーバーです。特定の国の訪問者に表示される内容で、公開 HTTPS URL を取得し、取得元を証明する署名付き Ed25519 レシートを返します。
プレリリース版です。 まだ npm に公開されていません。ソースからビルドしてください: https://github.com/regionfetch/regionfetch
npx -y regionfetch-mcp
Node 20.11 以降が必要です。stdio トランスポートを使用します。ツールは regionfetch の1つだけを公開します。
設定
ウォレットモード(推奨)
{
"mcpServers": {
"regionfetch": {
"command": "npx",
"args": ["-y", "regionfetch-mcp"],
"env": {
"REGION_FETCH_BASE_URL": "https://regionfetch.dev",
"REGION_FETCH_WALLET_PRIVATE_KEY": "0x...",
"REGION_FETCH_MAX_PAYMENT": "$0.10"
}
}
}
}
サーバーはツール呼び出しごとに、新しい x402 認証を1つ署名します。最初のリクエスト以降も動作し続ける設定は、これだけです。
静的署名(テスト専用)
"env": { "REGION_FETCH_PAYMENT_SIGNATURE": "<one x402 authorization>" }
1つの認証で支払えるのは1回のリクエストだけなので、2回目のツール呼び出しは失敗します。サーバーは起動時に stderr でそのことを知らせます。1回限りの互換性チェックには便利ですが、稼働中のサーバーには適していません。
両方が設定されている場合は、ウォレットモードが優先されます。
環境変数
| 変数 | デフォルト | 用途 |
|---|---|---|
REGION_FETCH_BASE_URL | https://regionfetch.dev | デプロイ先のオリジンです。末尾の /api は削除されます。 |
REGION_FETCH_WALLET_PRIVATE_KEY | — | 資金がある Base ウォレットのキーです。ウォレットモードを有効にします。 |
REGION_FETCH_MAX_PAYMENT | $0.10 | 1回あたりの支払い上限です。off で無効になります。 |
REGION_FETCH_PAYMENT_SIGNATURE | — | 事前に作成した認証を1つ指定します。 |
REGION_FETCH_RPC_URL | — | 支払いの構築時にオンチェーンデータを読み取るための RPC エンドポイントです。 |
REGION_FETCH_TIMEOUT_MS | 120000 | リクエストごとのタイムアウトです。 |
REGION_FETCH_ALLOW_INSECURE_HTTP | 0 | http:// のベース URL を許可します。開発専用です。 |
旧形式の GEOFETCH_BASE_URL、GEOFETCH_PAYMENT_SIGNATURE、PAYMENT_SIGNATURE も引き続き読み込まれますが、正式な名前が優先されます。これらを使用すると、stderr に非推奨であることが報告されます。
ツール
regionfetch — url(https、最大 2048 文字)、country
(US | DE | JP | BR | IN)、mode(http | browser、デフォルトは http)。
結果には v1 エンベロープを使用します:
{
"status": 200,
"ok": true,
"response": { "data": { "...": "..." }, "receipt": { "...": "..." } },
"verification": { "valid": true, "signatureValid": true, "bodyHashMatches": true }
}
verification は追加フィールドです。サーバーはレシートをモデルに渡す前に、デプロイ先で公開されているキーと返却された本文を使って検証します。status、ok、response だけを読み取るコンシューマーには影響しません。
2xx 以外のレスポンスでは、上流のステータスと JSON 本文をそのまま維持し、isError: true を設定します。終端の支払い失敗(502、504)では、署名付きレシートを維持します。これは支払いを伴う試行が行われたことを示す証拠です。
セキュリティ
- ウォレットキーと支払い認証は、ツール引数として受け付けられることも、stdout または stderr に書き込まれることも、ツール出力として返されることもありません。
- stdout には JSON-RPC のみが出力されます。すべての診断情報は、機密情報を秘匿するロガーを通じて stderr に送られます。テストではその両方を検証します。
- 公開されるのは
tools機能だけです。リソース、プロンプト、サブスクリプションは実装も主張もされていません。
ドキュメント全文:https://github.com/regionfetch/regionfetch
MIT
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。