AI エージェントと MCP サーバーによる自律的なビジネスインサイトの生成
AWS はマルチエージェントシステムと MCP サーバーを活用し、分散したデータソースを統合して自律的に業務洞察を提供する仕組みの重要性を強調している。
AI深層分析を開く2026年7月30日 01:14
AI深層分析
キーポイント
従来のビジネス分析における課題
管理者は複数のシステム間で手動でデータを収集・統合する必要があり、意思決定までに数時間を要し、データは存在しても一貫した洞察として機能しない状況が指摘されている。
マルチエージェントと MCP サーバーの役割
従来の BI ダッシュボードや単一の AI アシスタントでは不十分であり、複数のシステムを横断して自律的に調整し、文脈に基づいた実行可能な知見を提供する新アプローチが提案されている。
カスタムフレームワーク構築の障壁
フルスタックを跨ぐカスタムマルチエージェントフレームワークは理論上可能だが、個別のコネクタ作成やセッション管理など、ゼロから構築するには数ヶ月のエンジニアリング期間が必要となる。
データと洞察の非対称性
企業には豊富なデータが存在する一方で、それを統合して意味のある洞察に変換する仕組みが欠如しており、これが意思決定のボトルネックとなっていることが強調されている。
従来のアプローチの課題
管理者がシステム間の統合層となり、意思決定に必要な情報を得るために時間がかかる。カスタムマルチエージェントフレームワークを構築するには数ヶ月のエンジニアリングが必要である。
重要な引用
The data existed but it just couldn't speak in one voice.
Managing complex ETL pipelines, fragmented data stores and access patterns, and multiple AI assistants and agents lead to additional challenges for end users.
Businesses should not need an engineering team just to ask questions about their own data.
The real cost is not engineering time — it is the decisions made on stale, partial information while the right answer was sitting in a system nobody had time to check.
編集コメントを表示
編集コメント
AWS のブログ記事は、単なるツールの紹介ではなく、現場の管理者が直面する複雑なデータ統合の問題を明確に定義し、その解決策としてマルチエージェントと MCP サーバーの組み合わせを提示している。これは実務レベルでの AI エージェント活用における重要な転換点を示唆しており、技術的な詳細よりもビジネス価値の実現プロセスに焦点を当てている点が特徴的である。
Source Article
元記事を日本語で読む
本文に関係しない購読案内、埋め込み通知、サイト内プロモーションは除いています。
月曜朝の課題
サラ・チェンは、12 の生産ラインと 2,000 台の機械を管理しています。午前 10 時の生産レビューの前に、彼女が知りたいのはたった一つの答えです。
「今週、どのラインに注力すべきか?」
シンプルな質問ですが、その回答に至る道のりは決して簡単ではありません。
まず IoT ダッシュボードを確認します。4 番ラインのモーター温度はベースラインから 12°C 高く、すでに 3 日続いています。キャリブレーションのズレでしょうか、それともベアリングの故障でしょうか。ダッシュボードにはシグナルは表示されても、原因までは示されません。
そこで ERP システムに切り替えてメンテナンス履歴を確認します。42 号機では 8 ヶ月前にベアリングが交換されています。保証期間は 12 ヶ月ですが、稼働時間ログ(別のヒストリアンデータベースに格納されており、見つけにくい場所にあります)を見ると、今年 1 月以来定格容量の 130% で稼働し続けていたことがわかります。
この重要な背景情報は、IoT ダッシュボードには一切記載されていません。
次に、過去 30 日間の OEE(総合設備効率)の推移を確認します。4 番ラインの稼働率は 94% から 87% に低下し、9 番ラインのスループットも 6% 減少しています。これらは関連しているのでしょうか?両ラインは共通の冷却水ループを共有していますが、その関係性はどのシステムでもモデル化されていません。
不良率もチェックします。4 番ラインのスクラップ率は先週火曜日に 2.3% 急増しましたが、9 番ラインではまだ何も起きていません。冷却水の仮説が間違っているのか、それとも 9 番ラインは単に遅れているだけなのか。
サラは 3 人の監督者にメールを送ります。午前 11 時 15 分、ようやく確信を持って回答を得ることができました。
2 階下では、ライン監督のラージ・パテルがライン 7 のために同じ作業を行っています。ただし、彼は分析ダッシュボードにアクセスできません。手元にあるのは 3 日前の PDF エクスポートだけです。
保守技術者のプリヤ・ネイアは、先週機械 42 で検出した振動が悪化していないかを知りたいだけですが、データは存在するものの、彼女には閲覧権限がありません。彼女はラージに尋ねます。ラージはサラの担当アナリストに問い合わせます。そして CSV ファイルが 4 時間後に届きます。その頃には、プリヤは次の作業指示に移ってしまっています。
3 人の人間。3 つ異なるアクセスレベル。5 つの分断されたシステム。同じ基盤データ。回答を得るのに数秒で済むはずのことが、手動での結合やコンテキストの切り替え、そして待たされることで何時間もかかってしまいます。データは存在していたのに、それを一貫した声で語ることができなかったのです。
課題:データは豊富だが、洞察に欠ける
平均的な企業では、毎日5〜8の運用・分析システムが稼働しています。それぞれに独自のログイン画面、クエリインターフェース、アクセスモデルが存在します。管理者が意思決定に直結する「全システムを横断した視点」を得ようとするとき、人間がその統合役を担わざるを得ません。
従来のBIダッシュボードは「昨日何があったか」を示すだけ。単体のAIアシスタントも、個別の質問には答えられます。しかし、必要なタイミングで文脈に即した実行可能な知見を提供するために、自社の技術スタック全体を自律的に調整できるシステムはいまだ存在しません。
複雑なETLパイプラインの管理、断片化されたデータストアやアクセスパターンの整理、そして複数のAIアシスタントやエージェントの運用は、エンドユーザーにとってさらなる負担となります。カスタム多エージェントフレームワークであれば理論上は全スタックをカバー可能ですが、ゼロから構築するには数ヶ月ものエンジニアリング期間が必要です。カスタムコネクタの実装、セッション分離、メモリ基盤、セキュリティコード、スケーリングロジック、オーケストレーションロジックなど、最初のビジネス質問に答えるまでにこれらすべてを整備しなければなりません。
企業が自社のデータについて質問する際に、エンジニアチームを必要とするべきではありません。そして、真の損失はエンジニアリング時間の浪費ではなく、適切な回答が「誰も確認する時間のないシステム」の中に眠っている間に、古く不十分な情報に基づいて下された意思決定です。
解決策はコードではなく設定
Amazon Bedrock AgentCore は、従来のアプローチを逆転させます。自律型インテリジェンスシステムを一から構築するのではなく、設定によって実現します。同サービスがオーケストレーション、セキュリティ、メモリ管理、スケーリングを担当し、ユーザーは自社のデータソースとビジネスルールを提供するだけで済みます。
その結果、Sarah、Raj、Priya といった誰もが、自然言語で質問することで、技術スタック全体から統合され、個別に最適化された回答を得ることができます。どのシステムがどの情報を提供したかを知る必要もありません。
このモデルは、以下の 3 つのステップで構成されます。
- 事前構築済みの MCP サーバーコネクタを使用して既存システムを接続します。カスタム統合コードは不要です。
- Amazon Bedrock AgentCore が実行ロジックに変換する、平易な英語によるポリシールールを設定し、誰が何にアクセスできるかを定義します。
- 自然言語で質問し、残りのオーケストレーションはすべて Amazon Bedrock AgentCore に任せます。
アーキテクチャの概要
このアーキテクチャは 5 つのレイヤーで構成されており、下位のレイヤーを基盤として上位へと積み上がっています。この階層構造には明確な意図があります。ユーザー向けのインテリジェンス機能、オーケストレーション、ツール実行、データアクセスをそれぞれ分離することで、各レイヤーが独立してスケーリング可能かつ交換可能になるよう設計されているのです。
ユーザーを最上位に、Amazon Bedrock AgentCore を中核とし、その中間には事前構築された MCP サーバーコネクタが配置され、基盤としてデータインフラストラクチャが存在します。すべてのユーザーインタラクションは、認証、ポリシー、メモリ、そしてエージェントを経由して Amazon Bedrock AgentCore を流れ、最終的にデータソースに到達します。

