AgentCore Runtime の MCP サーバーを Amazon Quick と連携
本文の状態
日本語全文を表示中
詳細モードで約15分の本文を読めます。
同じ出来事の情報源
この情報源を基点に整理
AWS Machine Learning Blog
AWS は、Amazon Quick と MCP サーバーを接続する新機能として AgentCore Runtime の活用方法を公開し、AI エージェントのツール再利用とカスタムコネクタ不要な統合を実現した。
AI深層分析を開く2026年9月1日 07:51
AI深層分析
キーポイント
MCP サーバーと Amazon Quick の連携強化
Model Context Protocol (MCP) サーバーを Amazon Quick に接続することで、AI エージェントが外部データやツールに安全かつ標準化された方法でアクセスできるようになる。
AgentCore Runtime によるホスティングオプション
セッション分離、永続ファイルシステム、認証機能などを備えた完全管理型サーバーレス MCP サーバーとして AgentCore Runtime を利用し、Amazon Quick と Gateway で接続するパターンが提示された。
既存 API や Lambda による柔軟な統合
AWS は、REST API や Amazon API Gateway、または AWS Lambda 関数を利用したサーバーレス構成など、ユースケースに応じた複数の統合オプションを提供している。
ツール再利用と開発効率の向上
このアーキテクチャにより、AI ツールの重複作成を防ぎ、共通ツールを MCP サーバー経由で再利用可能にするため、顧客はカスタムコネクタ構築なしに Amazon Quick 内で製品を利用できる。
接続アーキテクチャと認証フロー
Amazon Quick と MCP サーバーの接続は、Quick 側のコネクタと AgentCore 側の Gateway を介して行われる。Inbound Auth はユーザーアクセスを管理し Amazon Cognito を使用し、Outbound Auth は機械間認証に OAuth 2.0 と AgentCore Identity を使用する。
重要な引用
MCP servers allow foundation models to access external data and tools, supporting standardized, secure access to files, databases, and APIs.
If you want a fully managed serverless MCP server solution with session isolation, extended execution time, persistent file systems, built-in authentication, observability, enhanced payload, bidirectional streaming, and evaluations, you can use AgentCore Runtime for MCP server hosting.
The authorization flow from Amazon Quick to AgentCore Gateway is referred to as Inbound Auth, and the flow from AgentCore Gateway to AgentCore Runtime is referred to as Outbound Auth.
Inbound Auth handles authentication and authorizes the user to access the MCP server. For Inbound Auth, we use Amazon Cognito for authorization needs, but you can use another identity provider.
編集コメントを表示
編集コメント
MCP プロトコルの普及に伴い、AWS がその実装基盤として AgentCore Runtime を前面に押し出したことは、エージェンティック AI の実用化を加速させる重要な一歩である。開発者は今後は個別の接続ロジックよりも、標準プロトコルに基づくツール設計と再利用に注力できるようになるだろう。
Source Article
元記事を日本語で読む
本文に関係しない購読案内、埋め込み通知、サイト内プロモーションは除いています。
Model Context Protocol (MCP) サーバーを使えば、基盤モデルが外部データやツールにアクセスできるようになります。これにより、ファイル、データベース、API への標準化された安全なアクセスが可能になり、AI エージェントは現実世界のアプリケーションと直接やり取りできます。正確な文脈を提供することでハルシネーション(幻覚)を減らし、状態を保持した複数回の対話も実現します。業界の標準アーキテクチャが急速に進化し、MCP を活用してエージェント型 AI のワークフローを支える動きが広がっています。
Amazon Quick は、自律的な実行、リアルタイムデータへのアクセス、専門的な AI サブエージェントとの連携のために MCP 統合をサポートしています。すでに MCP サーバーをお持ちの場合は、この 統合ガイド を参照して Amazon Quick と連携できます。まだ MCP サーバーを持っていない場合は、AWS Well-Architected の各柱に沿った AWS 提供の MCP サーバーのデプロイに関するガイダンス を利用できます。
ユースケースに応じて複数の選択肢があります。ご自身で REST API をお持ちの場合や、Amazon API Gateway で動作している場合などは、Amazon Bedrock AgentCore ゲートウェイを介して Amazon Quick と直接統合できます。
AI エージェントの実行能力を最小限に抑え、サーバーレスアーキテクチャを望む場合は、AWS Lambda 関数を作成し、AgentCore Gateway を介して Amazon Quick と連携させることができます。
一方で、セッションの分離、実行時間の延長、永続的なファイルシステム、組み込み認証、観測性、拡張されたペイロード、双方向ストリーミング、評価機能など、完全管理型のサーバーレス MCP サーバーソリューションを必要とする場合は、MCP サーバーのホスティングに AgentCore Runtime を使用し、AgentCore Gateway を通じて Amazon Quick と接続することをお勧めします。
本稿では、AgentCore Runtime での MCP サーバーのデプロイとホスティング方法、Amazon Quick との統合手順、および必要な前提条件について解説します。このパターンを採用することで、AI ツールの再利用が可能になり、重複を避けることができます。これにより、クライアントは MCP サーバーを通じて公開された共通ツールやエージェントを再利用でき、ゼロから作成する必要がなくなります。また、顧客は特定のユースケースごとにカスタムコネクタを開発することなく、Amazon Quick 内のチャットエージェントやワークフローで直接製品を利用できるようになります。
ソリューションの概要
現在、Amazon Quick は Web ブラウザまたはデスクトップアプリから利用でき、AI エージェント機能を提供する チャットエージェント や Flows を操作できます。この AI エージェントを MCP サーバーに接続し、追加のツールやサブエージェント機能へのアクセスを実現するには、MCP サーバーを Amazon Quick に統合する必要があります。
この統合は、Amazon Quick 側のコネクタと AgentCore 側の AgentCore Gateway を介して行われます。AgentCore Gateway と Runtime は、生成 AI アプリケーション構築のためのフルマネージドサービスである Amazon Bedrock AgentCore で利用可能です。
Amazon Quick から AgentCore Gateway へのフローは「Inbound Auth(インバウンド認証)」と呼ばれ、AgentCore Gateway から AgentCore Runtime へのフローは「Outbound Auth(アウトバウンド認証)」と呼ばれます。Inbound Auth はユーザーの認証と権限付与を担い、MCP サーバーへのアクセス許可を行います。ここでは Amazon Cognito を使用して認証・認可処理を行いますが、他の ID プロバイダーを利用することも可能です。
一方、Outbound Auth はマシン間認証と権限付与を担当し、AI エージェント向けに設計された包括的な ID アクセス管理サービスである AgentCore Identity を使用します。MCP プロトコルでは現在、認証プロトコルとして OAuth 2.0 が必須とされているため、Outbound Auth でも OAuth 2.0 が採用されています。

