AIニュース最前線
最新ニュースAI日報Hacker日報週報動画AIツールトレンド企業

AIニュース最前線

世界中のAI最新情報を日本語で毎時更新

最新ニュース日報トレンド企業プレミアムRSS
© 2026 ainew.jp特定商取引法に基づく表記
ニュース一覧元記事を開く
TLDR AI·2026年5月28日 09:00·約11分で読める

セキュア MCP トンネル(6 分読了)

#MCP#セキュリティ#OpenAI#オンプレミス#API
TL;DR

OpenAI が公開ファイアウォールを介さずに、オンプレミスやプライベートな MCP サーバーを安全に利用可能にする「Secure MCP Tunnel」機能を導入し、セキュリティと利便性の両立を実現した。

AI深層分析2026年5月28日 20:34
4
重要/ 5段階
深度40%
5
関連度30%
5
実用性20%
4
革新性10%
3

キーポイント

1

アウトバウンド接続によるセキュリティ強化

従来のインバウンドポート開放の必要性を排除し、ネットワーク内部から OpenAI へ向かうアウトバウンド HTTPS 接続のみで MCP サーバーを安全に公開する仕組みを提供します。

2

tunnel-client の動作原理

ローカル環境で稼働するクライアントが OpenAI エンドポイントをポーリングし、リクエストを転送・応答を返すことで、サーバー側は公開リスナーを持たずに機能します。

3

既存インフラとの親和性

オンプレミス環境や開発者マシンの MCP サーバーを、ChatGPT や Codex などの OpenAI プロダクトから直接呼び出せるようにする柔軟な接続手段です。

4

ストリーミング対応

コネクタからのストリーム要求に対し、Tunnel パスを通じて中間のサーバー送信イベント(SSE)も転送可能であり、リアルタイム性を損ないません。

5

必要なリソースと権限

tunnel_id、ランタイム API キー(Read + Use 権限)、およびメタデータ管理用のマネージャー権限が必要です。

6

ネットワーク接続要件

tunnel-client は外部からのアクセスを必要とせず、OpenAI へのアウトバウンド HTTPS と内部の MCP サーバーへの到達性のみで動作します。

7

最新リリースの運用

特定のバージョンをハードコードせず、runbook は常に最新のリリース URL を指すように設定する必要があります。

影響分析・編集コメントを表示

影響分析

この機能は、セキュリティリスクが最大の懸念点であった企業内 AI ツール導入の障壁を劇的に下げます。特に厳格なネットワーク分離環境にある組織にとって、MCP(Model Context Protocol)を活用した高度な自動化やデータ連携を安全に実装する道を開く重要な進展です。

編集コメント

MCP の普及において最大のボトルネックであった「セキュリティと接続の両立」を解決する実用的なアップデートであり、企業導入の加速が期待されます。

Secure MCP Tunnel を使用すると、MCP サーバーへのインバウンドファイアウォールポートを開くことなく、またはそれらのサーバーをパブリックインターネットに公開することなく、プライベートな MCP サーバーをサポートされている OpenAI 製品に接続できます。tunnel-client を、すでに MCP サーバーに到達できるネットワーク内で実行します。これにより、OpenAI へのアウトバウンド HTTPS パスが確立され、キューされた MCP ワークが取得され、リクエストがローカルで転送され、レスポンスは同じトンネルを通じて返されます。

MCP トンネルは、ネットワーク内のホストから OpenAI がホストする MCP エンドポイントへのアウトバウンド専用接続です。MCP サーバーがプライベート、オンプレミス、またはファイアウォールの背後にある場合でも、ChatGPT、Codex、Responses API、または他のサポートされている OpenAI 表面(サーフェス)がそれを呼び出す必要がある場合に使用します。