図 1 — Amazon Bedrock AgentCore を活用した自律型 BI アーキテクチャ
このアーキテクチャは階層型設計を採用しています。ユーザーは Amazon Bedrock を介して自然言語でクエリを送信し、意図の分類と回答の合成が行われます。その後、Amazon Bedrock AgentCore へと処理が移り、ここではエージェントが孤立したランタイム、ゲートウェイ、アイデンティティおよびポリシーの適用、永続的なメモリ、そして管理されたツールレジストリーにわたる実行を調整します。
データコネクタへの選択とルーティングを行う前に、エージェントは SageMaker Data Catalog によって支えられたセマンティックレイヤーを検索します。これにより、エンタープライズ全体でどのようなデータが存在し、どこに保管されているかを、ハードコードされたロジックなしに理解できるようになります。このメタデータを基盤として、エージェントはクエリを適切な事前構築済み MCP サーバーコネクタ(設備管理、IoT テレメトリ、サプライチェーン、分析、またはカスタムローコード)へルーティングします。コネクタはその後、SageMaker Lakehouse、Redshift、S3 Tables、OpenSearch、Aurora といった基盤インフラからデータを取得します。
メタデータの発見とデータ取得を分離しているため、新しいソースを追加する際は、カスタム統合コードを書くのではなく Data Catalog に登録するだけで済みます。これにより、システムは設定のみで拡張可能となります。完全な動作実装は GitHub で公開されています。
仕組み
アーキテクチャの各レイヤーは、それぞれ固有の機能に対応しています。以下では、Sarah、Raj、Priya の実際の体験に基づき、各コンポーネントを順に解説します。
データ基盤
データ基盤は Amazon SageMaker Lakehouse を中心に構築されています。これは Apache Iceberg と完全に互換性を持つオープンなレイクハウスアーキテクチャであり、Amazon S3 データレーク(S3 Tables も含む)、Amazon Redshift データウェアハウス、そしてゼロ ETL 統合で接続された運用データストアを統合します。
エージェントは、事前構築済みとカスタム作成の MCP サーバーを組み合わせて、この統合されたデータにアクセスします。
事前構築済み MCP サーバー(設定済みで利用可能):
- Amazon Redshift MCP サーバー:サプライチェーン在庫や OEE 分析のためのウェアハウスクエリ
- AWS S3 Tables MCP サーバー:S3 に保存された Iceberg フォーマットの履歴データ
- Amazon Aurora PostgreSQL MCP サーバー:機器登録とメンテナンス履歴の運用データ
事前構築型オプションがないサービス向けのカスタム MCP サーバー:
IoT テレメトリ用 MCP サーバーは、Amazon Timestream をクエリして振動・温度・圧力などのリアルタイムセンサー時系列データを取得します。FastMCP フレームワークで構築されています。
品質分析用 MCP サーバーは、Amazon OpenSearch Serverless をクエリし、不良パターンの一致検索や品質検査ドキュメント全体での意味検索を実現します。
セマンティックレイヤー用 MCP サーバーは、SageMaker Data Catalog のメタデータをクエリして、エージェントが実際に呼び出す前にどのデータソースが関連するかを特定するのを支援します。
Timestream などのサービス向けにカスタム MCP サーバーを構築するには、ツールインターフェースを定義し、AWS SDK に処理を委譲するだけで十分です:
from mcp.server import FastMCP
mcp = FastMCP("IoT Telemetry Server", port=8002)
@mcp.tool(description="Get sensor readings for a specific machine")
def get_sensor_readings(machine_id: int, metric: str = "temperature", days: int = 7) -> str:
# Validate input, query Timestream via boto3, return JSON
...
一度登録されれば、カスタム MCP サーバーも事前構築型と同じように動作します。エージェントは同じ MCP プロトコルを通じてツールを自動的に発見し、同様の呼び出し方を行います。つまり、企業は一般的なサービスには事前構築されたコネクタから始め、専門的またはレガシーシステム向けにカスタムサーバーを追加していくことで、エージェントやオーケストレーションロジックを変更することなく段階的に拡張できるのです。
MCP サーバー:データへの事前構築済みコネクタ
モデル・コンテキスト・プロトコル(MCP)は、AI エージェントがツールをどのように発見し、呼び出すかを定義するオープンスタンダードです。このアーキテクチャでは、設備状況や IoT テレメトリ、サプライチェーン、品質管理など、ビジネスの各ドメインに対応した専用の MCP サーバーが存在します。
各サーバーは、get_equipment_status(設備状況の取得)、detect_anomaly(異常検知)、check_parts_inventory(部品在庫の確認)といった型付きツールを公開しています。エージェントは、開発者が API を呼び出すようにしてこれらのツールを使用します。
企業が実用面で重視するのは、ゼロからサーバーを構築する必要がない点です。Amazon Bedrock AgentCore には、Amazon Redshift や Amazon Aurora、Amazon OpenSearch などの一般的なシステム向けに事前構築された MCP コネクタが用意されています。また、OAuth を通じてサードパーティのシステムとも連携可能です。
独自システムやカスタムシステムの場合でも、Amazon Bedrock AgentCore Runtime 上の低コード用 MCP サーバーテンプレートを利用すれば、開発ではなく設定作業に集中できるため、負担を大幅に軽減できます。
接続オプションは、エンタープライズシステムのあらゆる範囲をカバーしています:
Amazon SageMaker Catalog を活用したセマンティック・ストアにより、適切なデータソースの特定、選択、クエリを可能にします。
関係型データベースとして Amazon Aurora や RDS を利用し、業務データを統合します。
Amazon MSK などのストリーミングサービスを活用すれば、リアルタイムの IoT センサーフィードやイベントストリームを SageMaker Lakehouse に直接取り込むことができます。
ベクトルストアには Amazon OpenSearch Service を採用。これにより、セマンティック検索やリアルタイムなベクトル埋め込み(Amazon MSK と連携)、そして Amazon S3 内の非構造化データに対するハイブリッド型キーワード・ベクトルクエリが実現します。
ゼロ ETL 機能を備えたデータウェアハウスと Lakehouse を構築。これにより、多様なデータストアからデータを複製し、SageMaker Lakehouse 内の Amazon S3 テーブルや Amazon Redshift に格納することで、多年にわたる履歴データの保存を可能にします。
サードパーティ製 SaaS との連携も可能です。Amazon Bedrock AgentCore Gateway の OAuth 統合を経由して REST や GraphQL API を利用し、Salesforce、SAP、ServiceNow などのシステムとシームレスに接続できます。
MCP サーバーは、ステートレスモード(デフォルト設定で、各呼び出しが独立)またはステートフルモードで実行可能です。後者はセッション内で中間結果を保持しながら多段階の操作を行う場合に適しています。
MCP サーバーのメリットとトレードオフ
メリット
緩い結合性を実現できます。各 MCP サーバーは独立してデプロイされるため、CRM コネクタを更新しても IoT コネクタには影響しません。ドメインごとのカプセル化により、各サーバーが独自のスキーマと認証コンテキストを管理します。AWS ネイティブサービス用の事前構築済みコネクタが存在するため、多くの企業でコアデータソースへの接続を数時間で完了できます。オープンな MCP 標準を採用することでベンダーロックインを回避でき、MCP 互換のサーバーは Amazon Bedrock AgentCore と連携可能です。
トレードオフ
事前構築済みコネクタがないカスタムシステムやレガシーシステムの場合、ローコードテンプレートによる設定が必要となり、一度きりのセットアップ工程が追加されます。ステートフルな MCP サーバーを採用すると、セッションアフィニティの要件が生じ、水平方向へのスケーリング展開では慎重な計画が必要です。MCP サーバーを追加するごとに、監視とバージョン管理の対象となるエンドポイントが増加します。事前構築済みコネクタの有無に関わらず、MCP サーバーへ接続するにはゲートウェイの利用を検討してください。
Amazon Bedrock AgentCore Gateway: 統一されたエントリーポイントとインテリジェントなルーティング
このゲートウェイは、すべてのエージェントからツールへの呼び出しが流れる単一の入り口です。新しい MCP サーバーが登録されると、ゲートウェイはプロトコルのハンドシェイクを実行し、利用可能なツール(その名前、入力スキーマ、説明)をインデックス化します。エージェント側では MCP サーバーのアドレスを知る必要はありません。ツール名を通じてゲートウェイに呼び出しを行い、ゲートウェイがリクエストを適切なサーバーへルーティングします。
ゲートウェイは、繰り返しクエリのレイテンシを削減するために設計された 3 層キャッシュ戦略を実装しています。組織レベルのキャッシュには、全ユーザーが共有する参照データ(設備カタログレコード、製品リスト、しきい値など)が保持され、毎日更新されます。一方、ユーザーレベルのキャッシュには特定のユーザーに固有の直近クエリ結果が保存され、そのユーザーのアクセスコンテキストを尊重します。
ポリシーエンジンでは、どのレスポンスをユーザー間で共有可能にするか、どのレスポンスを個別に隔離するかを決定します。精密製造業の事例で言えば、プラントマネージャーからの全機隊ステータスに関するクエリはキャッシュから部分的に提供できますが、Priya さんの「機械 42」に関するクエリは彼女個人のスコープに限定されます。
Amazon Bedrock AgentCore Runtime: ユーザーごとに隔離された実行環境
Amazon Bedrock Agent Core Runtime は、Firecracker マイクロVM 環境にエージェントをデプロイし、AWS Lambda や AWS Fargate で採用されているのと同じ技術によって、高い分離性とセキュリティを実現します。サーバー管理は不要で、自動スケーリングもサポートされています。
Sarah がクエリを送信すると、Runtime は専用のマイクロVM を起動します。Raj のセッションは別のマイクロVM で実行され、Priya のセッションはさらに別のマイクロVM で処理されます。共有ファイルシステムも、共有メモリも、共有ネットワークもありません。セッションが終了すれば、そのマイクロVM は即座に破棄されます。
マルチテナンシーはソフトウェアの慣習ではなく、ランタイム自体の属性として定義されています。
実装のポイント: deploy/agentcore/deploy_all.py スクリプトで、Cognito によるアイデンティティ管理、Lambda ツールターゲットを持つゲートウェイ、Cedar ポリシー、リクエスト・レスポンスインターセプターなど、フルスタックをプロビジョニングします。Amazon Bedrock Agent Core Gateway がセッションの分離、アイデンティティの伝播、ポリシーの強制処理を自動で行うため、エージェント側のコードを変更する必要はありません。
Amazon Bedrock AgentCore Identity: 認証情報の伝播
Amazon Bedrock AgentCore Identity は、堅牢なアイデンティティおよびアクセス管理機能を提供します。これにより、エージェントはユーザーに代わって、あるいは自らの判断でリソースやツールにアクセスできるようになります。このプロセスには事前のユーザー同意が必要であり、カスタムアクセス制御やアイデンティティ基盤の開発を最小限に抑えることができます。
このアイデンティティ機能は、既存のプロバイダー(Okta、IAM、Cognito、OAuth 2.0 システムなど)と連携し、Mcp-Session-Id ヘッダーを通じて呼び出しチェーン全体でユーザーのコンテキストを伝播させます。サポートされているフローは主に 2 つです。
- エージェントレベルでのアクセス(サービス間通信)
- ユーザー委任によるアクセス(エージェントが特定のユーザーに代わって、そのスコープ付きトークンを使用して動作する)
実際の精密製造業のユースケースでは以下のようになります。
- サラさんのトークン(Cognito 発行)は、全 3 つの工場と全 12 の生産ラインへのアクセス権限を付与します。
- ラジさんのトークンは、工場 2 のライン 7 にのみスコープが限定されます。
- プリヤさんのトークンは、機械 41〜45 にのみスコープが限定されます。
これらの制限は ID プロバイダー(IdP)から設定されたものです。Amazon Bedrock AgentCore はこれら呼び出しチェーン全体で伝播し、自動的に適用します。もし Cognito 上でラジさんの権限スコープが変更されても、コードを変更することなくシステム側ですぐに反映されます。
実装におけるポイント: src/identity/models.py では、明示的なスコープを持つ 3 つのユーザーアイデンティティを定義しています。本番環境では、これらは AgentCore が自動的に伝播させる Cognito のクレームから取得されます。
Amazon Bedrock AgentCore Policy: 平易な英語で記述する権限管理
Amazon Bedrock AgentCore のポリシーは、Gateway と連携してすべてのツール呼び出しをリアルタイムでインターセプトし、エージェントが定義された範囲内にとどまるよう検証します。チームは自然言語を使ってポリシーを作成でき、これらは自動的に AWS のオープンソースポリシー言語である Cedar へ変換されます。デプロイ前には自動推論機能によってポリシーの完全性が検証される仕組みです。
ポリシーの実行は Gateway レベルで行われ、ツール呼び出しが実行される前にすべてをインターセプトします。ルールはユーザーの役割、地理的な範囲、データ分類、時間帯、特定のツールのパラメータなど、複数の次元にわたって機能します。例えば、「ライン監督者は、割り当てられたプラント内のラインのみに対して get_equipment_status を呼び出すことができる」といったポリシーが考えられます。Raj がライン 4 について質問した際、Gateway は彼の身元をこのルールと照合し、MCP サーバーに問い合わせる前に拒否判断を下します。すべての決定は AWS CloudTrail にログとして記録されます。
実装例: Cedar で記述されたポリシーを Amazon Bedrock AgentCore Gateway にデプロイすることで、Lambda ツールターゲットが実行される前のインフラレベルで細粒度のアクセス制御を適用できます。Raj がライン 4 を照会した際、Gateway のポリシーエンジンが彼の JWT クレームを Cedar ルールと評価し、拒否を返します。この時点で MCP サーバーへの問い合わせは行われません。
デプロイされた Gateway を使わないローカル開発環境では、src/identity/gateway_hook.py が Strands Agents の BeforeToolCallEvent フックを利用して、同様の権限制御をシミュレートします。
シーケンス図:アクセス制御フロー
以下の図は、Amazon Bedrock AgentCore Gateway が実装するエンドツーエンドのアクセス制御フローを示しています。ユーザーID(Cognito からの JWT クレームを通じて)が REQUEST インターセプタを通過し、Cedar ポリシーエンジンで評価され、MCP ツールの呼び出しが可能かどうかが決定されるまでの流れと、データがシステム外に出る前にリクエストが拒否されるケースについて描かれています。
図1:エンドツーエンドのアクセス制御シーケンス
この UML スタイルのシーケンス図は、Cognito を介したユーザー認証から始まり、エージェントの LLM による推論、Amazon Bedrock AgentCore Gateway のエンリッチメントと認可レイヤーを経て、最終的にツールの実行または拒否に至るまでのリクエストの完全なライフサイクルを示しています。
主な観察点:
認証では、Cognito が JWT を発行します。この JWT にはロールやラインスコープ、プラントスコープ、機器スコープといったカスタムクレームが含まれており、ユーザーのデータ境界を定義しています。
エンリッチメント(情報付与)では、REQUEST インターセプターが JWT をデコードし、ツール呼び出し引数にユーザーコンテキストを注入します。このステップはエージェントや LLM には見えず、制御もされません。
認可処理では、Cedar が拡張されたリクエストをポリシーに対して評価します。基本方針として「すべて許可(permit_all)」が設定されていますが、特定のルール(forbid_*)によって、要求されたパラメータがユーザーのスコープ内にあるかどうかもチェックされます。
実行と拒否の分岐では、Cedar が許可した場合、ゲートウェイは Lambda ツールターゲットへリクエストを転送します。一方、Cedar が拒否した場合は MCP サーバー自体が呼び出されず、データ漏洩を防ぎます。
合成(シナセシス)では、エージェントはツールからの結果か、あるいは拒否メッセージのいずれかを受け取ります。そして自然言語による回答を生成します。拒否された場合、エージェントはその境界理由を説明し、スコープ内での代替案を提案します。

