• メッセージ
  • マネージドエージェント
  • 管理
Search...
⌘K
はじめに
Claude入門クイックスタート
Claudeで構築する
機能の概要Messages APIの使用停止理由とフォールバック拒否とフォールバックフォールバッククレジット
モデルの機能
拡張思考適応型思考エフォートタスクバジェット(ベータ版)高速モード(リサーチプレビュー)構造化出力引用メッセージのストリーミングバッチ処理検索結果拒否のストリーミング多言語サポート埋め込み
ツール
概要ツール使用の仕組みチュートリアル:ツール使用エージェントの構築ツールの定義ツール呼び出しの処理並列ツール使用ツールランナー(SDK)厳密なツール使用プロンプトキャッシングを使ったツール使用サーバーツールトラブルシューティングウェブ検索ツールウェブ取得ツールコード実行ツールアドバイザーツールメモリツールBashツールコンピュータ使用ツールテキストエディタツール
ツールインフラストラクチャ
ツールリファレンスツールコンテキストの管理ツールの組み合わせツール検索プログラムによるツール呼び出しきめ細かいツールストリーミング
コンテキスト管理
コンテキストウィンドウコンパクションコンテキスト編集プロンプトキャッシング会話途中のシステムメッセージオーケストレーションモードの構築キャッシュ診断(ベータ版)トークンカウント
ファイルの操作
Files APIPDFサポート画像とビジョン
スキル
概要クイックスタートベストプラクティスエンタープライズ向けスキルAPIでのスキル
MCP
リモートMCPサーバーMCPコネクタ
概要アーキテクチャとコンポーネントクイックスタートコンソールでの管理HelmでデプロイDocker Composeでデプロイセキュリティトラブルシューティングリファレンス
クラウドプラットフォーム上のClaude
Amazon BedrockAmazon Bedrock(レガシー)AWS上のClaude PlatformMicrosoft FoundryVertex AI
Log in
Docker Composeでデプロイ
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...

Solutions

  • AI agents
  • Code modernization
  • Coding
  • Customer support
  • Education
  • Financial services
  • Government
  • Life sciences

Partners

  • Amazon Bedrock
  • Google Cloud's Vertex AI

Learn

  • Blog
  • Courses
  • Use cases
  • Connectors
  • Customer stories
  • Engineering at Anthropic
  • Events
  • Powered by Claude
  • Service partners
  • Startups program

Company

  • Anthropic
  • Careers
  • Economic Futures
  • Research
  • News
  • Responsible Scaling Policy
  • Security and compliance
  • Transparency

Learn

  • Blog
  • Courses
  • Use cases
  • Connectors
  • Customer stories
  • Engineering at Anthropic
  • Events
  • Powered by Claude
  • Service partners
  • Startups program

Help and security

  • Availability
  • Status
  • Support
  • Discord

Terms and policies

  • Privacy policy
  • Responsible disclosure policy
  • Terms of service: Commercial
  • Terms of service: Consumer
  • Usage policy
メッセージ/MCPトンネル

Docker ComposeでMCPトンネルをデプロイする

Docker Composeを使用してVMにMCPトンネルスタックをインストールします。

MCPトンネルはリサーチプレビュー段階です。お試しいただくにはアクセスをリクエストしてください。

このガイドでは、トンネルスタックを単一ホスト上に強化されたコンテナとしてデプロイします。同じ構成を複数のホストに複製することで可用性を確保できます。

始める前に

以下が必要です。

  • Consoleで作成されたトンネル。 トンネルを作成するの手順に従い、トンネルID(tnl_...)を記録してください。
  • ホストがTunnels APIに対して認証する方法。
    • プログラムによるアクセス(推奨)。 トンネル作成時にSet up programmatic accessをオンにして、セットアップコンポーネントがWorkload Identity Federationを通じて認証できるようにします。フェデレーションルールID(fdrl_...)と組織IDを記録してください。
    • 手動。 プログラムによるアクセスをスキップします。Consoleからトンネルトークンを取得し、CAとサーバー証明書を自分で生成し、ConsoleでCAを登録します。
  • DockerとDocker Composeがインストールされたホスト。 手動フローではopenssl(1.1.1以降)も必要です。
  • ホストからapi.anthropic.com(443 TCP)およびトンネルエッジ(7844 TCPおよびUDP)へのアウトバウンドネットワーク接続。完全なネットワーク要件を参照してください。
  • routesで設定するアドレスでホストから到達可能な、稼働中の1つ以上のMCPサーバー。まだ用意していない場合は、サンプルサーバーを使用してください。

オプション:サンプルMCPサーバーを使用する

テスト用のMCPサーバーがない場合は、この最小限のサーバーを使用してください。

mkdir -p mcp-tunnel
cat > mcp-tunnel/hello_server.py <<'EOF'
from mcp.server.fastmcp import FastMCP

mcp = FastMCP("hello-server", host="0.0.0.0", port=9000)


@mcp.tool()
def hello(name: str = "world") -> str:
    """Say hello to someone."""
    return f"Hello, {name}!"


if __name__ == "__main__":
    mcp.run(transport="streamable-http")
EOF

以下のインストール手順ではmcp-tunnel/にcdし、対応するサービスとルートを追加する場所を示します。

インストール

