AIエージェントが増えると、今度は「探せない」問題が来る
社内でAIエージェントやツールの活用が進むと、各チームがそれぞれにMCPサーバーを立て、エージェントを作り、専用ツールを量産していきます。便利になっていく一方で、新しい悩みが出てきます。
「あの機能、どこかのチームが作ってなかったっけ?」「同じようなツールをまた一から作っている気がする」――こうしたリソースのサイロ化が発生します。見つけられないがゆえに既存のものを再発明し、重複と技術的負債だけが積み上がっていきます。
AWS Agent Registry は、まさにこの「探せない」問題を解決するためのサービスです。Amazon Bedrock AgentCore の一機能として提供される、フルマネージドのディスカバリ(発見)サービスで、MCPサーバー・ツール・エージェント・エージェントスキル・カスタムリソースを、検索可能な一つのカタログにまとめてくれます。組織の「住所録」のような存在だと考えると分かりやすいかもしれません。
基本機能
ポイントは大きく6つです。
- 集中ディスカバリ ― 組織内のリソースを一カ所に集約。人間もAIエージェントも検索できます。
- ガバナンスとキュレーション ― 承認ワークフローを通り、セキュリティ・品質基準を満たしたものだけが公開されます。管理者はいつでも公開を取り消せます。
- 柔軟なリソースタイプ ― MCP、エージェント、スキル、任意のカスタムリソースを登録可能。MCP/エージェントは公式プロトコルスキーマで検証されます。
- ハイブリッド検索 ― セマンティック検索とキーワード検索を組み合わせ、自然言語でも正確な名前でもヒットします。
- MCPネイティブアクセス ― レジストリ自身がMCPエンドポイントを持ち、MCP互換クライアントから直接やり取りできます。
- 柔軟な認可 ― AWS IAM、または社内IdPのJWTを選べます。
利用シーン
公式のユースケースを見ると、効きどころがイメージしやすくなります。
https://docs.aws.amazon.com/bedrock-agentcore/latest/devguide/registry-use-cases.html
社内ワークフローの部品探し。 例えば「従業員の有給残数レポートを作る社内ワークフロー」を組みたいとき、必要なのは従業員情報サービス・PTO管理サービス・ドキュメント生成サービスの3つ。社内Wikiを漁ったり人に聞いて回る代わりに、レジストリを検索すれば接続情報とツールスキーマ付きで3つとも見つかります。数日かかっていた「探す」工程が数分になります。
顧客向けエージェントへの機能追加。 注文照会を担当する顧客サービスエージェントに「配送遅延の追跡」機能を足したい。レジストリで配送追跡サービスを検索して見つけ、Gatewayにアタッチしてポリシーを更新するだけ。どのチームが作ったか、誰に連絡すればいいかを知らなくても済みます。
チームをまたいだエージェントの乱立を抑える。 管理者がレジストリを眺めていて、新チームの「旅行予約エージェント」が既存の「旅行プランニングエージェント」とそっくりだと気づく。重複に気づけたことで両チームをつなぎ、二重メンテナンスを回避できます。
再利用可能なスキルの共有。 あるチームが作った「PDFから構造化データを抽出するスキル」が好評で、全社展開を頼まれた。各チームに個別に声をかける代わりに、詳細なドキュメントと構造化定義を付けてレジストリに公開。他のビルダーが検索で見つけて自分のエージェントに組み込めます。
キュレーションによる品質担保。 新しいMCPサーバーが登録申請されると、EventBridge通知が標準レビューパイプラインを起動。ツール説明や入力スキーマの完全性、セキュリティ要件を自動チェックし、不備があればキュレーターが理由付きで差し戻します。
ライブサーバーとの同期。 AgentCore Runtime上でツール定義が進化していくMCPサーバーでも、URLベースの同期を設定しておけば、レジストリがエンドポイントから最新メタデータを取得し、カタログを正確に保てます。
さっそくやってみる
ではAWS CLIを使ってやってみます。
まず AWS CLI を最新版にしてみます。
curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"
unzip awscliv2.zip
sudo ./aws/install --update次に Registry そのものを作成します。
aws bedrock-agentcore-control create-registry \
--name "MyFirstRegistry" \
--description "My first Agent Registry" \
--region us-east-1{
"registryArn": "arn:aws:bedrock-agentcore:us-east-1:917561075114:registry/ssJXTXseDGXmtHh5"
}Creating のステータスになりますので少し待ちます。