図 2 — Amazon Bedrock Ag
原文を表示
A Monday morning problem
Sarah Chen manages 12 assembly lines and 2,000 machines. Before her 10 AM production review, she needs one answer: *Which lines need attention this week?*
Simple question. Painful journey.
She starts in the IoT dashboard. Line 4’s motor temperature is running 12°C above baseline — has been for three days. Calibration drift or bearing failure? The dashboard shows signals, not causes. So she pivots to the ERP system for maintenance history. Machine 42 had a bearing replaced eight months ago. Warranty says 12 months, but the operating hours log — buried in a separate historian database — shows it’s been running at 130% rated capacity since January.
That context exists nowhere in the IoT dashboard.
She pulls 30-day OEE trends. Line 4’s availability dropped from 94% to 87%. Line 9’s throughput also dipped 6%. Related? They share a coolant loop, but that relationship isn’t modeled in any system. She checks defect rates. Line 4’s scrap jumped 2.3% last Tuesday. Line 9 shows nothing — yet. Is the coolant theory wrong, or is Line 9 just lagging?
She emails three supervisors. By 11:15 AM, she finally has a confident answer.
Two floors down, Line Supervisor Raj Patel is doing the same exercise for Line 7 — except he can’t access the analytics dashboard. He’s working from a PDF export that’s three days stale. Maintenance Technician Priya Nair just wants to know if the vibration she flagged on Machine 42 last week has gotten worse. The data exists. She doesn’t have credentials to see it. She asks Raj. Raj asks Sarah’s analyst. A CSV arrives four hours later. By then, Priya has moved on to her next work order.
Three people. Three different access levels. Five disconnected systems. The same underlying data. Hours of manual stitching, context-switching, and waiting—for answers that should take seconds. The data existed but it just couldn’t speak in one voice.
The problem: Data-rich, insight-poor
The average enterprise runs five to eight operational and analytical systems daily. Each has its own login, its own query interface, and its own access model. When a manager needs a cross-system view — the kind that actually drives decisions — a human being becomes the integration layer. Traditional BI dashboards show what happened yesterday. Single AI assistants can answer isolated questions. But neither can autonomously coordinate across your entire technology stack to deliver contextual, actionable intelligence exactly when needed. Managing complex ETL pipelines, fragmented data stores and access patterns, and multiple AI assistants and agents lead to additional challenges for end users. Custom multi-agent frameworks can theoretically span the full stack, but building one from scratch requires months of engineering: custom connectors, session isolation, memory infrastructure, security code, scaling logic, and orchestration logic — all before the first business question gets answered.
Businesses should not need an engineering team just to ask questions about their own data. And the real cost is not engineering time — it is the decisions made on stale, partial information while the right answer was sitting in a system nobody had time to check.
The solution: Configuration, not code
Amazon Bedrock AgentCore flips the model. Instead of building an autonomous intelligence system from the ground up, you configure one. Amazon Bedrock AgentCore handles orchestration, security, memory, and scaling. You bring your data sources and your business rules. The result is a system where Sarah, Raj, and Priya can each ask natural language questions and get synthesized and personalized answers from across the entire technology stack — without knowing which system provided which piece of the answer.
The model is three steps:
- Connect your existing systems using pre-built MCP server connectors — no custom integration code.
- Define who can see what using plain-English policy rules that Amazon Bedrock AgentCore translates into enforcement logic.
- Ask questions in natural language and let Amazon Bedrock AgentCore orchestrate the rest.
Architecture overview
The architecture is organized into five layers, each building on the one below. The layered structure is intentional: it separates user-facing intelligence from orchestration, from tool execution, from data access — keeping each layer independently scalable and replaceable.
Users at the top, Amazon Bedrock AgentCore as the center of gravity, pre-built MCP server connectors in the middle, and the data infrastructure at the foundation. Every user interaction flows through Amazon Bedrock AgentCore — through authentication, policy, memory, and the Agent — before reaching data sources.

