MCP-Enabled Cloudflare Worker for Claude について
MCP-Enabled Cloudflare Worker for Claudeは、Cloudflare Workersで動作するMCPサーバーです。Claudeから天気、IPジオロケーション、Google検索、カスタムHTTPリクエストを利用できます。
主な機能
- 01都市の現在の天気を取得
- 02IPのジオロケーション情報を照会
- 03Google検索を実行
- 04カスタムHTTPリクエストを中継
- 05サービスごとのAPIキーを設定
活用シーン
- 01会話中に都市の天気を確認
- 02IPアドレスの位置情報を調査
- 03ウェブを検索
- 04エンドポイントにカスタムリクエストを送信
MCP 対応
Cloudflare WorkerがMCPを実装し、ClaudeなどのMCPクライアントに天気、IPジオロケーション、Google検索、HTTPリクエストのツールを提供します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
Claude 向けの MCP 対応 Cloudflare Worker
このリポジトリには、Model Context Protocol(MCP)を実装した Cloudflare Worker が含まれています。これにより、Claude は会話からさまざまな外部サービスや API に直接アクセスできます。
機能
この Worker では、Claude が次のツールを使用できます。
- 天気情報:任意の都市の現在の天気情報を取得します
- IP ジオロケーション:任意の IP アドレスの詳細情報を検索します
- ウェブ検索:結果数を指定して Google 検索を実行します
- HTTP リクエストプロキシ:ヘッダー、メソッド、本文データを完全に制御して、任意のエンドポイントにカスタム HTTP リクエストを送信します
セットアップ手順
前提条件
- Node.js と npm がインストールされていること
- Cloudflare アカウント
インストール
- Wrangler CLI をインストールする
npm install -g wrangler
- Cloudflare にログインする
wrangler login
- このリポジトリをクローンする
git clone https://github.com/anishgowda21/cf-mcp-server.git
cd cf-mcp-server
- 依存関係をインストールする
npm install
- MCP をセットアップする
npx workers-mcp setup
設定
wrangler.toml ファイルではなく、Cloudflare ダッシュボードで次の環境変数を設定してください(セキュリティ上、こちらを推奨します)。
OPENWEATHERMAP_API_KEY(天気情報用)IPINFO_API_KEY(IP ジオロケーション用)GOOGLE_API_KEY(ウェブ検索用)GOOGLE_CX(ウェブ検索用)
設定手順:
- Cloudflare ダッシュボードを開きます
- Workers & Pages に移動します
- Worker を選択します
- Settings > Variables に移動します
- 「Environment Variables」に環境変数を追加します
注:特定のサービスが不要な場合は、その API キーを設定しなくてもかまいません。対応する関数を呼び出すとエラーが返されますが、Worker のほかの機能は引き続き動作します。
デプロイ
Worker を Cloudflare にデプロイします。
npm run deploy
Claude での使用方法
デプロイ後は、Claude で MCP サーバーを使用できます。Claude に、さまざまなタスクで Worker を使用するよう依頼してください。
- 「東京の天気を教えて」
- 「IP アドレス 8.8.8.8 の情報を調べて」
- 「『latest AI developments』をウェブで検索して」
- 「https://example.com/api/data に GET リクエストを送信して」
Claude はリクエストに応じて適切な関数を自動的に使用します。
関数リファレンス
getWeatherData(cityName: string)
指定された都市の現在の天気情報を取得します。
getIpDetails(ipAddr: string)
IP アドレスの詳細なジオロケーション情報を取得します。クライアントの IP に関する情報を取得するには、「me」を指定します。
googleWebSearch(query: string, num?: number)
指定されたクエリで Google 検索を実行し、指定された件数の結果を返します(1~10 件、既定値:5)。
makeRequest(url: string, method: string, params?: object)
指定されたメソッド、ヘッダー、本文データを使用して、カスタム HTTP リクエストを送信します。params オブジェクトには次の値を含めることができます。
headers:HTTP ヘッダーのレコードbody:リクエスト本文(文字列、または自動的に文字列化されるオブジェクト)
カスタマイズ
Worker を変更したり、新しい関数を追加したりするには、次の手順に従います。
src/index.tsを編集します- 機能を記述する JSDoc コメントを付けて、
MyWorkerクラスに新しいメソッドを追加します npm run deployを使用してデプロイします
トラブルシューティング
- API 応答に問題が発生した場合は、Cloudflare ダッシュボードで適切な環境変数を設定したことを確認してください
- 特定の関数が動作しない場合は、対応する API キーを取得する必要があるかもしれません
- 不要な関数がある場合は、
src/index.tsの該当するコードをコメントアウトできます
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。