Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Cloudflare MCP Server Portal × Tunnel で社内 MCP 基...

h6o
November 11, 2026

Cloudflare MCP Server Portal × Tunnel で社内 MCP 基盤を作った話

h6o

November 11, 2026

Transcript

15 slides
  1. アーキテクチャの制約 Claude アプリからの通信は、社内ではなく Anthropic の IP 範囲 ( 160.79.104.0/21 ,

    153.61.208.0/20 )から来る MCP サーバーへのアクセスを社内 IP で制限するのは難しい そこで、次の方針にした IP 制限ではなく、入口だけをインターネットに公開し、リクエストのたびに認証・認可を 行う。MCP サーバー本体はインターネットから届かない場所に置く
  2. Cloudflare MCP Server Portal 複数の MCP サーバーを 1 つの URL

    にまとめ、Cloudflare Access(誰がアクセスでき るかをポリシーで判定する機能)で守って提供する Cloudflare の機能 Cloudflare Claude MCPServerPortal mcp.example.com MCPサーバーA MCPサーバーB MCPサーバーC
  3. Cloudflare Tunnel サーバー側から Cloudflare へ外向きの通信経路(Tunnel)を張り、グローバル IP やポ ート開放なしでサービスを公開できる機能 Publishedapplication インターネット

    Publichostname Tunnel Privatehostname CloudflareGateway Privatehostname Portal/WARP端末 インターネット 遮断 Tunnel 内側から接続 cloudflared サーバー側 内側から接続 cloudflared サーバー側
  4. アーキテクチャ 社員 Cloudflare Claude MCPServerPortal claude.ai/ClaudeCode mcp.example.com ログイン SSO Access

    IdP GoogleCloud CloudRun 内側から接続 Gateway Tunnel Privatehostname ingress:internal cloudflared サイドカー MCPサーバー CloudSQL
  5. 閉じる ①: Cloud Run の ingress を internal に GoogleCloud

    CloudRun cloudflared Tunnel インターネット *.run.app ingress:internal サイドカー 遮断 MCPサーバー
  6. 閉じる ②: Private hostname でつなぐ Portal から Cloudflare Gateway(Cloudflare を通る通信を検査・制御する機能)を

    経由して、Tunnel の Private hostname につなぐ Cloudflare MCPServerPortal Gateway Tunnel Privatehostname 遮断 インターネット
  7. 対処 Gateway の HTTP ポリシーで、Traffic Source(通信元)が Portal 以外なら MCP サ

    ーバー宛てをブロックする条件を追加 Claude MCPServerPortal Gateway WARP端末 遮断 TrafficSourceがPortal以外 →MCPサーバー宛てをBlock Tunnel MCPサーバー
  8. まとめ Cloudflare MCP Server Portal を使えば、MCP 基盤を簡単に作れる Portal と Cloudflare

    Tunnel を組み合わせると、セキュアな構成にできる ただし、WARP など Gateway 経由の通信も直接届いてしまうので、MCP サーバー 宛ての通信は Portal 経由だけに制限する

Other Decks in Technology