Building a Remote MCP Server on Cloudflare (Without Auth) について
認証不要のリモートMCPサーバーをCloudflare Workersにデプロイするサンプルです。テンプレートやツールのカスタマイズ方法、リモートおよびローカルのMCPクライアントの接続手順を示します。
主な機能
- 01認証不要のリモートMCPサーバーをデプロイ
- 02Cloudflare Workersテンプレートで開始
- 03src/index.tsでツールを定義
- 04Cloudflare AI Playgroundから接続
- 05mcp-remoteでローカルクライアントを中継
活用シーン
- 01Cloudflare WorkersにリモートMCPサーバーを作成
- 02サンプルサーバーに独自ツールを追加
- 03ローカルMCPクライアントをリモートサーバーに接続
MCP 対応
Cloudflare WorkersでのリモートMCPサーバーのホストと、MCPクライアントからの接続を説明するサンプルです。stdioのみ対応するローカルクライアントはmcp-remoteプロキシ経由で接続できます。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
Cloudflare でリモート MCP サーバーを構築する(認証なし)
この例では、Cloudflare Workers に認証不要のリモート MCP サーバーをデプロイできます。
はじめに:
これにより、次のような URL に MCP サーバーがデプロイされます:remote-mcp-server-authless.<your-account>.workers.dev/sse
または、以下のコマンドラインを使って、ローカルマシンにリモート MCP サーバーを作成できます:
npm create cloudflare@latest -- my-mcp-server --template=cloudflare/ai/demos/remote-mcp-authless
MCP サーバーをカスタマイズする
MCP サーバーに独自のツールを追加するには、src/index.ts の init() メソッド内で this.server.tool(...) を使って各ツールを定義します。
Cloudflare AI Playground に接続する
リモート MCP クライアントである Cloudflare AI Playground から、MCP サーバーに接続できます:
- https://playground.ai.cloudflare.com/ にアクセスします
- デプロイした MCP サーバーの URL(
remote-mcp-server-authless.<your-account>.workers.dev/sse)を入力します - Playground から MCP ツールを直接使用できるようになります!
ローカルの MCP クライアントをこのリモート MCP サーバーに接続する
ローカルの MCP クライアントでこのリモート MCP サーバーを使用するには、次の設定を追加します:
{
"mcpServers": {
"mcp-ts-demo-cf": {
"command": "npx",
"args": [
"-y",
"mcp-remote",
"https://mcp-ts-demo-cf.sibebzh.workers.dev/sse"
],
"disabled": false
}
}
}
(stdio 経由のローカル MCP サーバーのみをサポートするローカル MCP クライアントからも、mcp-remote proxy を使ってこのリモート MCP サーバーに接続できます。)
例
問題なく動作すれば、ローカルの MCP クライアントでツールが使用可能になり、次のような操作ができるはずです:

知っておくと便利なこと
- MCPServer ツールの引数のスキーマ定義には、zod が使用されています。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。