事前準備
本記事の手順に従って、ご自身の AWS アカウントでソリューションをデプロイする前に、以下の前提条件を満たしていることを確認してください。
- AWS アカウント の所有権があること。
- Amazon Quick が「Author」以上のサブスクリプションで設定されていること。
- AgentCore、Amazon Cognito、Amazon CloudWatch 用の AWS リソースを作成する権限があること。また、AWS Identity and Access Management (IAM) ロールとポリシーの作成権限も必要です。
- AWS サービスに関する基本的な知識を持っていること。
- Amazon Bedrock AgentCore のセットアップには、AWS SDK と Python がインストールされたコマンドライン環境へのアクセスが必要です。
- AWS CLI と Python の使用方法を知っていること。
- Anthropic モデルへのアクセスが有効になっている Amazon Bedrock を利用していること。
- このチュートリアルを実行するには、Python 3.10 以上が必要です。
- AWS クレデンシャルが設定されていること。
- Amazon Bedrock AgentCore SDK がインストールされていること。
- MCP (Model Context Protocol) ライブラリが用意されていること。
- Docker デーモンが実行されていること。
実装手順
以下の手順に従って、ローカルで構築した MCP サーバーを、Amazon Quick チャットエージェント内で完全に統合され、認証されたツールとして利用可能にします。
AgentCore Runtime 上でサンプルのリモート MCP サーバーを実装・デプロイする
MCP サーバーを AgentCore Gateway と統合し、インバウンドおよびアウトバウンド認証を設定する
Amazon Quick に MCP インテグレーションを登録し、チャットエージェントと連携させる
Amazon Quick 内で MCP サーバーのインテグレーションを検証する
リソースをクリーンアップする
ステップ 1: AgentCore Runtime 上でリモート MCP サーバーを実装・デプロイする
ここでは、基本的なダミーツールを搭載したサンプル MCP サーバーを AgentCore Runtime 上にデプロイします。詳細な手順とコードは GitHub の AgentCore samples notebook で確認できますが、ここでは概要を説明します。
プロジェクト構造とファイルは以下の通り作成してください:
プロジェクト構造
mcp_server_project/
├── mcp_server.py # Main MCP server code
├── requirements.txt # Dependencies
└── __init__.py # Python package markerFile: requirements.txt
mcp>=1.10.0
boto3
bedrock-agentcore
bedrock-agentcore-starter-toolkit>=0.1.21
strands-agentsPython インタープリタ上で以下のコマンドを実行し、必要な依存関係をインストールします。
uv venv sample-venv # Create Virtual Environment
source sample-venv/bin/activate # Activate Virtual Environment
uv pip install -r requirements.txt # Install the dependencies以下は最小限のサンプルコードです。認証設定の詳細については、AgentCore Gateway を用いた MCP クライアント向けのセキュアな認証フロー構築 をご覧ください。
MCP プロトコルで AgentCore Runtime を設定すると、サービスは MCP サーバーコンテナが 0.0.0.0:8000/mcp のパスに存在することを期待します。これは、公式の MCP サーバー SDK でデフォルトとしてサポートされているパスです。
ファイル:sample_mcp_server.py
from mcp.server.fastmcp import FastMCP
mcp = FastMCP(host="0.0.0.0", stateless_http=True)
@mcp.tool()
def getOrder() -> int:
"""Get an order"""
return 123
@mcp.tool()
def updateOrder(orderId: int) -> int:
"""Update existing order"""
return 456
if __name__ == "__main__":
mcp.run(transport="streamable-http")本サーバーは、Agent Core ランタイムとの互換性を確保するために必須となる stateless_http=True を設定した FastMCP を使用しています。このコードの主な役割は以下の通りです。
FastMCP: ツールをホストできる MCP サーバーを作成します。
@mcp.tool(): Python の関数を MCP ツールに変換するデコレータです。
AgentCore Runtime との互換性を確保するため、stateless_http=True を設定する必要があります。
ノートブック内の「ローカルテストクライアントの作成」および「ローカルでのテスト」というセクションの手順に従えば、ローカルの MCP サーバークライアントを使用して、MCP サーバーをローカル環境でテストすることが可能です。
これで、AgentCore Runtime へのデプロイ準備が整いました。ターミナルから Bedrock のスターターキットを使ってデプロイすることもできますし(以下の手順で説明)、Python スクリプト経由でも可能です。詳細はノートブック内の「Launching MCP Server to AgentCore Runtime」セクションをご覧ください。
本チュートリアルでは、AgentCore のスターターキットを使用します。
ターミナルを開き、現在の作業ディレクトリをプロジェクトのディレクトリに設定して、デプロイ用のプロジェクト構成を行ってください。configure コマンドは対話式で実行され、各ステップの意味が自己説明されています。本チュートリアルではデフォルト値を選択すれば問題ありません。
# Configure your AgentCore project
agentcore configure --entrypoint mcp_server.py --name simple_mcp_serverconfigure コマンドは、いくつかの重要なセットアップタスクを自動的に実行します。これにより、Python アプリケーションが異なる環境間でも一貫して動作するように、コンテナ化のための Dockerfile と .dockerignore ファイルが生成されます。
最も重要なのは、エージェントのランタイム設定とデプロイメントパラメータを保存する .bedrock_agentcore.yaml 設定ファイルが作成される点です。
--entrypoint パラメータは、エージェントの主要なロジックを含む Python ファイルを指定します。これは @app.entrypoint デコレータが適用された関数が定義されているファイルです。
一方、--name パラメータでは、AWS アカウント内で一意の識別子をエージェントに割り当てます。この識別子は、AWS 各サービス間でのリソース名付けや管理に使用されます。
プロジェクトの設定が完了したら、以下のコマンドを実行してデプロイを開始できます。
agentcore launchこれで Runtime に MCP サーバーが表示されるはずです。