Secure MCP Tunnel は、MCP サーバーをプライベートに保ちながら、サポートされている OpenAI 製品に対して通常の MCP リクエストパスを提供します。tunnel-client は OpenAI からワークをポーリングし、MCP リクエストをローカルで転送し、レスポンスを同じトンネルを通じて返します。

  • あなたの MCP サーバーは、プライベートネットワーク上、オンプレミス、開発者マシン上で実行されているか、既存のアクセス制御の背後にあります。
  • ChatGPT、Codex、Responses API、または他のサポートされている OpenAI 表面が、MCP サーバーをパブリックにすることなくそのサーバーを使用することを望んでいます。
  • あなたのネットワークは、tunnel-client を実行するホストがデフォルトで api.openai.com:443 へのアウトバウンド HTTPS リクエストを行うことを許可しており、コントロールプレーンの mTLS が構成されている場合は mtls.api.openai.com:443 に到達し、プライベートな MCP サーバーにも到達できる状態です。
  • 一般的な MCP の概念については、MCP およびコネクタガイドから始めてください。
  • プラットフォームのトンネル設定で、OpenAI がホストする MCP トンネルエンドポイントを作成または管理します。
  • プライベートな MCP サーバーに到達可能なネットワーク内で tunnel-client を実行します。
  • トンネル ID とプライベートな MCP サーバーアドレスを使用して tunnel-client を構成します。
  • OpenAI の製品は、OpenAI がホストするトンネルエンドポイントに対して MCP リクエストを送信します。
  • tunnel-client はキューされた作業をロングポーリングし、各 JSON-RPC リクエストをプライベートな MCP サーバーに転送し、レスポンスをトンネルを通じて再度投稿します。

プライベートな MCP サーバーはパブリックリスナーを必要としません。OpenAI がホストするエンドポイントは、サポート対象の製品に対して通常の MCP リクエストパスを提供しますが、ネットワーク開始点はお客様の境界内にとどまります。コネクタがストリーミングされた結果を要求した場合、トンネル経路は中間のサーバー送信イベント(Server-Sent Events)を転送できます。

OpenAI の製品は OpenAI がホストするトンネルエンドポイントを呼び出し、tunnel-client はキューされた作業をロングポーリングし、同じトンネルを通じて MCP レスポンスを返します。

必要なもの:

  • プラットフォームのトンネル設定から取得した tunnel_id。
  • tunnel-client 用のランタイム API キー。キーのプリンシパルには、対象となるトンネルに対して「Tunnels Read + Use」権限が必要です。
  • トンネルメタデータの作成または編集が必要な場合、「Tunnels Read + Manage」権限を持つトンネルマネージャー。
  • tunnel-client がお客様のネットワーク内から stdio または HTTP を介して到達可能な MCP サーバー。

tunnel-client には、インターネットからのインバウンドアクセスは不要です。OpenAI へのアウトバウンド HTTPS と、プライベートな MCP サーバーへのローカル到達性が必要です:

FromToUsed for