Status が Ready になったら次に進みます。

次に行うのは Registry へツールの登録です。この例ではダミーの MCP Server を登録してみます。
aws bedrock-agentcore-control create-registry-record \
--registry-id <registryId> \
--name "WeatherServer" \
--descriptor-type MCP \
--descriptors '{"mcp": {"server": {"inlineContent": "{\"name\": \"weather/mcp-server\", \"description\": \"Weather data service\", \"version\": \"1.0.0\"}"}}}' \
--record-version "1.0" \
--region us-east-1{
"recordArn": "arn:aws:bedrock-agentcore:us-east-1:917561075114:registry/ssJXTXseDGXmtHh5/record/ADfDDyo3DAgQ",
"status": "CREATING"
}しばらく待つと CREATING が Draft になります。

aws bedrock-agentcore-control submit-registry-record-for-approval \
--registry-id <registryId> \
--record-id <recordId> \
--region us-east-1{
"registryArn": "arn:aws:bedrock-agentcore:us-east-1:917561075114:registry/ssJXTXseDGXmtHh5",
"recordArn": "arn:aws:bedrock-agentcore:us-east-1:917561075114:registry/ssJXTXseDGXmtHh5/record/ADfDDyo3DAgQ",
"recordId": "ADfDDyo3DAgQ",
"status": "PENDING_APPROVAL",
"updatedAt": "2026-06-13T02:15:31.294005+00:00"
}
PENDING_APPROVAL と承認待ちになります。以下のコマンドで承認が行えます。
aws bedrock-agentcore-control update-registry-record-status \
--registry-id <registryId> \
--record-id <recordId> \
--status APPROVED \
--status-reason "Reviewed and approved" \
--region us-east-1{
"registryArn": "arn:aws:bedrock-agentcore:us-east-1:917561075114:registry/ssJXTXseDGXmtHh5",
"recordArn": "arn:aws:bedrock-agentcore:us-east-1:917561075114:registry/ssJXTXseDGXmtHh5/record/ADfDDyo3DAgQ",
"recordId": "ADfDDyo3DAgQ",
"status": "APPROVED",
"statusReason": "Reviewed and approved",
"updatedAt": "2026-06-13T02:17:46.415593+00:00"
}ステータスが Approved に代わりました。

では最後に検索を行います。
aws bedrock-agentcore search-registry-records \
--search-query "weather" \
--registry-ids "<registryId>" \
--region us-east-1{
"registryRecords": [
{
"registryArn": "arn:aws:bedrock-agentcore:us-east-1:917561075114:registry/ssJXTXseDGXmtHh5",
"recordArn": "arn:aws:bedrock-agentcore:us-east-1:917561075114:registry/ssJXTXseDGXmtHh5/record/ADfDDyo3DAgQ",
"recordId": "ADfDDyo3DAgQ",
"name": "WeatherServer",
"descriptorType": "MCP",
"descriptors": {
"mcp": {
"server": {
"schemaVersion": "2025-12-11",
"inlineContent": "{\"name\": \"weather/mcp-server\", \"description\": \"Weather data service\", \"version\": \"1.0.0\"}"
}
}
},
"version": "1.0",
"status": "APPROVED",
"createdAt": "2026-06-13T02:14:03.375803+00:00",
"updatedAt": "2026-06-13T02:17:46.415593+00:00"
}
]
}これにより組織全員がこのツールを把握することができるようになります。
必要なIAM権限
上記の手順ではすべて同じIAMクレデンシャルで作業を行っていますが、組織的に利用するとなると、承認申請、承認、検索の権限を分けたいケースもあると思います。その場合必要な権限は以下となります。
各操作に必要なアクション
操作 | 必要な IAM アクション | アクセスレベル |
|---|---|---|
承認申請(submit-registry-record-for-approval) |
| Write |
承認(update-registry-record-status で APPROVED/REJECT/DEPRECATE) |
| Write |
検索(search-registry-records) |
| Read |