ステップ 2: 双方向認証付きの AgentCore Gateway に MCP サーバーを統合する
この手順では、AgentCore Gateway を設定して、Amazon Quick とデプロイ済みの MCP サーバー間の安全なブリッジとして機能させます。入出力フローには、標準で利用可能なエンドツーエンドの TLS 通信を含む、推奨されるセキュリティベストプラクティスが適用されます。カスタマイズが必要な場合は、各サービスのドキュメントを参照してください。
具体的な設定内容は以下の通りです。まず Gateway が仮定する IAM ロールの作成、次に Amazon Quick からのリクエストを承認するための「Inbound Auth(入力認証)」と、OAuth 2.0 を通じて MCP サーバーへの呼び出しを認証するための「Outbound Auth(出力認証)」を処理する 2 つの Amazon Cognito ユーザープール、そして Gateway エンドポイントの作成です。プログラムによる設定を行う場合は、GitHub の MCP サーバーをターゲットとするチュートリアル をご参照ください。

Step 2a: AgentCore Gateway が仮定する IAM ロールの作成
AWS Management Console にアクセスし、IAM を選択して「ロールの作成」をクリックします。ユースケースとして「Amazon Bedrock AgentCore」を選択してください。

権限には、以下のインライン IAM ポリシーを添付できます。
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "MCPServerRuntimePermissions",
"Effect": "Allow",
"Action": [
"bedrock-agentcore:InvokeAgentRuntime",
"bedrock-agentcore:InvokeRegistryMcp",
"secretsmanager:GetSecretValue"
],
"Resource": [
"arn:aws:bedrock-agentcore:::runtime/",
"arn:aws:bedrock-agentcore:::runtime//runtime-endpoint/*"
}
]
}サンプルのロール名として agentcore-sample-mcpgateway-role を使用するか、独自のロール名を指定してください。リソース欄には、AgentCore Runtime にデプロイされた MCP サーバーの実行 ARN を入力します。
ステップ 2b: ゲートウェイへのインバウンド認証用 Amazon Cognito ユーザープールを作成する
Amazon Cognito にアクセスし、Amazon Quick から送信されるリクエストをゲートウェイに到達させる前に検証するためのインバウンド認証層として機能する新しいユーザープールを作成します。
Amazon Cognito に移動し、「Create user pool(ユーザープールの作成)」を選択してください。

