Remote MCP Server on Cloudflare について
Cloudflare Workers 上でリモート MCP サーバーを構築・デプロイするためのテンプレートです。OAuth ログインに対応し、ローカル開発や MCP Inspector、Claude Desktop からの接続例も紹介します。
主な機能
- 01Cloudflare Workers でのローカル実行
- 02OAuth ログインフロー
- 03Cloudflare Workers へのデプロイ
- 04MCP Inspector との接続
- 05Claude Desktop の接続設定
活用シーン
- 01リモート MCP サーバーのローカル試作
- 02サーバーツールの確認と呼び出し
- 03workers.dev へのサーバーデプロイ
- 04Claude Desktop からのリモート接続
MCP 対応
SSE 経由でリモート MCP サーバーを公開し、MCP Inspector や Claude Desktop などのクライアントから接続できます。ローカルとデプロイ後の接続方法を説明しています。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
Cloudflare 上のリモート MCP サーバー
OAuth ログインに対応したリモート MCP サーバーを、Cloudflare Workers 上で立ち上げましょう!
ローカルで開発する
# clone the repository
git clone [email protected]:cloudflare/ai.git
# install dependencies
cd ai
npm install
# run locally
npx nx dev remote-mcp-server
ブラウザーで http://localhost:8787/ を開けるはずです。
MCP Inspector をサーバーに接続する
新しい MCP API を確認するには、MCP Inspector を使用できます。
npx @modelcontextprotocol/inspectorで起動します。- Inspector 内で、トランスポートの種類を
SSEに切り替え、接続する MCP サーバーの URL としてhttp://localhost:8787/sseを入力し、「Connect」をクリックします。 - (模擬)ユーザー名/パスワードのログイン画面に移動します。任意のメールアドレスとパスワードを入力してログインします。
- MCP Inspector に戻るので、定義されている任意のツールを一覧表示して呼び出せるようになります!
Claude Desktop をローカルの MCP サーバーに接続する
MCP Inspector は便利ですが、本当に接続したいのは Claude です!Anthropic のクイックスタートに従い、Claude Desktop で「Settings」>「Developer」>「Edit Config」の順に進んで設定ファイルを開きます。
テキストエディターでファイルを開き、次の設定に置き換えます。
{
"mcpServers": {
"math": {
"command": "npx",
"args": [
"mcp-remote",
"http://localhost:8787/sse"
]
}
}
}
これによりローカルプロキシが実行され、Claude が HTTP 経由で MCP サーバーと通信できるようになります。
Claude を開くと、ブラウザーウィンドウが開き、ログインできるはずです。右下に利用可能なツールが表示されます。適切なプロンプトを入力すると、Claude がツールの呼び出しを求めるはずです。
Cloudflare にデプロイする
npx wrangler kv namespace create OAUTH_KV- ガイダンスに従って、KV 名前空間の ID を
wrangler.jsoncに追加します。 npm run deploy
デプロイしたリモート MCP サーバーをリモート MCP クライアントから呼び出す
上記の「ローカルで開発する」ときと同様に、MCP Inspector を実行します。
npx @modelcontextprotocol/inspector@latest
次に、Inspector で Worker の workers.dev URL(例:worker-name.account-name.workers.dev/sse)を、接続する MCP サーバーの URL として入力し、「Connect」をクリックします。
これで、リモート MCP クライアントから MCP サーバーに接続できました。
Claude Desktop をリモート MCP サーバーに接続する
Claude の設定ファイルを更新して workers.dev URL(例:worker-name.account-name.workers.dev/sse)を指定し、Claude を再起動します。
{
"mcpServers": {
"math": {
"command": "npx",
"args": [
"mcp-remote",
"https://worker-name.account-name.workers.dev/sse"
]
}
}
}
デバッグ
問題が発生した場合は、Claude を再起動するか、次のコマンドを使ってコマンドラインから MCP サーバーに直接接続すると解決に役立つことがあります。
npx mcp-remote http://localhost:8787/sse
まれに、~/.mcp-auth に追加されたファイルを削除すると解決する場合があります。
rm -rf ~/.mcp-auth
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。