このガイドでは、Docker Composeを使用した1つの参考アプローチを提供します。組織のセキュリティ要件を満たすように適応させる責任はお客様にあります。

composeファイルはデフォルト値なしでホスト環境からTUNNEL_TOKENを読み取るため、新しいシェルごと、および再起動後にエクスポートを繰り返す必要があります。

マルチVMデプロイメントの場合は、mcp-tunnel/ディレクトリを各ホストにコピーし、TUNNEL_TOKENを設定して、docker compose up -dを実行します。プログラムによるフローではTUNNEL_TOKENは$(sudo cat data/tunnel-token)です。手動フローではConsoleからコピーした値です。同じトンネルトークンと証明書がすべてのレプリカで機能します。

デプロイメントを検証する

Anthropic側からアップストリームMCPサーバーを呼び出すことで、エンドツーエンドで検証します。トンネル経由のMCPサーバーを使用するを参照してください。サンプルMCPサーバーを使用している場合、ルーティングされたURLはhttps://echo.<your-tunnel-domain>/mcpです。検証が失敗した場合は、トラブルシューティングを参照してください。

アップグレード

このセクションのコマンドは、mcp-tunnel/デプロイメントディレクトリ内から実行してください。

トンネルトークンをローテーションする

プログラムによるアクセスの場合、setupサービスのコマンドで--token-versionをインクリメントし、Workload Identity Federationの識別子を設定し、新しいOIDC JWTを発行して、セットアップコンポーネントを再実行します。

# docker-compose.yaml を編集:setup サービスの `--token-version` 引数の整数を
# インクリメントします(例:`--token-version=1` を `--token-version=2` に)。
# 値が変更されていない場合、setup バイナリはローテーションを拒否します。
# 

export TUNNEL_ID=tnl_...
export ANTHROPIC_FEDERATION_RULE_ID=fdrl_...
export ANTHROPIC_ORGANIZATION_ID=00000000-0000-0000-0000-000000000000
# export ANTHROPIC_WORKSPACE_ID=wrkspc_...   # ルールがワークスペーススコープの場合
# お使いの環境の WIF プロバイダーガイドに従って ANTHROPIC_IDENTITY_TOKEN を
# 再発行してください(インストール後に有効期限が切れているはずです)。
export ANTHROPIC_IDENTITY_TOKEN=...

docker compose run --rm setup

export TUNNEL_TOKEN=$(sudo cat data/tunnel-token)
docker compose up -d cloudflared

--token-version引数は、コマンドラインで渡すのではなくdocker-compose.yamlで編集します。これにより、セットアップコンポーネントの今後の実行でも新しい値が保持されます。セットアップコンポーネントはWorkload Identity Federationで認証するため、失効させるAPIトークンはありません。

プログラムによるアクセスがない場合は、Consoleのトンネル詳細ページでRotate tokenをクリックし、各ホストでTUNNEL_TOKEN環境変数を更新してcloudflaredを再起動します(docker compose up -d cloudflared)。

Rotate tokenをクリックすると、現在のトークンは即座に無効になります。その瞬間から、すべてのホストでTUNNEL_TOKENを更新してcloudflaredを再起動するまでの間、cloudflaredが再起動したホスト(クラッシュ、ホスト再起動)は再接続できません。ローテーション後は速やかに各ホストを更新してください。

証明書の更新

有効期限を監視し、期限切れになる前にサーバー証明書を更新する責任はお客様にあります。

プログラムによるアクセスの場合:

docker compose run --rm setup renew-cert --output=dir:/data

CLI引数はsetupサービスのcommand(init引数)を置き換えますが、entrypointは保持されるため、これは/setup renew-cert --output=dir:/dataを実行します。

--renew-before=720hを渡すと、有効期間が30日以上残っている場合にコマンドが何もしない(no-op)ようになります。これにより、固定スケジュールで安全に実行できます。

プログラムによるアクセスがない場合は、既存のCAで新しいサーバー証明書に署名し(Consoleに登録されたCAは変更されません)、data/tls.crtを置き換えます。新しいシェルから実行する場合は、最初にTUNNEL_DOMAINを設定してください。

export TUNNEL_DOMAIN=YOUR_TUNNEL_DOMAIN_HERE
openssl req -new -key data/tls.key -out /tmp/server.csr \
  -subj "/CN=${TUNNEL_DOMAIN}"
openssl x509 -req -in /tmp/server.csr \
  -CA data/ca.crt -CAkey data/ca.key -CAcreateserial \
  -out data/tls.crt -days 90 \
  -extfile data/tls.ext

どちらのフローでも、プロキシはtls.cert_fileをポーリングして自動的に再読み込みするため、再起動は不要です。

次のステップ

トンネル経由のMCPサーバーを使用する

アップストリームMCPサーバーをManaged AgentまたはMessages APIにアタッチします。

セキュリティ

強化ガイダンス、認証情報のローテーション、および侵害対応。

トラブルシューティング

接続、TLS、およびルーティングの問題を診断します。

Was this page helpful?

  • 始める前に
  • オプション:サンプルMCPサーバーを使用する
  • インストール
  • デプロイメントを検証する
  • アップグレード
  • トンネルトークンをローテーションする
  • 証明書の更新
  • 次のステップ