次に、ユーザープールのリソースサーバーを設定します。ナビゲーションペインで「Branding」の下の「Domain」を選択し、認証時にゲートウェイが検証する保護対象のカスタムスコープ invoke を定義するための新しいリソースサーバーを作成してください。

後続の手順で参照されるため、先ほど作成したユーザープールから以下のインバウンド認証情報を控えておいてください。
- クライアント ID とクライアントシークレット: ナビゲーションペインで「App Clients」を選択し、アプリクライアントを選択して認証情報を確認します。
- ディスカバリ URL:
https://cognito-idp.{REGION}.amazonaws.com/{gw_user_pool_id}/.well-known/openid-configuration
ステップ 2c: 発信側認証用の Amazon Cognito ユーザープールを作成する
Amazon Cognito にアクセスし、発信側認証レイヤーとして機能する第 2 のユーザープールを作成します。これにより、Gateway は AgentCore Runtime でホストされた MCP サーバーへの呼び出しを行う際に、自身を認証できるようになります。
Amazon Cognito に移動し、「Create user pool(ユーザープールの作成)」を選択してください。

受信側認証と同様に、発信側認証用のリソースサーバーを作成し、保護されたカスタムスコープ invoke を使用して、クライアント ID、シークレット、ディスカバリー URL の詳細を取得します。

後で使用するために、発信側認証用のユーザープールから以下の情報を控えておいてください。
- クライアント ID とクライアントシークレット: ナビゲーションペインで「App Clients(アプリクライアント)」を選択し、作成したアプリクライアントをクリックして認証情報を確認します。
- ディスカバリー URL:
https://cognito-idp.{REGION}.amazonaws.com/{gw_user_pool_id}/.well-known/openid-configuration
次に、AgentCore Identity で OAuth クレデンシャルプロバイダーを作成します。Amazon Bedrock AgentCore にアクセスし、「Identity」を選択して「Add Outbound Auth」→「Create OAuth Client」をクリックしてください。このフォームには、前手順で Outbound Auth の Amazon Cognito ユーザープール内に作成したアプリクライアントから取得した Discovery URL、Client ID、Client Secret を入力します。

Step 2d: AgentCore Gateway の作成
Amazon Bedrock AgentCore にアクセスし、「Gateway」を選択して「Create Gateway」をクリックします。今回の手順では、ゲートウェイ名を ac-gateway-mcp-server とします。Inbound Auth では認証タイプとして JWT を選択し、「Use Existing Identity Provider Configuration」にチェックを入れてください。その際、Step 2b で作成した Inbound Auth の Amazon Cognito ユーザープールから取得した Discovery URL と Client ID を入力します。


「Permissions」セクションでは、Step 2a で作成した IAM ロールを使用します。

「Target」セクションで、MCP サーバーをターゲットとして登録します。この際、認証タイプには必ず OAuth Client を選択してください。現時点では MCP プロトコルが他の認証方式に対応していないためです。
MCP エンドポイント URL の作成には、以下のテンプレートを使用します。encoded_agentcore_runtime_mcp_server_arn の部分には、AgentCore にデプロイした MCP サーバーの ARN を URL エンコードした値を代入してください。
関連記事
今日のまとめ
AIデイリーブリーフで今日の重要ニュースをまとめ読み