View a markdown version of this page

外部ソースからのレコードを同期する - Amazon Bedrock AgentCore

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

外部ソースからのレコードを同期する

移行がオープンに

AWS エージェントレジストリが新しいagent-registry名前空間で起動されました。パブリックプレビューbedrock-agentcore名前空間のサポートは、2026 年 9 月 17 日に終了します。移行手順については、「包括的なレジストリ移行ガイド」を参照してください。

概要

AWS エージェントレジストリは、提供された URL をアウトバウンド認証情報に接続することで、外部ソースからのレコードメタデータを自動的に同期できます。URL と認証情報プロバイダーを指定すると (アクセス許可を必要としないパブリックリソースの場合はオプション)、システムはサーバーとツールの定義を抽出し、公式プロトコルスキーマに準拠したレコードの記述子を入力します。また、これらの値がソースで見つかった場合は、レコードの名前、説明、バージョンも更新されます。

パブリック MCP サーバーからの同期

認証や認可を必要としないパブリック MCP サーバーの場合:

コンソール

例
AWS Agent Registry namespace
  1. AWS エージェントレジストリコンソールでレジストリの詳細ページを開きます。

  2. レジストリレコードセクションで、レコードの作成を選択します。

  3. エンドポイントから同期を選択します。

  4. レコードの詳細で、タイプ で MCP を選択します。記述子は MCP サーバーに設定されます。

  5. Endpoint には、パブリック MCP サーバー URL (例: https://knowledge-mcp.global.api.aws) を入力します。有効な HTTPS URL である必要があります。

  6. 認証情報タイプで、「なし」を選択します。

  7. (オプション) Tags セクションで、Add new tag を選択して 1 つ以上のタグをレコードにアタッチします。各タグにはキーとオプションの値があります。

  8. [Create record] (レコードを作成) を選択します。

Amazon Bedrock AgentCore namespace (to be deprecated)
  1. Bedrock-AgentCore コンソールでレジストリの詳細ページを開きます。

  2. レジストリレコードセクションで、レコードの作成を選択します。

  3. エンドポイントから同期を選択します。

  4. レコードの詳細で、レコードタイプとして MCP を選択します。

  5. Endpoint には、パブリック MCP サーバー URL (例: https://knowledge-mcp.global.api.aws) を入力します。有効な HTTPS URL である必要があります。

  6. 認証情報タイプで、「なし」を選択します。

  7. [Create record] (レコードを作成) を選択します。

レコードは CREATING ステータスで作成されます。レジストリはエンドポイントに接続し、サーバーとツールの定義を抽出して、レコードの記述子を入力します。同期が完了すると、レコードは DRAFT に移行します。同期が失敗すると、レコードは CREATE_FAILED ステータスに移行し、ステータスの理由フィールドでエラーの詳細が表示されます。トラブルシューティングについては、「同期エラーを記録する」を参照してください。

AWS CLI

例
AWS Agent Registry namespace
aws agent-registry-control create-registry-record \ --registry-id $REGISTRY_ID \ --name "aws-knowledge-server" \ --display-name "AWS Knowledge Server" \ --record-type MCP \ --descriptors '{ "mcpServer": { "source": { "fromUrl": { "url": "https://knowledge-mcp.global.api.aws" } } } }' \ --region us-east-1
Amazon Bedrock AgentCore namespace (to be deprecated)
aws bedrock-agentcore-control create-registry-record \ --registry-id $REGISTRY_ID \ --name "aws-knowledge-server" \ --descriptor-type MCP \ --synchronization-type URL \ --synchronization-configuration '{ "fromUrl": { "url": "https://knowledge-mcp.global.api.aws" } }' \ --region us-east-1

AWS SDK

例
AWS Agent Registry namespace
import boto3 client = boto3.client('agent-registry-control') response = client.create_registry_record( registryId='<registryId>', name='aws-knowledge-server', displayName='AWS Knowledge Server', recordType='MCP', descriptors={ 'mcpServer': { 'source': { 'fromUrl': { 'url': 'https://knowledge-mcp.global.api.aws' } } } } ) print(f"Record ARN: {response['recordArn']}") print(f"Status: {response['status']}") # CREATING
Amazon Bedrock AgentCore namespace (to be deprecated)
import boto3 client = boto3.client('bedrock-agentcore-control') response = client.create_registry_record( registryId='<registryId>', name='aws-knowledge-server', descriptorType='MCP', synchronizationType='URL', synchronizationConfiguration={ 'fromUrl': { 'url': 'https://knowledge-mcp.global.api.aws' } } ) print(f"Record ARN: {response['recordArn']}") print(f"Status: {response['status']}") # CREATING
注記

agent-registry 名前空間では、同期設定は各記述子内で として移動します source ( mcpServerおよびa2aAgentCardプライマリ記述子でのみサポートされます)。最上位の synchronizationType/synchronizationConfiguration フィールドが存在しなくなりました。

レコードは CREATING ステータスで作成されます。同期時間は、メタデータのサイズに応じて秒から分まで異なります。同期が完了すると、サーバーやツールの定義など、MCP サーバーから抽出された記述子を使用して DRAFT に移行します。

OAuth で保護された MCP サーバーからの同期

MCP サーバーが OAuth で保護されている場合は、認可サーバーに M2M クライアントを作成し、クライアント ID と MCP サーバーを呼び出すためにリストされたシークレット許可を含む AgentCore Identity から認証情報プロバイダーを設定する必要があります。認証情報プロバイダーを取得したら、同期のためにレジストリに提供できます。

コンソール

例
AWS Agent Registry namespace
  1. AWS エージェントレジストリコンソールでレジストリの詳細ページを開きます。

  2. レジストリレコードセクションで、レコードの作成を選択します。

  3. エンドポイントから同期を選択します。

  4. レコードの詳細で、タイプ で MCP を選択します。記述子は MCP サーバーに設定されます。

  5. Endpoint に、OAuth で保護された MCP サーバー URL を入力します。有効な HTTPS URL である必要があります。

  6. 認証情報タイプで、OAuth を選択します。

  7. 認証情報プロバイダーの場合は、AgentCore Identity から認証情報プロバイダー ARN を選択または入力します。

  8. (オプション) 追加設定を展開して、以下を設定します。

    1. スコープ — アクセストークンを取得するときにリクエストする OAuth スコープ。

    2. カスタムパラメータ — OAuth トークンリクエスト用の追加のキーと値のパラメータ。

  9. (オプション) Tags セクションで、Add new tag を選択して 1 つ以上のタグをレコードにアタッチします。各タグにはキーとオプションの値があります。

  10. [Create record] (レコードを作成) を選択します。

Amazon Bedrock AgentCore namespace (to be deprecated)
  1. Bedrock-AgentCore コンソールでレジストリの詳細ページを開きます。

  2. レジストリレコードセクションで、レコードの作成を選択します。

  3. エンドポイントから同期を選択します。

  4. レコードの詳細で、レコードタイプとして MCP を選択します。

  5. Endpoint に、OAuth で保護された MCP サーバー URL を入力します。有効な HTTPS URL である必要があります。

  6. 認証情報タイプで、OAuth を選択します。

  7. 認証情報プロバイダーの場合は、AgentCore Identity から認証情報プロバイダー ARN を選択または入力します。

  8. (オプション) 追加設定を展開して、以下を設定します。

    1. スコープ — アクセストークンを取得するときにリクエストする OAuth スコープ。

    2. カスタムパラメータ — OAuth トークンリクエスト用の追加のキーと値のパラメータ。

  9. [Create record] (レコードを作成) を選択します。

レコードは CREATING ステータスで作成されます。レジストリは、OAuth 認証情報を使用してエンドポイントに接続し、サーバーとツールの定義を抽出し、レコードの記述子を入力します。同期が完了すると、レコードは DRAFT に移行します。同期が失敗すると、レコードは CREATE_FAILED ステータスに移行し、ステータスの理由フィールドでエラーの詳細が表示されます。トラブルシューティングについては、「同期エラーを記録する」を参照してください。

AWS CLI

例
AWS Agent Registry namespace
aws agent-registry-control create-registry-record \ --registry-id $REGISTRY_ID \ --name "oauth-mcp-server" \ --display-name "OAuth MCP Server" \ --record-type MCP \ --descriptors '{ "mcpServer": { "source": { "fromUrl": { "url": "$MCP_OAUTH_URL", "credentialProviderConfigurations": [ { "credentialProviderType": "OAUTH", "credentialProvider": { "oauthCredentialProvider": { "providerArn": "$OAUTH_PROVIDER_ARN", "grantType": "CLIENT_CREDENTIALS" } } } ] } } } }' \ --region us-east-1
Amazon Bedrock AgentCore namespace (to be deprecated)
aws bedrock-agentcore-control create-registry-record \ --registry-id $REGISTRY_ID \ --name "oauth-mcp-server" \ --descriptor-type MCP \ --synchronization-type URL \ --synchronization-configuration '{ "fromUrl": { "url": "$MCP_OAUTH_URL", "credentialProviderConfigurations": [ { "credentialProviderType": "OAUTH", "credentialProvider": { "oauthCredentialProvider": { "providerArn": "$OAUTH_PROVIDER_ARN", "grantType": "CLIENT_CREDENTIALS" } } } ] } }' \ --region us-east-1

追加の IAM アクセス許可が必要です。

注記

これらの同期関連の IAM アクセス許可は、AgentCore Identity によって管理されるワークロード ID と OAuth 認証情報プロバイダーリソースを承認します。これらのリソースは意図的に bedrock-agentcore名前空間に残るため、このポリシーは変更されません。

{ "Statement": [ { "Effect": "Allow", "Action": [ "bedrock-agentcore:GetWorkloadAccessToken" ], "Resource": [ "arn:aws:bedrock-agentcore:*:<account>:workload-identity-directory/*" ] }, { "Effect": "Allow", "Action": [ "bedrock-agentcore:GetResourceOauth2Token" ], "Resource": [ "arn:aws:bedrock-agentcore:<region>:<account>:token-vault/default/oauth2credentialprovider/<oauthProviderName>" ] } ] }
注記

GetResourceOauth2Token ステートメントの範囲を、このロールに必要なアクセストークンを持つ特定の OAuth 認証情報プロバイダー ARN に設定します。ARN のプロバイダーセグメントにワイルドカードを使用しないでください。 token-vault/ などのパターンや、アカウント内のすべての OAuth 認証情報プロバイダーへのアクセスtoken-vault/default/oauth2credentialprovider/許可を付与します。これにより、チーム間の認証情報アクセスが可能になります。最小特権の原則に従い、 Resource フィールドで特定のプロバイダーに名前を付けます。例: arn:aws:bedrock-agentcore:<region>:<account>:token-vault/default/oauth2credentialprovider/<oauthProviderName>。

機能制限:

  • CreateRegistryRecord または UpdateRegistryRecord の呼び出し元には、GetWorkloadAccessToken レジストリに関連付けられたワークロード ID と、認証情報プロバイダーに対する GetResourceOauth2Token アクセス許可が必要です。

  • 認証情報プロバイダーは、同じアカウントからのものである必要があります。

IAM で保護された MCP サーバーからの同期

Amazon Bedrock AgentCore Runtime または Amazon Bedrock AgentCore Gateway 上の MCP サーバーの場合は、SigV4 署名用の IAM ロールを指定します。ロールには、ターゲットサービスにアクセスするためのアクセス許可が必要です。例: AgentCore ランタイムbedrock-agentcore:InvokeAgentRuntimeForUserの場合は bedrock-agentcore:InvokeAgentRuntimeまたは、AgentCore Gateway bedrock-agentcore:InvokeGatewayの場合は 。

IAM ロールに加えて、SigV4 署名の serviceフィールドを指定する必要があります。MCP が AgentCore Runtime または AgentCore Gateway で実行されている場合、値は である必要がありますagent-registry。MCP が Amazon API Gateway で実行されている場合は execute-api、MCP が AWS Lambda で実行されている場合は になりますlambda。

region 値はオプションです。デフォルトでは、リクエストはレジストリと同じリージョンで署名されます。

コンソール

例
AWS Agent Registry namespace
  1. AWS エージェントレジストリコンソールでレジストリの詳細ページを開きます。

  2. レジストリレコードセクションで、レコードの作成を選択します。

  3. エンドポイントから同期を選択します。

  4. レコードの詳細で、タイプ で MCP を選択します。記述子は MCP サーバーに設定されます。

  5. Endpoint に、IAM で保護された MCP サーバー URL を入力します。有効な HTTPS URL である必要があります。

  6. 認証情報タイプで、IAM を選択します。

  7. ロール ARN には、SigV4 署名のために引き受ける IAM ロール ARN を入力します。

  8. サービスには、SigV4 署名のサービス名を入力します (例: agent-registry、execute-api、lambda)。

  9. (オプション) 追加設定を展開し、SigV4 署名のリージョンを選択します。指定しない場合、レジストリ独自のリージョンが使用されます。

  10. (オプション) Tags セクションで、Add new tag を選択して 1 つ以上のタグをレコードにアタッチします。各タグにはキーとオプションの値があります。

  11. [Create record] (レコードを作成) を選択します。

Amazon Bedrock AgentCore namespace (to be deprecated)
  1. Bedrock-AgentCore コンソールでレジストリの詳細ページを開きます。

  2. レジストリレコードセクションで、レコードの作成を選択します。

  3. エンドポイントから同期を選択します。

  4. レコードの詳細で、レコードタイプとして MCP を選択します。

  5. Endpoint に、IAM で保護された MCP サーバー URL を入力します。有効な HTTPS URL である必要があります。

  6. 認証情報タイプで、IAM を選択します。

  7. ロール ARN には、SigV4 署名のために引き受ける IAM ロール ARN を入力します。

  8. サービスには、SigV4 署名のサービス名を入力します (例: 、bedrock-agentcoreexecute-api、lambda)。

  9. (オプション) 追加設定を展開し、SigV4 署名のリージョンを選択します。指定しない場合、レジストリ独自のリージョンが使用されます。

  10. [Create record] (レコードを作成) を選択します。

レコードは CREATING ステータスで作成されます。レジストリは、IAM 認証情報を使用してエンドポイントに接続し、サーバーとツールの定義を抽出し、レコードの記述子を入力します。同期が完了すると、レコードは DRAFT に移行します。同期が失敗すると、レコードは CREATE_FAILED ステータスに移行し、ステータスの理由フィールドでエラーの詳細が表示されます。トラブルシューティングについては、「同期エラーを記録する」を参照してください。

AWS CLI

例
AWS Agent Registry namespace
aws agent-registry-control create-registry-record \ --registry-id $REGISTRY_ID \ --name "gateway-mcp-server" \ --display-name "Gateway MCP Server" \ --record-type MCP \ --descriptors '{ "mcpServer": { "source": { "fromUrl": { "url": "$MCP_IAM_URL", "credentialProviderConfigurations": [ { "credentialProviderType": "IAM", "credentialProvider": { "iamCredentialProvider": { "roleArn": "$IAM_ROLE_ARN", "service": "$SIGNING_SERVICE", "region": "$SIGNING_REGION" } } } ] } } } }' \ --region us-east-1
Amazon Bedrock AgentCore namespace (to be deprecated)
aws bedrock-agentcore-control create-registry-record \ --registry-id $REGISTRY_ID \ --name "gateway-mcp-server" \ --descriptor-type MCP \ --synchronization-type URL \ --synchronization-configuration '{ "fromUrl": { "url": "$MCP_IAM_URL", "credentialProviderConfigurations": [ { "credentialProviderType": "IAM", "credentialProvider": { "iamCredentialProvider": { "roleArn": "$IAM_ROLE_ARN", "service": "$SIGNING_SERVICE", "region": "$SIGNING_REGION" } } } ] } }' \ --region us-east-1

追加の IAM アクセス許可が必要です。

注記

このiam:PassRoleポリシーは、アウトバウンド同期のためにロールを AgentCore Identity に引き渡すことをレジストリに許可します。iam:PassedToService 条件値は AgentCore Identity サービスプリンシパルbedrock-agentcore.amazonaws.comを参照し、変更されません。

{ "Statement": [ { "Effect": "Allow", "Action": [ "iam:PassRole" ], "Resource": [ "arn:aws:iam::<account>:role/<sync-role>" ], "Condition": { "StringEquals": { "iam:PassedToService": "bedrock-agentcore.amazonaws.com" } } } ] }

A2A エージェントカードからの同期

エージェントカード URL または が検出.well-known/agent-card.jsonできるエージェントのベース URL を指定します。

コンソール

例
AWS Agent Registry namespace
  1. AWS エージェントレジストリコンソールでレジストリの詳細ページを開きます。

  2. レジストリレコードセクションで、レコードの作成を選択します。

  3. エンドポイントから同期を選択します。

  4. 「レコードの詳細」の「タイプ」で「エージェント」を選択します。記述子は A2A エージェントカードに設定されます。

  5. Endpoint には、エージェントカード URL (例: https://agent.example.com/.well-known/agent-card.json) を入力します。有効な HTTPS URL である必要があります。

  6. 認証情報タイプで、適切な認可方法を選択します。

    1. なし — パブリックにアクセス可能なエージェントカード用。

    2. IAM — AgentCore ランタイムまたはゲートウェイでホストされているエージェント向け。ロール ARN とサービス名を指定します。

    3. OAuth — OAuth で保護されたエージェント用。認証情報プロバイダー ARN を選択または入力します。

  7. (オプション) Tags セクションで、Add new tag を選択して 1 つ以上のタグをレコードにアタッチします。各タグにはキーとオプションの値があります。

  8. [Create record] (レコードを作成) を選択します。

Amazon Bedrock AgentCore namespace (to be deprecated)
  1. Bedrock-AgentCore コンソールでレジストリの詳細ページを開きます。

  2. レジストリレコードセクションで、レコードの作成を選択します。

  3. エンドポイントから同期を選択します。

  4. レコードの詳細で、レコードタイプとして エージェントを選択します。

  5. Endpoint には、エージェントカード URL (例: https://agent.example.com/.well-known/agent-card.json) を入力します。有効な HTTPS URL である必要があります。

  6. 認証情報タイプで、適切な認可方法を選択します。

    1. なし — パブリックにアクセス可能なエージェントカード用。

    2. IAM — AgentCore ランタイムまたはゲートウェイでホストされているエージェント向け。ロール ARN とサービス名を指定します。

    3. OAuth — OAuth で保護されたエージェント用。認証情報プロバイダー ARN を選択または入力します。

  7. [Create record] (レコードを作成) を選択します。

レコードは CREATING ステータスで作成されます。レジストリはエンドポイントに接続し、エージェントカードメタデータを抽出して、レコードの記述子を入力します。同期が完了すると、レコードは DRAFT に移行します。同期が失敗すると、レコードは CREATE_FAILED ステータスに移行し、ステータスの理由フィールドでエラーの詳細が表示されます。トラブルシューティングについては、「同期エラーを記録する」を参照してください。

AWS CLI

例
AWS Agent Registry namespace
aws agent-registry-control create-registry-record \ --registry-id $REGISTRY_ID \ --name "travel-agent" \ --display-name "Travel Agent" \ --record-type AGENT \ --descriptors '{ "a2aAgentCard": { "source": { "fromUrl": { "url": "https://agent.example.com/.well-known/agent-card.json" } } } }' \ --region us-east-1
Amazon Bedrock AgentCore namespace (to be deprecated)
aws bedrock-agentcore-control create-registry-record \ --registry-id $REGISTRY_ID \ --name "travel-agent" \ --descriptor-type A2A \ --synchronization-type URL \ --synchronization-configuration '{"fromUrl": {"url": "https://agent.example.com/.well-known/agent-card.json"}}' \ --region us-east-1

A2A 同期の認証情報プロバイダーを指定することもできます。例えば、AgentCore でホストされているエージェントから同期できます。同期ターゲットが AgentCore ランタイムまたはゲートウェイでホストされているエージェントである場合は、 service フィールドagent-registryとして を使用します。

例
AWS Agent Registry namespace
aws agent-registry-control create-registry-record \ --registry-id $REGISTRY_ID \ --name "a2a_agent_record" \ --display-name "A2A Agent Record" \ --record-type AGENT \ --descriptors "{ \"a2aAgentCard\": { \"source\": { \"fromUrl\": { \"url\": \"$A2A_URL\", \"credentialProviderConfigurations\": [{ \"credentialProviderType\": \"IAM\", \"credentialProvider\": { \"iamCredentialProvider\": { \"roleArn\": \"$IAM_INVOKER_ROLE\", \"service\": \"agent-registry\" } } }] } } } }"
Amazon Bedrock AgentCore namespace (to be deprecated)
aws bedrock-agentcore-control create-registry-record \ --registry-id $REGISTRY_ID \ --name "a2a_agent_record" \ --descriptor-type A2A \ --synchronization-type URL \ --synchronization-configuration "{ \"fromUrl\": { \"url\": \"$A2A_URL\", \"credentialProviderConfigurations\": [{ \"credentialProviderType\": \"IAM\", \"credentialProvider\": { \"iamCredentialProvider\": { \"roleArn\": \"$IAM_INVOKER_ROLE\", \"service\": \"bedrock-agentcore\" } } }] } }"

既存のレコードで同期をトリガーする

コンソール

  1. 同期が設定されている MCP またはエージェントレコードのレコード詳細ページを開きます。

例
AWS Agent Registry namespace
  1. AWS エージェントレジストリコンソールのレコード詳細ページから、管理を選択し、同期を選択します。

  2. 確認ダイアログで、同期によってレコードがドラフト状態に戻されるというメッセージを確認します。

  3. Sync を選択して確認します。

または、編集中に同期をトリガーすることもできます。

  1. レコードの詳細ページから、管理を選択し、編集を選択します。

  2. エンドポイントから同期 で、エンドポイントから再同期 チェックボックスをオンにします。

  3. [Save changes] (変更の保存) をクリックします。

Amazon Bedrock AgentCore namespace (to be deprecated)
  1. Bedrock-AgentCore コンソールのレコード詳細ページから、ヘッダーアクションで同期ボタンを選択します。

  2. 確認ダイアログで、同期によってレコードがドラフト状態に戻されるというメッセージを確認します。

  3. Sync を選択して確認します。

または、編集中に同期をトリガーすることもできます。

  1. レコードの詳細ページから、3 つのドットメニュー (⋮) を選択し、編集を選択します。

  2. エンドポイントから同期 で、エンドポイントから再同期 チェックボックスをオンにします。

  3. [Save changes] (変更の保存) をクリックします。

レコードは同期中に UPDATING ステータスに移行します。完了すると、ソースから更新された記述子を使用して DRAFT に戻ります。同期に失敗すると、レコードは UPDATE_FAILED ステータスに移行し、ステータスの理由フィールドでエラーの詳細が表示されます。トラブルシューティングについては、「同期エラーを記録する」を参照してください。

AWS CLI

例
AWS Agent Registry namespace
aws agent-registry-control update-registry-record \ --registry-id $REGISTRY_ID \ --record-id $RECORD_ID \ --trigger-synchronization \ --region us-east-1
Amazon Bedrock AgentCore namespace (to be deprecated)
aws bedrock-agentcore-control update-registry-record \ --registry-id $REGISTRY_ID \ --record-id $RECORD_ID \ --trigger-synchronization \ --region us-east-1

AWS SDK

例
AWS Agent Registry namespace
import boto3 client = boto3.client('agent-registry-control') response = client.update_registry_record( registryId='<registryId>', recordId='<recordId>', triggerSynchronization=True ) print(f"Status: {response['status']}")
Amazon Bedrock AgentCore namespace (to be deprecated)
import boto3 client = boto3.client('bedrock-agentcore-control') response = client.update_registry_record( registryId='<registryId>', recordId='<recordId>', triggerSynchronization=True ) print(f"Status: {response['status']}")
注記

レコードが非ドラフトステータス (APPROVED など) の場合、更新によって新しい DRAFT リビジョンが作成されます。承認されたリビジョンは引き続き検出可能です。

のトラブルシューティング:「レコード同期エラー」を参照してください。