View a markdown version of this page

AWS 에이전트 레지스트리 시작하기 - Amazon Bedrock AgentCore

AWS 에이전트 레지스트리 시작하기

예정된 네임스페이스 마이그레이션

AWS 에이전트 레지스트리는 현재 bedrock-agentcore 네임스페이스에서 공개 미리 보기 중입니다. 2026년 8월 6일부터 서비스는 에이전트 레지스트리 네임스페이스로 이동합니다. AWS 에이전트 레지스트리를 사용하는 경우 엔드포인트, IAM 정책, SDK 클라이언트, CLI 스크립트 및 레지스트리 데이터를 업데이트해야 합니다. 공개 미리 보기에서 마이그레이션하는 방법에 대한 자세한 내용은 포괄적인 레지스트리 마이그레이션 가이드를 참조하세요.

이 가이드에서는 첫 번째 레지스트리를 생성하고, 레코드를 추가하고, 승인하고, 검색합니다.

사전 조건

사전 조건의 단계를 완료합니다.

1단계: 레지스트리 생성

IAM 권한 부여 및 수동 승인을 사용하여 레지스트리를 생성합니다.

콘솔

IAM 기반 인증을 사용하여 레지스트리를 생성하려면

  1. AWS AgentCore 콘솔에서 에이전트 레지스트리 페이지를 엽니다.

  2. 탐색 창에서 레지스트리를 선택합니다.

  3. 레지스트리 섹션에서 레지스트리 생성을 선택합니다.

  4. 레지스트리 세부 정보 섹션의 이름에 레지스트리의 이름을 입력합니다. 이름은 영숫자로 시작해야 합니다. 유효한 문자는 a~z, A~Z, 0~9, _ (밑줄), - (하이픈), . (마침표) 및 / (슬래시)입니다. 이름은 최대 64자까지 가능합니다.

  5. (선택 사항) 추가 세부 정보를 선택하여 섹션을 확장한 다음 설명에이 레지스트리를 식별하는 데 도움이 되는 설명을 입력합니다.

  6. API 권한 부여 검색 섹션의 인증 유형에서 IAM 권한 부여 사용을 선택합니다. 참고 - 인바운드 권한 부여입니다.

  7. 레코드 승인 섹션에서 자동 승인을 켜거나 끕니다.

    • 자동 승인이 켜져 있으면 승인을 위해 레코드를 제출하면 레코드가 승인됨 상태로 바로 이동하고 바로 검색 결과에 표시됩니다.

    • 자동 승인이 꺼져 있으면 승인을 위해 레코드를 제출하면 레코드가 승인 보류 중 상태로 전환되고 게시되기 전에 큐레이터가 이를 검토하고 승인해야 합니다.

  8. 레지스트리 생성을 선택합니다.

