MCP server portals
目次
| 開発元 | Cloudflare |
|---|---|
| 初版 | 2025年8月26日(オープンベータ) |
| 一般提供 | 2026年9月24日 |
| 製品群 | Cloudflare One(Access) |
| 旧称 | Agents Gateway |
| 種別 | MCP サーバーの集約と認可のゲートウェイ |
| ドキュメント | developers.cloudflare.com |
MCP server portals は、複数の Model Context Protocol(MCP)サーバーを 1 つの HTTP のエンドポイントにまとめる仕組みである。Cloudflare が、ゼロトラストの製品群 Cloudflare One の Access の機能として提供している1。利用者は Access でポータルにログインする。MCP クライアントにはポータルの URL を 1 つ登録すればよく、管理者が許可した複数の MCP サーバーの道具を使える1。
2025年8月26日にすべてのプランでオープンベータとして公開され2、2026年9月24日に一般提供となった3。社内の一部の文脈では Agents Gateway と呼ばれていた。API のパスや Terraform のリソース名には、その名残の agents_gateway や agw が残っている1。
背景
Cloudflare は公開時のブログで、社員が管理されていない MCP サーバーを各自でつなぐ状態を問題に挙げ、組織が MCP の利用を一か所で認可し、記録する必要があると主張した4。Cloudflare のドキュメントは、管理されずに使われる MCP サーバーを「Shadow MCP」と呼び、ポータルをその統制の中心に位置づけている5。
仕組み
接続の流れ
ドキュメントは、リクエストの流れを次のように説明している1。
- MCP クライアントがポータルの URL に接続し、OAuth の検出用のメタデータを含む
401の応答を受け取る - 利用者は自分の ID プロバイダーで Access にログインするか、サービストークンのヘッダーを送る
- Access が利用者を確かめ、ポータルは有効な上流のサーバーの道具の一覧を返す
- 道具が呼ばれると、ポータルは道具の名前空間から宛先のサーバーを決め、認証情報を付けてリクエストを中継する
- 上流のサーバーの応答が同じ経路で返る
ポータルのログインには、2026年3月に加わった managed OAuth を使う。Access が OAuth 2.0 の認可コードフローを肩代わりする仕組みで、新しいポータルでは既定で有効になっている6。
上流の MCP サーバー
ポータルで使う MCP サーバーは、先に Access へ登録しておく。認証の無いサーバーと、OAuth で守られたサーバーのどちらも登録できる1。OAuth のクライアントは既定では動的クライアント登録(DCR)で作られる。登録の際に管理者が上流でログインしたアカウントは、そのサーバーの管理者の認証情報として使われる1。
ポータルへ足したサーバーごとに、「Require user auth」を設定する。有効(既定)にすると、利用者は自分のアカウントで上流のサーバーへ個別にログインする。無効にすると、ポータルの利用者は管理者の認証情報でそのサーバーを使う1。DCR に対応しない Slack や GitHub のような提供元向けには、2026年7月に、事前に登録した OAuth のクライアント ID とシークレットを使う方式が加わった。この方式では利用者ごとのログインが必須である71。
上流との通信には Streamable HTTP と SSE を使う。stdio でしか動かない MCP サーバーは、HTTP で受ける仕組みを別に立てない限り登録できない1。2026年8月には、状態を持たない MCP の仕様 2026-07-28 に対応した。クライアントと上流のサーバーのそれぞれについて、2025年の仕様との互換を保ったまま、使う仕様を自動で選ぶ8。2026年9月22日からは、Cloudflare Tunnel などで Cloudflare につないだ私設のネットワーク上の MCP サーバーも、Cloudflare Gateway を経由して登録できる。ただし OAuth の認可とトークンのエンドポイントは、公開のインターネットから届く必要がある9。
道具の名前
ポータルを通る道具とプロンプトには、サーバー ID が {server_id}_{元の名前} の形で前に付く。たとえば ID が github のサーバーの list_issues は、github_list_issues として見える1。2026年5月からは、上流のサーバーを変えずに道具とプロンプトの名前と説明を書き換えられる。書き換えはポータルごとにも、サーバーごとにも設定でき、ポータルごとの設定が優先される10。
すべてのポータルは、上流の道具とは別に次の 3 つの道具を持つ1。
| 道具 | 働き |
|---|---|
portal_list_servers | 上流のサーバーの一覧と、それぞれが有効かを返す |
portal_toggle_servers | サーバーを選び直すページの URL を返す |
portal_toggle_single_server | 1 つのサーバーを、ブラウザーを開かずに有効や無効にする |
利用者は MCP クライアントから、上流のサーバーを有効にしたり無効にしたり、ログインし直したりできる。この機能は2026年4月に加わった11。
コンテキストの節約
多くのサーバーを 1 つにまとめると、道具の定義がモデルのコンテキストを圧迫する。ポータルには、これを減らすための 2 つの方式がある。
1 つ目は、2026年3月に加わった optimize_context のクエリパラメーターである12。minimize_tools は道具の説明と入力のスキーマを除いて名前だけを返し、定義は検索用の道具で必要なときに取らせる。ドキュメントは、トークンの使用量を最大で5分の1にできるとしている1。search_and_execute は上流の道具を一覧から隠し、検索と実行の 2 つの道具だけを見せる1。
2 つ目は Code Mode である。Code Mode では、上流の道具が検索と実行の 2 つの道具にまとまる。エージェントは型の付いたメソッドで道具を呼ぶ JavaScript を書き、そのコードは隔離された Dynamic Worker の中で動く。認証情報や環境変数はモデルのコンテキストに入らない1。Code Mode も2026年3月に加わった13。2026年7月からは、ポータルごとに次の 4 つの方針から選ぶ14。
| 方針 | API の値 | 既定の状態 | クライアントからの切り替え |
|---|---|---|---|
| Off | off | 使えない | 受け付けない |
| Opt-in | opt_in | 無効 | ?codemode=search_and_execute で有効 |
| On by default | default_on | 有効 | ?codemode=off で無効 |
| Enforced | enforced | 有効 | 受け付けない |
新しいポータルの既定は Opt-in である14。上流のサーバーが自前の Code Mode を有効にしている場合、ポータルはそのサーバーに対応しない1。
記録と監査
Access は、ポータルを通した道具・プロンプト・リソースの利用を記録する3。ダッシュボードのログには、時刻・成否・サーバー・使われた道具・処理時間が残る1。2026年2月からは、Logpush でログを外部の保存先や SIEM へ送れる。ただし Logpush は Enterprise プランだけで使える151。2026年3月からは、ポータルの通信を Cloudflare Gateway に通し、HTTP の記録とデータ損失防止(DLP)の検査をかけられる16。
道具の呼び出し回数は API で日ごと・月ごとに集計できる。2026年10月28日には、成功・失敗・キャッシュの別で数える response_status のパラメーターが加わり、既定は成功だけを数えるように変わった17。
自律エージェントからの接続
2026年6月から、ブラウザーでログインできない自律エージェントやボットは、Access のサービストークンでポータルにつなげる18。そのためには、ポータルと各サーバーの Access アプリケーションに同じトークンを認める Service Auth のポリシーを置き、各サーバーの Require user auth を無効にする。利用者ごとのログインを求めるサーバーは、サービストークンのセッションには出てこない18。
2026年11月2日には、Access のサービストークンに環境やチームなどのキーと値のタグを付け、そのタグでポリシーを書けるようになった19。
制限
ドキュメントは2026年11月2日時点で、次の制限を挙げている1。
- 1 つのポータルに載せられる MCP サーバーは80までである
- プロキシを経由したクライアントを拒む MCP サーバーは、登録の段階で
403を返し、使えない - 管理者の OAuth のトークンが上流で失効すると、サーバーは利用者から見えなくなるが、管理者には通知されない
- 事前登録の OAuth クライアントを使うサーバーの道具の一覧は、最初の利用者がログインしたときにだけ取得され、その後は更新されない
- ポータル経由で上流のサーバーを認可するときは、Access の独立した多要素認証・目的の申告・一時的な認証の承認が求められない。メールアドレス・グループ・国・端末の状態などの条件は適用される
歴史
| 時期 | 出来事 |
|---|---|
| 2025年8月26日 | すべてのプランでオープンベータとして公開2 |
| 2026年2月27日 | Logpush に対応15 |
| 2026年3月20日 | managed OAuth と Gateway 経由の通信に対応616 |
| 2026年3月26日 | コンテキストの節約と Code Mode に対応1213 |
| 2026年4月2日 | セッションの管理に対応11 |
| 2026年4月17日 | ブラウザー向けのホームページとサインアウトを追加20 |
| 2026年5月28日 | 道具とプロンプトの別名に対応10 |
| 2026年6月26日 | サービストークンでの接続に対応18 |
| 2026年7月30日 | Code Mode の 4 つの方針を追加14 |
| 2026年7月31日 | 事前登録の OAuth クライアントに対応7 |
| 2026年8月25日 | MCP の仕様 2026-07-28 に対応8 |
| 2026年9月22日 | 私設のネットワークの MCP サーバーに対応9 |
| 2026年9月24日 | 一般提供を開始3 |
| 2026年10月28日 | 呼び出し回数の集計を応答の状態で絞り込めるようにした17 |
外部リンク
出典
-
Cloudflare「MCP server portals」Cloudflare One docs。2026年11月2日更新。2026年11月3日閲覧。 ↩ ↩2 ↩3 ↩4 ↩5 ↩6 ↩7 ↩8 ↩9 ↩10 ↩11 ↩12 ↩13 ↩14 ↩15 ↩16 ↩17 ↩18
-
Cloudflare「MCP server portals」Cloudflare Changelog、2025年8月26日。2026年11月3日閲覧。 ↩ ↩2
-
Cloudflare「MCP server portals are now generally available」Cloudflare Changelog、2026年9月24日。2026年11月3日閲覧。 ↩ ↩2 ↩3
-
Cloudflare「Securing the AI Revolution: Introducing Cloudflare MCP Server Portals」The Cloudflare Blog、2025年8月26日。2026年11月3日閲覧。 ↩
-
Cloudflare「MCP governance」Cloudflare Agents docs。2026年11月3日閲覧。 ↩
-
Cloudflare「Managed OAuth for Cloudflare Access」Access changelog、2026年3月20日。2026年11月3日閲覧。 ↩ ↩2
-
Cloudflare「Static OAuth client credentials for MCP server portals」Access changelog、2026年7月31日。2026年11月3日閲覧。 ↩ ↩2
-
Cloudflare「MCP server portals support MCP 2026-07-28 specification」Cloudflare Changelog、2026年8月25日。2026年11月3日閲覧。 ↩ ↩2
-
Cloudflare「Private MCP server support for MCP server portals」Cloudflare Changelog、2026年9月22日。2026年11月3日閲覧。 ↩ ↩2
-
Cloudflare「Tool and prompt aliases for MCP server portals」Cloudflare Changelog、2026年5月28日。2026年11月3日閲覧。 ↩ ↩2
-
Cloudflare「Session management for MCP server portals」Cloudflare Changelog、2026年4月2日。2026年11月3日閲覧。 ↩ ↩2
-
Cloudflare「Context optimization for MCP server portals」Cloudflare Changelog、2026年3月26日。2026年11月3日閲覧。 ↩ ↩2
-
Cloudflare「Code Mode for MCP server portals」Access changelog、2026年3月26日。2026年11月3日閲覧。 ↩ ↩2
-
Cloudflare「Admins can turn on Code Mode by default for MCP portal users」Access changelog、2026年7月30日。2026年11月3日閲覧。 ↩ ↩2 ↩3
-
Cloudflare「Export MCP server portal logs with Logpush」Access changelog、2026年2月27日。2026年11月3日閲覧。 ↩ ↩2
-
Cloudflare「Route MCP server portal traffic through Cloudflare Gateway」Access changelog、2026年3月20日。2026年11月3日閲覧。 ↩ ↩2
-
Cloudflare「Filter MCP tool-call analytics by response status」Access changelog、2026年10月28日。2026年11月3日閲覧。 ↩ ↩2
-
Cloudflare「Service token support for MCP server portals」Cloudflare Changelog、2026年6月26日。2026年11月3日閲覧。 ↩ ↩2 ↩3
-
Cloudflare「Homepage and sign-out for MCP server portals」Cloudflare Changelog、2026年4月17日。2026年11月3日閲覧。 ↩
最終更新