tunnel-client は、HTTPS を介して /v1/tunnel/* 上で api.openai.com:443 で実行されるホストに対して、デフォルトのポーリングとレスポンス投稿を行います。

tunnel-client は、制御プレーンで mTLS(相互認証 TLS)が設定されている場合、HTTPS を介して /v1/tunnel/* 上で mtls.api.openai.com:443 で実行されるホストに対して、ポーリングとレスポンス投稿を行います。

tunnel-client は、構成された stdio コマンドまたは MCP サーバー URL(Model Context Protocol)を介して、ネットワーク内部からの MCP リクエストを転送します。

Platform tunnel settings にアクセスし、そこで提供されるダウンロードリンクを使用するか、openai/tunnel-client から最新の公開版 tunnel-client リリースを取得してください。特定のリリース URL をハードコードするのではなく、runbook(運用マニュアル)を最新リリースの URL 指すように保ってください。

すでにバイナリをお持ちの場合は、tunnel-client help quickstart から始めてください。名前付きのローカル stdio プロファイルを使用するには、以下を実行します:

1

2

3

4

5

6

7

8

9

10

export CONTROL_PLANE_API_KEY="sk-..."

tunnel-client init \

--sample sample_mcp_stdio_local \

--profile local-stdio \

--tunnel-id tunnel_0123456789abcdef0123456789abcdef \

--mcp-command "python /path/to/server.py"

tunnel-client doctor --profile local-stdio --explain

tunnel-client run --profile local-stdio

HTTP MCP サーバーの場合は、--mcp-command の代わりに --mcp-server-url https://mcp.internal.example.com/mcp を使用します。

コネクタの作成またはテスト中は、tunnel-client run ... が正常に動作していることを維持してください。コネクタの検出と MCP ツール呼び出しは、実行中のクライアントに依存しています。

ローカル管理用 UI (/ui) では、ChatGPT、Codex、または API フローからテストを行う前に、実行中のクライアントが健全であり、準備が整っており、接続されているかを確認できます。

tunnel-client は、すでにプライベート MCP サーバーに到達できる信頼境界内で実行してください。一般的なデプロイメントパターンは以下の通りです:

  • Kubernetes sidecar: tunnel-client を MCP サーバーと同じ Pod 内にサイドカーとして実行し、localhost を経由して接続します。
  • 専用 Kubernetes デプロイメント: MCP サーバーがすでにプライベート Service を通じて到達可能な場合、tunnel-client を個別に実行します。
  • VM または systemd サービス: tunnel-client を、プライベートネットワークを介して MCP サーバーに到達できるホスト上で実行します。

ChatGPT コネクタ設定を開き、カスタムコネクタを作成して、接続の下でTunnelを選択してください。ChatGPT が利用可能なトンネルをリスト表示する場合はそれを選択するか、すでに tunnel_id を持っている場合はそれを貼り付けてください。

トンネルが ChatGPT に表示されない場合は、そのトンネルが対象のワークスペースに関連付けられていること、かつコネクタ演算子が Tunnels の読み取りおよび使用権限を持っていることを確認してください。

プライベート MCP サーバーは顧客が管理する環境内に留まります。

tunnel-client は、ランタイム API キーを使用し、必要に応じてオプションの制御プレーン mTLS を用いて、アウトバウンド HTTPS で OpenAI に到達します。

  • MCP サーバーアドレスはプライベートなまま保たれ、tunnel-client が実行される環境内からのみ使用されます。
  • tunnel-client は OpenAI トンネル制御プレーンに対して認証を行います。対応する OpenAI プロダクトでは、OpenAI によってホストされたトンネルエンドポイントが使用されます。
  • トンネルアクセスは、個別の公開入口経路を導入するのではなく、既存の組織およびワークスペースのコンテキストに従います。
  • tunnel-client は、アウトバウンドプロキシ、カスタム CA バンドル、コントロールプレーンのクライアント証明書、MCP 側の mTLS など、エンタープライズネットワーク要件をサポートします。

Secure MCP トンネルは、サポートされているエージェントまたは API フローからの、顧客ネットワーク内への狭義にスコープされた HTTP 呼び出しもサポートできます。tunnel-client には埋め込まれた MCP サーバーである Harpoon が含まれており、これはラベルで設定された HTTP ターゲットを公開し、呼び出し元がトンネルを通じてバウンドされたリクエスト/レスポンス制限内でそれらを呼び出すことを可能にします。

これを使用するのは、公開せずに少数のプライベート REST エンドポイントに到達する必要がある場合です。Harpoon は汎用プロキシではありません:呼び出し元は任意のホストを選択できず、リクエストは顧客が設定したターゲットとメソッドに限定されます。

  • ChatGPT でトンネルが表示されない場合:トンネルワークスペースのスコープと、コネクタオペレーターの「Tunnels Use」権限を確認してください。
  • コネクタの検出またはツールの呼び出しが失敗する場合:tunnel-client の実行(...)がまだ続行されていることを確認し、その後 tunnel-client doctor --profile <name> --explain を再実行してください。
  • トンネルは検査できるが編集できない場合:オペレーターにはおそらく「Tunnels Read」権限はあるものの、「Tunnels Manage」権限がない可能性があります。
  • tunnel-client は /healthz、/readyz、/metrics、およびローカル管理 UI(/ui)を公開します。
  • 管理 UI はデフォルトでループバック専用です。オペレーターネットワークがこれに到達する必要がある場合にのみ、意図的にリモートで公開してください。
  • ChatGPT、Codex、または API フローからのテストを行う前に、これらのサーフェスを使用してクライアントが健全であり、準備ができているか、ポーリング中であることを確認してください。
  • クライアントが接続されていない場合、トンネルを介したリクエストは、トンネル・クライアントが再接続するまで失敗します。
  • 生(Raw)の HTTP ログはデフォルトで無効化されており、サポートエクスポートでは機密情報が伏字処理されます。
  • OAuth のディスカバリーはトンネル経路を通過できるため、MCP サーバー自体を非公開のままに保つことができます。
  • トンネルは、ブラウザ向け OAuth フローに必要なアップストリーム認証サーバーのメタデータを保持します。
  • 認証サーバー自体は自動的にトンネリングされません。パブリックインターネット上およびトンネル・クライアントホストから到達できない場合、MCP サーバーには到達可能であっても、OAuth フローが失敗する可能性があります。
  • OpenAI がホストする MCP トンネルエンドポイントは、プラットフォームのトンネル設定で管理してください。
  • ChatGPT 接続設定からコネクタを作成する際は、トンネルを使用してください。
  • Codex または API フローの場合は、対応する製品サーフェスによって公開される、トンネルバックドの MCP ターゲットを使用してください。
  • トンネルの作成または管理は、プラットフォームのトンネル設定で行ってください。
  • tunnel-client doctor --profile <profile> --explain コマンドを使用して、トンネル・クライアントのプロファイルを検証してください。
  • ChatGPT 接続設定、または使用中の対応する OpenAI サーフェスからトンネルを接続してください。

プラットフォームのトンネル設定から、OpenAI がホストする MCP トンネルエンドポイントを作成および管理します。

プライベートな MCP サーバーに ChatGPT コネクタを接続する際は、「Tunnel」を選択してください。

原文を表示

Secure MCP Tunnel lets you connect private MCP servers to supported OpenAI products without opening inbound firewall ports or exposing those servers to the public internet. Run tunnel-client inside the network that can already reach your MCP server; it opens an outbound HTTPS path to OpenAI, pulls queued MCP work, forwards requests locally, and returns responses through the same tunnel.

An MCP tunnel is an outbound-only connection from a host inside your network to an OpenAI-hosted MCP endpoint. Use it when your MCP server is private, on-premises, or behind a firewall, but ChatGPT, Codex, the Responses API, or another supported OpenAI surface still needs to call it.

Secure MCP Tunnel keeps the MCP server private while giving supported OpenAI products a normal MCP request path. tunnel-client polls OpenAI for work, forwards MCP requests locally, and returns responses through the same tunnel.

  • Your MCP server runs on a private network, on-premises, on a developer machine, or behind existing access controls.
  • You want ChatGPT, Codex, the Responses API, or another supported OpenAI surface to use that server without making the MCP server public.
  • Your network allows the host running tunnel-client to make outbound HTTPS requests to api.openai.com:443 by default, or mtls.api.openai.com:443 when control-plane mTLS is configured, and reach the private MCP server.
  • Start with the MCP and Connectors guide for general MCP concepts.
  • Create or manage an OpenAI-hosted MCP tunnel endpoint in Platform tunnel settings.
  • Run tunnel-client inside the network that can reach your private MCP server.
  • Configure tunnel-client with the tunnel identity and the private MCP server address.
  • OpenAI products send MCP requests to the OpenAI-hosted tunnel endpoint.
  • tunnel-client long-polls for queued work, forwards each JSON-RPC request to the private MCP server, and posts the response back through the tunnel.

The private MCP server does not need a public listener. The OpenAI-hosted endpoint gives supported products a normal MCP request path, while the network initiation point stays inside your boundary. When a connector asks for streamed results, the tunnel path can forward intermediate server-sent events.

You need:

  • A tunnel_id from Platform tunnel settings.
  • A runtime API key for tunnel-client. The key principal needs Tunnels Read + Use for the target tunnel.
  • A tunnel manager with Tunnels Read + Manage if you need to create or edit tunnel metadata.
  • An MCP server that tunnel-client can reach over stdio or HTTP from inside your network.

tunnel-client does not need inbound internet access. It needs outbound HTTPS to OpenAI and local reachability to the private MCP server:

FromToUsed for

Host running tunnel-clientapi.openai.com:443 over HTTPS on /v1/tunnel/*Default polling and response posting.

Host running tunnel-clientmtls.api.openai.com:443 over HTTPS on /v1/tunnel/*Polling and response posting when control-plane mTLS is configured.

Host running tunnel-clientThe configured stdio command or MCP server URLForwarding MCP requests from inside your network.

Open Platform tunnel settings, then use the download link there or the latest public tunnel-client release from openai/tunnel-client. Keep your runbook pointed at the latest-release URL instead of hard-coding a specific release URL.

If you already have a binary, start with tunnel-client help quickstart. For a named local stdio profile, use:

code
1
2
3
4
5
6
7
8
9
10
export CONTROL_PLANE_API_KEY="sk-..."

tunnel-client init \
  --sample sample_mcp_stdio_local \
  --profile local-stdio \
  --tunnel-id tunnel_0123456789abcdef0123456789abcdef \
  --mcp-command "python /path/to/server.py"

tunnel-client doctor --profile local-stdio --explain
tunnel-client run --profile local-stdio

For an HTTP MCP server, use --mcp-server-url https://mcp.internal.example.com/mcp instead of --mcp-command.

Keep tunnel-client run ... healthy while you create or test the connector. Connector discovery and MCP tool calls depend on the running client.

Run tunnel-client in the same trust boundary that can already reach the private MCP server. Common deployment patterns are:

  • Kubernetes sidecar: Run tunnel-client beside the MCP server in one Pod and connect over localhost.
  • Dedicated Kubernetes deployment: Run tunnel-client separately when the MCP server is already reachable through a private Service.
  • VM or systemd service: Run tunnel-client on a host that can reach the MCP server over private networking.

Open ChatGPT connector settings, create a custom connector, and choose Tunnel under Connection. Select an available tunnel when ChatGPT lists it, or paste a valid tunnel_id if you already have one.

If the tunnel does not appear in ChatGPT, verify that the tunnel is associated with the target workspace and that the connector operator has Tunnels Read + Use.

  • The MCP server address stays private and is used only from inside the environment where tunnel-client runs.
  • tunnel-client authenticates to the OpenAI tunnel control plane; supported OpenAI products use the OpenAI-hosted tunnel endpoint.
  • Tunnel access follows the existing organization and workspace context instead of introducing a separate public ingress path.
  • tunnel-client supports enterprise networking requirements such as outbound proxies, custom CA bundles, control-plane client certificates, and MCP-side mTLS.

Secure MCP Tunnel can also support narrowly scoped HTTP callouts from supported agent or API flows into a customer network. tunnel-client includes an embedded MCP server, Harpoon, that exposes configured HTTP targets by label and lets callers invoke them through the tunnel with bounded request/response limits.

Use this when you need to reach a small set of private REST endpoints without exposing them publicly. Harpoon is not a general-purpose proxy: callers cannot choose arbitrary hosts, and requests are limited to the targets and methods configured by the customer.

  • Tunnel not visible in ChatGPT: Check the tunnel workspace scope and the connector operator’s Tunnels Use permission.
  • Connector discovery or tool calls fail: Confirm that tunnel-client run ... is still running, then re-run tunnel-client doctor --profile <name> --explain.
  • You can inspect a tunnel but cannot edit it: The operator likely has Tunnels Read but not Tunnels Manage.
  • tunnel-client exposes /healthz, /readyz, /metrics, and a local admin UI at /ui.
  • The admin UI is loopback-only by default. Expose it remotely only when you intentionally need an operator network to reach it.
  • Use those surfaces to confirm that the client is healthy, ready, and polling before testing from ChatGPT, Codex, or an API flow.
  • If the client is not connected, requests through the tunnel fail until tunnel-client reconnects.
  • Raw HTTP logging is disabled by default, and support exports are redacted.
  • OAuth discovery can travel through the tunnel path so the MCP server itself can remain private.
  • The tunnel preserves the upstream authorization server metadata needed for browser-facing OAuth flows.
  • The authorization server itself is not automatically tunneled. If it is unreachable from the public internet and from the tunnel-client host, the OAuth flow can still fail even when the MCP server is reachable.
  • Manage OpenAI-hosted MCP tunnel endpoints in Platform tunnel settings.
  • Use a tunnel when creating a connector from ChatGPT connector settings.
  • For Codex or API flows, use the tunnel-backed MCP target exposed by the supported product surface.
  • Create or manage the tunnel in Platform tunnel settings.
  • Validate your tunnel-client profile with tunnel-client doctor --profile <profile> --explain.
  • Connect the tunnel from ChatGPT connector settings or the supported OpenAI surface you are using.
この記事をシェア

関連記事

The Batch★42026年5月29日 09:00

Gemini Flash の価格上昇、AI 法施行延期、エージェントがオンライントラフィックを牽引

The Batch は、シリコンバレーで注目される AI フォワードデプロイメントエンジニア(FDE)の役割について報じ、顧客組織に常駐してワークフローをカスタマイズする専門職の台頭を紹介した。

AWS Machine Learning Blog★42026年5月29日 01:41

Amazon Quick と Snowflake Cortex AI を活用した AML アラート自動選別

AWS と Snowflake を利用する金融機関向けに、両社の統合フレームワークにより、AML(マネーロンダリング)アラートの選別を自動化する仕組みが紹介された。

Understanding AI★52026年5月28日 22:54

OpenAI の数学的ブレイクスルーが AI の強みを発揮

OpenAI は、80 年間人類の数学者を悩ませてきた「単位距離予想」の反例を内部 AI モデルが発見し、フィールズ賞受賞者のティム・ゴワーズ氏もこれを AI 数学における画期的なマイルストーンと評価した。

ニュース一覧に戻る元記事を読む