JWT 기반 인증 자격 증명 공급자 권한 부여로 레지스트리를 생성하려면 JSON 웹 토큰(JWT)을 사용하여 레지스트리의 검색 API에 대한 액세스를 제어합니다. Amazon Cognito를 사용하여 권한 부여를 빠르게 설정하거나 자체 자격 증명 공급자를 가져와 OAuth 2.0을 활성화할 수 있습니다.

  1. AWS AgentCore 콘솔에서 에이전트 레지스트리 페이지를 엽니다.

  2. 탐색 창에서 레지스트리를 선택합니다.

  3. 레지스트리 섹션에서 레지스트리 생성을 선택합니다.

  4. 레지스트리 세부 정보 섹션의 이름에 레지스트리의 이름을 입력합니다. 이름은 영숫자로 시작해야 합니다. 유효한 문자는 a~z, A~Z, 0~9, _ (밑줄), - (하이픈), . (마침표) 및 / (슬래시)입니다. 이름은 최대 64자까지 가능합니다.

  5. (선택 사항) 추가 세부 정보를 선택하여 섹션을 확장한 다음 설명에이 레지스트리를 식별하는 데 도움이 되는 설명을 입력합니다.

  6. API 권한 부여 검색 섹션의 인증 유형에서 JSON 웹 토큰(JWT) 사용을 선택합니다. 참고 - 인바운드 권한 부여입니다.

  7. JWT 스키마 구성에서 다음 옵션 중 하나를 선택합니다.

    1. Cognito를 사용한 빠른 구성 생성(권장) - AWS 에이전트 레지스트리는 Amazon Cognito를 자격 증명 공급자로 사용하여 사용자를 대신하여 권한 부여 구성을 생성합니다. 추가 구성은 필요하지 않습니다.

    2. 기존 자격 증명 공급자 구성 사용 - 자체 자격 증명 공급자를 가져와 OAuth 2.0을 활성화합니다. 이 옵션을 선택하는 경우 다음 단계를 완료합니다.

      1. 검색 URL에 자격 증명 공급자의 검색 URL을 입력합니다. AWS 에이전트 레지스트리는이 URL을 사용하여 공급자의 로그인, 토큰 및 확인 설정을 자동으로 가져옵니다. 자격 증명 공급자의 대시보드 또는 설명서(예: https://cognito-identity.amazonaws.com/.well-known/openid-configuration )에서이 URL을 찾을 수 있습니다.

        참고: 레지스트리가 생성된 후에는 검색 URL을 변경할 수 없습니다.

      2. (선택 사항) JWT 권한 부여 구성에서 허용된 대상을 선택하여 AWS 에이전트 레지스트리가 JWT 토큰의 aud 클레임에 대해 검증하는 허용된 대상 목록을 제공합니다. OAuth aud 2.0의 대상 클레임( )은 토큰이 사용되는 리소스 서버(API)를 지정합니다. 이렇게 하면 요청을 처리하기 전에 토큰이 올바른 수신자가 되어 토큰이 발급되지 않은 다른 API에서 재사용되지 않습니다.

      3. (선택 사항) 허용된 클라이언트를 선택하여 AWS Agent Registry가 JWT 토큰의 client_id 클레임에 대해 검증하는 허용된 클라이언트 식별자 목록을 제공합니다. client_id는 레지스트리의 검색 API에 액세스하기 위해 액세스 토큰을 요청하는 애플리케이션의 퍼블릭 고유 식별자입니다. 이 옵션을 활성화한 경우 클라이언트 필드에 클라이언트 IDs 하나 이상 입력한 다음 클라이언트 추가를 선택하여 클라이언트를 추가합니다.

      4. (선택 사항) 허용된 범위를 선택하여 범위로 정의된 허용된 권한 목록을 제공합니다. 구성된 경우 수신 토큰에서 하나 이상의 범위 값이 구성된 값 중 하나와 일치해야 합니다. 범위는 애플리케이션이 수행할 수 있는 작업을 제한하는 권한 역할을 합니다.

      5. (선택 사항) 사용자 지정 클레임을 선택하여 수신 토큰의 특정 클레임을 사전 정의된 값과 일치시키는 규칙 세트를 제공합니다. 각 규칙에 대해 클레임 이름, 값 유형( STRING 또는 STRING_ARRAY ) 및 필요한 일치 값을 지정합니다.

  8. 레코드 승인 섹션에서 자동 승인을 켜거나 끕니다.

    1. 자동 승인이 켜져 있으면 승인을 위해 레코드를 제출하면 레코드가 승인됨 상태로 바로 이동하고 검색 결과에 즉시 표시됩니다.

    2. 자동 승인이 꺼져 있으면 승인을 위해 레코드를 제출하면 레코드가 승인 보류 중 상태로 전환되고 레지스트리 관리자가 게시되기 전에 이를 검토하고 승인해야 합니다.

  9. 레지스트리 생성을 선택합니다.

참고

* 허용된 대상, 허용된 클라이언트, 허용된 범위 또는 사용자 지정 클레임과 같은 하나 이상의 JWT 권한 부여 구성 필드가 필요합니다. 둘 이상의를 구성하는 경우 AWS 에이전트 레지스트리는 모든 항목을 확인합니다. * 레지스트리가 생성된 후에는 검색 URL을 변경할 수 없습니다. * 레지스트리가 생성된 후에는 권한 부여 유형(IAM 또는 JWT)을 변경할 수 없습니다. * 레지스트리는 한 번에 IAM SigV4 또는 JWT 베어러 토큰 중 하나의 인바운드 권한 부여 유형만 지원합니다. 둘 다 동시에 사용할 수는 없습니다. IAM을 통한 검색은 IAM 기반 레지스트리를 통해서만 지원되며, Oauth를 통한 검색은 Oauth 기반 레지스트리를 통해서만 지원됩니다.

레지스트리를 생성한 후 콘솔은 레지스트리 세부 정보 페이지로 이동합니다. 레지스트리 상태는 처음에 생성입니다. AWS 에이전트 레지스트리는 레지스트리 세부 정보 섹션에서 찾을 수 있는 ARN을 레지스트리에 할당합니다. 프로비저닝이 완료되면 레지스트리 상태가 준비됨으로 변경됩니다. 상태가 준비 중이면 레지스트리에 레코드를 추가할 수 있습니다.

AWS CLI

aws bedrock-agentcore-control create-registry \ --name "MyFirstRegistry" \ --description "My first Agent Registry" \ --region us-east-1

레지스트리 상태는 CREATING으로 시작되고 프로비저닝이 완료되면 READY로 전환됩니다.

AWS SDK

import boto3 client = boto3.client('bedrock-agentcore-control') response = client.create_registry( name='my-agent-registry', description='My first Agent Registry' ) print(response['registryArn'])

2단계: 레지스트리 레코드 추가

레지스트리에서 MCP 서버에 대한 레코드를 생성합니다.

콘솔

레지스트리 레코드는 에이전트, 도구, 스킬 또는 사용자 지정 리소스를 나타냅니다.

  1. AWS AgentCore 콘솔에서 에이전트 레지스트리 페이지를 엽니다.

  2. 탐색 창에서 레지스트리를 선택한 다음 레코드를 추가할 레지스트리의 이름을 선택합니다.

  3. 레지스트리 레코드 섹션에서 레코드 생성을 선택합니다.

  4. 소스 유형을 선택합니다.

    1. 엔드포인트에서 동기화 - 엔드포인트 URL과 선택적 자격 증명을 제공하여 MCP 서버 또는 에이전트(A2A) 엔드포인트에서 메타데이터를 가져옵니다. 자세한 내용은 외부 소스의 레코드 동기화를 참조하세요.

    2. 수동 - 레코드 세부 정보 및 프로토콜 구성을 수동으로 구성합니다. 아래 단계를 계속 진행합니다.

  5. 레코드 세부 정보 섹션의 이름에 레코드의 이름을 입력합니다. 이름은 영숫자로 시작해야 합니다. 유효한 문자는 a~z, A~Z, 0~9, _ (밑줄), - (하이픈), . (마침표) 및 / (슬래시)입니다. 이름은 최대 255자까지 가능합니다.

  6. (선택 사항) 설명에 레코드에 대한 설명을 입력합니다. 설명은 1~4,096자일 수 있습니다.

  7. 레코드 버전에 레코드의 버전 식별자(예: 1.0.0 또는 v2.1 )를 입력합니다.

  8. 레코드 유형 섹션에서 리소스와 일치하는 유형을 선택합니다.

    1. MCP - AI 도구 및 에이전트 통신을 위해 설계된 프로토콜입니다. 컨텍스트 관리 및 구조화된 메시지 형식을 처리합니다. 이 유형을 선택하는 경우 다음 단계를 완료합니다.

      1. MCP 서버 정의 섹션의 스키마 버전 드롭다운(예: 2025-12-11)에서 스키마 버전을 선택한 다음 MCP 서버 정의 편집기에 MCP 레지스트리 server.json을 입력합니다. 정의는 선택한 버전의 공식 MCP 서버 스키마를 준수해야 합니다. 공식 스키마를 참조로 보려면 공식 스키마 표시를 켭니다.

      2. (선택 사항) 도구 정의 추가를 선택하여 검색 가능성을 높이기 위해 입력 파라미터, 출력 및 사용 예제와 함께이 서버에서 사용할 수 있는 특정 도구를 추가합니다. 이 옵션을 선택하는 경우 스키마 버전 드롭다운(예: 2025-11-25)에서 스키마 버전을 선택한 다음 도구 정의 편집기에 도구 정의를 입력합니다. 공식 도구 스키마를 참조로 보려면 공식 스키마 표시를 켭니다.

    2. 에이전트 - 안전한 agent-to-agent 상호 작용을 위해 설계된 프로토콜입니다. 분산 워크플로 및 정보 교환을 활성화합니다. 이 유형을 선택하면 스키마 버전이 0.3 입니다. 편집기에 에이전트 카드 정의를 입력합니다. 공식 스키마를 참조로 보려면 공식 스키마 표시를 켭니다.

    3. 에이전트 스킬 - 마크다운 설명서와 선택적 구조화된 정의를 사용하여 에이전트 스킬을 등록합니다. 이 유형을 선택하는 경우 다음 단계를 완료합니다.

      1. 스킬 설명서에이 스킬을 설명하는 마크다운 설명서를 입력합니다.

      2. (선택 사항) 스킬 정의 포함을 선택하여 구조화된 정의를 추가합니다. 이 옵션을 선택하는 경우 스키마 버전 드롭다운에서 스키마 버전을 선택한 다음 편집기에 스킬 정의를 JSON 객체로 입력합니다.

    4. 사용자 지정 - 특수 통신 패턴을 위한 사용자 지정 프로토콜 구현입니다. 자체 인터페이스 사양 및 통합 요구 사항을 정의합니다. 이 유형을 선택하는 경우 사용자 지정 정의를 편집기에 JSON 객체로 입력합니다.

  9. 레코드 세트 생성을 선택합니다.

참고

표준 MCP 또는 A2A 프로토콜 스키마를 준수하지 않는 서버 또는 에이전트를 레지스트리에 추가하려면 사용자 지정 레코드 유형을 사용하여 이러한 리소스를 레지스트리에 추가합니다.

레코드 생성을 선택하면 AWS 에이전트 레지스트리가 레코드 프로비저닝을 시작합니다. 레코드 상태는 처음에 생성입니다. 프로비저닝이 완료되면 상태가 초안으로 변경됩니다. 다른 사용자가 레코드를 검색할 수 있도록 하려면 승인을 위해 레코드를 제출합니다. 자세한 내용은 3단계: 승인을 위해 레코드 제출을 참조하세요.

AWS CLI

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

레코드는 CREATING 상태로 생성되며 처리가 완료되면 DRAFT로 전환됩니다. 다른 유형의 레코드를 생성하는 추가 AWS CLI 예제는 레코드 생성 및 관리 섹션을 참조하세요.

AWS SDK

import boto3 import json client = boto3.client('bedrock-agentcore-control') server_content = json.dumps({ "name": "io.example/weather-server", "description": "A weather MCP server", "version": "1.0.0" }) tools_content = json.dumps({ "tools": [{ "name": "get_weather", "description": "Get the current weather for a location", "inputSchema": { "type": "object", "properties": { "location": { "type": "string", "description": "City name" } }, "required": ["location"] } }] }) response = client.create_registry_record( registryId='<registryId>', name='my-mcp-server', descriptorType='MCP', descriptors={ 'mcp': { 'server': { 'schemaVersion': '2025-12-11', 'inlineContent': server_content }, 'tools': { 'protocolVersion': '2024-11-05', 'inlineContent': tools_content } } } ) print(f"Record ARN: {response['recordArn']}") print(f"Status: {response['status']}") # CREATING

3단계: 승인을 위해 레코드 제출

콘솔

승인을 위해 레코드를 제출하면 레코드를 검색할 수 있는 검토 프로세스가 시작됩니다. 레지스트리 레코드 테이블 또는 레코드 세부 정보 페이지에서 레코드를 제출할 수 있습니다.

레지스트리 레코드 테이블의 승인을 위해 레코드를 제출하려면

  1. AWS AgentCore 콘솔에서 에이전트 레지스트리 페이지를 엽니다.

  2. 탐색 창에서 레지스트리를 선택한 다음 레지스트리 이름을 선택합니다.

  3. 레지스트리 레코드 섹션에서 제출하려는 레코드를 선택합니다.

  4. 상태 업데이트를 선택한 다음 승인을 위해 제출을 선택합니다.

레코드 세부 정보 페이지에서 승인을 위해 레코드를 제출하려면

  1. AWS AgentCore 콘솔에서 에이전트 레지스트리 페이지를 엽니다.

  2. 탐색 창에서 레지스트리를 선택한 다음 레지스트리 이름을 선택합니다.

  3. 레지스트리 레코드 섹션에서 제출하려는 레코드의 이름을 선택합니다.

  4. 상태 업데이트를 선택한 다음 승인을 위해 제출을 선택합니다.

승인을 위해 레코드를 제출하면 레지스트리의 승인 설정에 따라 레코드 상태가 변경됩니다.

  • 레지스트리에 자동 승인이 켜져 있는 경우 레코드 상태가 승인됨으로 바로 변경되고 직후 검색 결과에 표시됩니다.

  • 레지스트리에 자동 승인이 꺼져 있는 경우 레코드 상태가 승인 보류 중으로 변경되고 레지스트리 관리자가 게시되기 전에 이를 검토하고 승인해야 합니다.

AWS CLI

aws bedrock-agentcore-control submit-registry-record-for-approval \ --registry-id <registryId> \ --record-id <recordId> \ --region us-east-1

레코드는 PENDING_APPROVAL(또는 자동 승인이 활성화된 경우 직접 APPROVED)로 이동합니다.

AWS SDK

import boto3 client = boto3.client('bedrock-agentcore-control') response = client.submit_registry_record_for_approval( registryId='<registryId>', recordId='<recordId>' ) print(f"Record ARN: {response['recordArn']}") print(f"Record ID: {response['recordId']}") print(f"Status: {response['status']}") # PENDING_APPROVAL or APPROVED print(f"Updated At: {response['updatedAt']}")

4단계: 레코드 승인

콘솔

레지스트리 레코드 테이블에서 레코드를 승인하려면

  1. AWS AgentCore 콘솔에서 에이전트 레지스트리 페이지를 엽니다.

  2. 탐색 창에서 레지스트리를 선택한 다음 레지스트리 이름을 선택합니다.

  3. 레지스트리 레코드 섹션에서 승인하려는 레코드를 선택합니다.

  4. 상태 업데이트를 선택한 다음 승인을 선택합니다.

  5. 확인 대화 상자에서 상태 변경 이유를 입력합니다.

  6. 확인을 선택합니다.

레코드 세부 정보 페이지에서 레코드를 승인하려면

  1. AWS AgentCore 콘솔에서 에이전트 레지스트리 페이지를 엽니다.

  2. 탐색 창에서 레지스트리를 선택한 다음 레지스트리 이름을 선택합니다.

  3. 레지스트리 레코드 섹션에서 승인하려는 레코드의 이름을 선택합니다.

  4. 레코드 세부 정보 페이지에서 상태 업데이트를 선택한 다음 승인을 선택합니다.

  5. 확인 대화 상자에서 상태 변경 이유를 입력합니다.

  6. 확인을 선택합니다.

AWS CLI

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

AWS SDK

import boto3 client = boto3.client('bedrock-agentcore-control') response = client.update_registry_record_status( registryId='<registryId>', recordId='<recordId>', status='APPROVED', statusReason='Meets all requirements' ) print(f"Record ARN: {response['recordArn']}") print(f"Status: {response['status']}") # APPROVED print(f"Reason: {response['statusReason']}")

5단계: 레지스트리 검색

콘솔

의미 체계 또는 키워드 검색을 사용하여 레지스트리에서 승인된 레코드를 검색하여 에이전트, MCP 서버, 기술 및 기타 리소스를 찾을 수 있습니다. 이름, 프로토콜 또는 버전별로 결과를 필터링하여 검색 범위를 좁힐 수 있습니다.

참고

* 콘솔 검색 기능은 권한 부여 유형으로 IAM 사용을 사용하는 레지스트리에서만 사용할 수 있습니다. * 레지스트리에서 JSON 웹 토큰(JWT)을 사용하는 경우 요청 헤더에 유효한 JWT 베어러 토큰이 있는 curl 또는 Postman과 같은 HTTP 클라이언트를 사용하여 직접 검색 API를 호출해야 합니다. AWS CLI 및 AWS SDKs는 IAM SigV4 서명을 사용하며 JWT 승인 레지스트리와 함께 사용할 수 없습니다. 자세한 내용은 레지스트리 레코드 검색을 참조하세요.

레지스트리 레코드를 검색하려면

  1. AWS AgentCore 콘솔에서 에이전트 레지스트리 페이지를 엽니다.

  2. 탐색 창에서 레지스트리를 선택한 다음 레지스트리 이름을 선택합니다.

  3. 레코드 검색 탭을 선택합니다.

  4. 승인된 레코드 검색 필드에 검색 쿼리를 입력합니다.

  5. (선택 사항) 특정 속성을 기준으로 결과를 필터링하려면 검색 필드를 선택하여 속성 메뉴를 확장한 다음 필터를 선택합니다. 이름, 설명자 유형 또는 버전.

  6. 검색을 선택합니다.

검색은 승인된 상태의 레코드만 반환합니다. 초안, 승인 보류 중, 거부됨 또는 사용 중단됨 상태와 같은 다른 상태의 레코드는 검색 결과에 표시되지 않습니다.

AWS CLI

aws bedrock-agentcore search-registry-records \ --search-query "weather" \ --registry-ids "<registry-id>" \ --region us-east-1

승인된 레코드가 검색 결과에 나타나야 합니다.

AWS SDK

import boto3 client = boto3.client('bedrock-agentcore') response = client.search_registry_records( registryIds=['arn:aws:bedrock-agentcore:us-east-1:<account>:registry/<registryId>'], searchQuery='weather forecast tool', maxResults=10 ) for record in response['registryRecords']: print(f"Record: {record['name']} ({record['recordId']})") print(f" Type: {record['descriptorType']}") print(f" Status: {record['status']}") print(f" Version: {record['version']}")

빌드한 내용

  • IAM 권한 부여 및 수동 승인이 있는 레지스트리

  • MCP 서버를 설명하는 레지스트리 레코드

  • 검색을 통해 검색할 수 있는 승인된 레코드

다음 단계

  • 승인 워크플로를 자동화하도록 Amazon EventBridge 알림 설정

  • 에이전트, 서버, 기술 및 사용자 지정 리소스에 대한 레코드 추가