*Figure 1 — Autonomous BI architecture using Amazon Bedrock AgentCore*
The architecture follows a layered design, where a user queries in natural language through Amazon Bedrock for intent classification and response synthesis, then into Amazon Bedrock AgentCore, where the agent orchestrates execution across isolated run-times, a gateway, identity and policy enforcement, persistent memory, and a governed tool registry. Before selecting and routing to data connectors, the agent looks up the Semantic Layer powered by SageMaker Data Catalog, which exposes the right data sources — enabling the agent to understand what data exists across the enterprise and where it resides without hard-coded logic. Equipped with this metadata, the agent routes the query to the appropriate pre-built MCP server connector (equipment, IoT telemetry, supply chain, analytics, or custom low-code), which in turn pulls data from the underlying infrastructure — SageMaker Lakehouse, Redshift, S3 Tables, OpenSearch or Aurora. This separation of metadata discovery from data retrieval means new sources can be on-boarded by registering them in the Data Catalog rather than writing custom integration code, keeping the system extensible through configuration alone. The complete working implementation is available on GitHub.
How it works
Each layer of the architecture corresponds to a distinct set of capabilities. Below is a guided tour through each component, grounded in what Sarah, Raj, and Priya actually experience.
Data infrastructure
The data foundation is built on Amazon SageMaker Lakehouse — an open lakehouse architecture fully compatible with Apache Iceberg that unifies data across Amazon S3 data lakes (including S3 Tables), Amazon Redshift data warehouses, and operational data stores connected through zero-ETL integrations. The agent accesses this unified data through a combination of pre-built and custom MCP servers:
Pre-built MCP servers (ready to configure): Amazon Redshift MCP server — warehouse queries for supply chain inventory and OEE analytics AWS S3 Tables MCP server — Iceberg-format historical data in S3 Amazon Aurora PostgreSQL MCP server — operational data for equipment registry and maintenance history
Custom MCP servers (for services without a pre-built option): Custom MCP servers (for services without a pre-built option)- IoT Telemetry MCP server — queries Amazon Timestream for real-time sensor time-series (vibration, temperature, pressure). Built with FastMCP framework. Quality Analytics MCP server — queries Amazon OpenSearch Serverless for defect pattern matching and semantic search across quality inspection documents. Semantic Layer MCP server — queries SageMaker Data Catalog metadata to help the agent discover which data sources are relevant before calling them.
Building a custom MCP server for a service like Timestream requires only defining the tool interface and delegating to the AWS SDK:
from mcp.server import FastMCP
mcp = FastMCP("IoT Telemetry Server", port=8002)
@mcp.tool(description="Get sensor readings for a specific machine")
def get_sensor_readings(machine_id: int, metric: str = "temperature", days: int = 7) -> str:
# Validate input, query Timestream via boto3, return JSON
...Once registered, a custom MCP server behaves identically to a pre-built one — the agent discovers its tools through the same MCP protocol and calls them the same way. This means enterprises can start with pre-built connectors for common services and add custom servers incrementally for specialized or legacy systems, without changing the agent or the orchestration logic.
MCP servers: Pre-built connectors to your data
The Model Context Protocol (MCP) is an open standard that defines how AI agents discover and invoke tools. In this architecture, each domain of your business — equipment status, IoT telemetry, supply chain, quality management — is represented by a dedicated MCP server. Each server exposes a set of typed tools: get_equipment_status, detect_anomaly, check_parts_inventory. The agent calls these tools, the way a developer calls an API. What makes this practical for enterprises is that you do not build these servers from scratch. Amazon Bedrock AgentCore provides pre-built MCP connectors for common systems: Amazon Redshift, Amazon Aurora, Amazon OpenSearch, and third-party systems through OAuth. For proprietary or custom systems, low-code MCP server templates on Amazon Bedrock AgentCore Runtime reduce the effort to configuration rather than development.
Connectivity options span the full spectrum of enterprise systems:
- Semantic store through Amazon SageMaker Catalog for right data source identification, selection and querying.
- Relational databases: Amazon Aurora, RDS. Which bring in the operational data.
- Streaming services like Amazon MSK for real-time IoT sensor feeds and event streams to SageMaker Lakehouse.
- Vector stores: Amazon OpenSearch Service for supporting semantic search, real-time vector embedding with Amazon MSK, and hybrid keyword-vector queries on unstructured data in Amazon S3.
- Data Warehouses and Lakehouses with Zero ETL features to replicate data from various data stores to Amazon S3 Tables/Amazon Redshift in SageMaker Lakehouse. Thus storing multi-year historical records.
- Third-party SaaS: REST or GraphQL APIs via the Amazon Bedrock AgentCore Gateway OAuth integration (for example, Salesforce, SAP, ServiceNow).
- MCP servers can run in stateless mode (default, each call is independent) or stateful mode for multi-step operations that need to maintain intermediate results within a session.
MCP servers: Advantages and trade-offs
Advantages Loose coupling — each MCP server is deployed independently. Updating the CRM connector does not touch the IoT connector. Domain encapsulation means each server owns its schema and authentication context. Pre-built connectors for AWS-native services mean most enterprises can connect their core data sources within hours. The open MCP standard avoids vendor lock-in — MCP-compatible servers work with Amazon Bedrock AgentCore.
Trade-offs Custom or legacy systems without a pre-built connector require a low-code template configuration, which adds a one-time setup step. Stateful MCP servers introduce session affinity requirements that need careful planning for horizontally scaled deployments. Each additional MCP server is one more endpoint to monitor and version. Consider using gateway to connect to MCP servers with or without pre-built connectors.
Amazon Bedrock AgentCore Gateway: Unified entry point and intelligent routing
The Gateway is the single entry point through which every agent-to-tool call flows. When a new MCP server is registered, the Gateway performs a protocol handshake and indexes its available tools — their names, input schemas, and descriptions. The agent does not need to know the address of a MCP server. It calls tools by name through the Gateway, which routes the request to the appropriate server. The Gateway implements a three-tier caching strategy designed to reduce latency for repeat queries. Organization-scoped cache holds reference data that all users share — equipment catalog records, product lists, threshold values — and refreshes daily. User-scoped cache holds recent query results that are personal to a specific user and respects their access context. The Policy engine determines which responses can be shared across users and which must remain isolated. For Precision Manufacturing, this means that a Plant Manager’s query about overall fleet status can be partially served from cache, while Priya’s query about Machine 42 is scoped to her.
Amazon Bedrock AgentCore Runtime: Isolated execution for every user
Amazon Bedrock AgentCore Runtime deploys agents to Firecracker microVM environments delivering isolation and security — the same technology that powers AWS Lambda and AWS Fargate — with no servers to manage and automatic scaling. When Sarah submits her query, Runtime spins up a dedicated microVM. Raj’s session runs in a separate microVM. Priya’s in a third. No shared filesystem, no shared memory, no shared networking. When the session ends, the microVM is destroyed. Multi-tenancy is a runtime attribute, not a software convention.
In our implementation: deploy/agentcore/deploy_all.py provisions the full stack — Cognito identity, Gateway with Lambda tool targets, Cedar policies, and request/response interceptors. Amazon Bedrock AgentCore Gateway then handles session isolation, identity propagation, and policy enforcement automatically, with no changes to the agent code itself.
Amazon Bedrock AgentCore Identity: Authentication that propagates
Amazon Bedrock AgentCore Identity provides robust identity and access management so that agents can access resources or tools either on behalf of users or themselves, with pre-authorized user consent, minimizing the need for custom access controls and identity infrastructure development. Identity integrates with your existing providers (Okta, IAM, Cognito, OAuth 2.0 systems) and propagates user context through the entire call chain using the Mcp-Session-Id header. Two flows are supported: agent-level access (service-to-service) and user-delegated access (agent acts on behalf of a specific user with their scoped token). In practice for Precision Manufacturing: – Sarah’s token (from Cognito) grants access to all three plants, all 12 lines. – Raj’s token scopes to Plant 2, Line 7 only. – Priya’s token scopes to Machine 41-45. These restrictions come from the IdP. Amazon Bedrock AgentCore propagates them through the call chain and enforces them automatically. If Raj’s scope changes in Cognito, the system reflects it immediately without code changes.
In our implementation: src/identity/models.py defines three user identities with explicit scopes. In production, these come from Cognito claims that AgentCore propagates automatically.
Amazon Bedrock AgentCore Policy: Authorization in plain English
Policy in Amazon Bedrock AgentCore integrates with Gateway to intercept every tool call in real time, verifying agents stay within defined boundaries. Teams create policies using natural language that automatically convert to Cedar — the AWS open-source policy language — with automated reasoning that validates policies for completeness before deployment. Policy enforcement happens at the Gateway level, intercepting every tool call before execution. Rules operate across multiple dimensions: user role, geographic scope, data classification, time of day, and specific tool parameters. A policy might read: “Line supervisors can call get_equipment_status only for lines within their assigned plant.” When Raj asks about Line 4, the Gateway evaluates his identity against this rule and returns a deny decision before the MCP server is ever called. Every decision is logged to AWS CloudTrail.
In our implementation: Cedar policies deployed to the Amazon Bedrock AgentCore Gateway enforce fine-grained access at the infrastructure level — before Lambda tool targets execute. When Raj queries Line 4, the Gateway’s Policy Engine evaluates his JWT claims against the Cedar rules and returns a deny. The MCP server is not contacted. For local development without a deployed Gateway, src/identity/gateway_hook.py simulates this enforcement using Strands Agents’ BeforeToolCallEvent hook.
Sequence diagrams: Access control flow
The following diagrams illustrate the end-to-end access control flow implemented by Amazon Bedrock AgentCore Gateway. They show how user identity (through JWT claims from Cognito) flows through the REQUEST Interceptor, gets evaluated by the Cedar Policy Engine, and determines whether an MCP tool is invoked or the request is denied — all before data leaves the system.
Diagram 1: End-to-end access control sequence
This UML-style sequence diagram shows the complete lifecycle of a request, from user authentication through Cognito, to the agent’s LLM reasoning, through the Amazon Bedrock AgentCore Gateway’s enrichment and authorization layers, and finally to tool execution or denial.
Key observations:
- Authentication: Cognito issues a JWT with custom claims (role, line_scope, plant_scope, equipment_scope) that encode the user’s data boundaries.
- Enrichment: The REQUEST Interceptor decodes the JWT and injects user_context into the tool call arguments — the agent/LLM does not see or control this step.
- Authorization: Cedar evaluates the enriched request against policies. A permit_all baseline allows access, while forbid_* rules check whether the requested parameter falls within the user’s scope.
- Execution vs Denial: If Cedar allows, the Gateway forwards to the Lambda tool target. If Cedar denies, the MCP server is not invoked — avoiding data exposure.
- Synthesis: The agent receives either tool results or a deny message, and composes a natural-language response. On denial, it explains the boundary and suggests alternatives within scope.

Figure 2 — Amazon Bedrock Ag
AI算出
導入事例ainew評価標準
AI エージェントと MCP サーバーを活用した製造現場の意思決定支援という具体的な応用事例を扱っているが、これは AWS の製品(Amazon Bedrock AgentCore)を紹介する導入事例記事であり、世界初の新規技術発表や独自データに基づく分析ではないため新規性は低く評価される。
6つの評価軸を見る
- AI関連度
- 75
- 情報源の信頼性
- 100
- 新規性
- 25
- 調べる価値
- 75
- 重複の少なさ
- 100
- 日本での有用性
- 25
関連記事
今日のまとめ
AIデイリーブリーフで今日の重要ニュースをまとめ読み