기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
에 대한 Amazon Bedrock AgentCore 런타임 AWS Marketplace
이 문서는 Amazon Bedrock AgentCore 런타임에 배포할 수 있는 AI 에이전트 또는 도구를 나열하려는 AWS Marketplace 판매자를 위한 정보를 제공합니다. AWS Marketplace용 Bedrock AgentCore Runtime 지원 컨테이너를 준비하기 위한 기술 요구 사항, 구성 지침 및 모범 사례를 간략하게 설명합니다.
주제
개요
Amazon Bedrock AgentCore Runtime은 AI 에이전트 또는 도구를 배포하고 실행하기 위해 특별히 구축된 안전한 서버리스 호스팅 환경을 제공합니다. Bedrock AgentCore 런타임 컨테이너를 나열 AWS Marketplace할 때 Bedrock AgentCore 환경 내에서 제대로 작동하려면 특정 요구 사항을 충족하는지 확인해야 합니다.
참고
자세한 내용은 Amazon Bedrock AgentCore Runtime 시작하기를 참조하세요.
Bedrock AgentCore 컨테이너 기술 요구 사항
Amazon Bedrock AgentCore 런타임에는 AI 에이전트, MCP 서버 및 A2A 서버를 나열하기 위한 다양한 기술 요구 사항이 있습니다.
-
에이전트 요구 사항
-
MCP 서버 요구 사항
-
A2A 서버 요구 사항
에이전트 요구 사항
컨테이너화된 에이전트는 다음 핵심 요구 사항을 충족해야 합니다.
-
/ping 엔드포인트: 상태 확인을 위한 GET 엔드포인트
-
/invocations 엔드포인트: 에이전트 상호 작용을 위한 POST 엔드포인트
-
Docker 컨테이너: ARM64 컨테이너화된 배포 패키지
-
포트: 컨테이너는 HTTP 기반 에이전트 통신을 위해
8080포트를 노출해야 합니다.
/ping - GET
이 엔드포인트는 에이전트가 작동 중이고 요청을 처리할 준비가 되었는지 확인합니다.
응답의 예:
{ "status": "Healthy" }
/invocations - POST
고객이 JSON 형식의 페이로드를 사용하여 InvokeAgentRuntime 작업으로 에이전트를 직접 호출할 때의 기본 에이전트 상호 작용 엔드포인트입니다. InvokeAgentRuntime은 스트리밍 응답을 지원하므로 고객이 부분 응답을 사용할 수 있게 되면 수신할 수 있습니다.
요청의 예:
Content-Type: application/json { "prompt": "What's the weather today?" }
응답의 예:
-
JSON 응답(비스트리밍):
Content-Type: application/json { "response": "Your agent's response here", "status": "success" } -
SSE 응답(스트리밍):
Content-Type: text/event-stream data: {"event": "partial response 1"} data: {"event": "partial response 2"} data: {"event": "final response"}
MCP 서버 요구 사항
Amazon Bedrock AgentCore Runtime을 사용하면 Model Context Protocol(MCP) 서버를 배포하고 실행할 수 있습니다. MCP 프로토콜로 Amazon Bedrock AgentCore Runtime을 구성하면 서비스는 경로 0.0.0.0:8000/mcp에 MCP 서버 컨테이너가 있을 거라고 예상합니다. 이는 대부분의 공식 MCP 서버 SDK가 지원하는 기본 경로입니다.
Amazon Bedrock AgentCore Runtime은 기본적으로 세션 격리를 제공하므로 스트리밍 가능한 상태 비저장 HTTP 서버가 필요합니다. 런타임은 헤더가 포함되지 않은 모든 요청에 대해 Mcp-Session-Id 헤더를 자동으로 추가합니다. 이를 통해 MCP 클라이언트는 동일한 Amazon Bedrock AgentCore Runtime 세션에 대한 연결 연속성을 유지할 수 있습니다.
InvokeAgentRuntime API는 페이로드 데이터를 직접 전달하므로 MCP와 같은 프로토콜에 대한 RPC 메시지를 쉽게 프록시할 수 있습니다.
요구 사항:
-
전송 - 스트리밍 가능한 상태 비저장 http만 사용해야 합니다.
-
세션 관리 - 플랫폼은 세션 격리를 위한
Mcp-Session-Id헤더를 자동으로 추가합니다. -
호스트 - 컨테이너가
0.0.0.0에서 수신해야 합니다. -
포트 - 컨테이너는 MCP 서버 통신을 위해 포트
8000을 노출해야 합니다. -
경로 - MCP RPC 메시지를 수신하려면
/mcp를 POST 엔드포인트로 노출해야 합니다.InvokeAgentRuntimeAPI는 MCP 서버에 대한 요청을 이 경로로 전달합니다. -
프로토콜 - MCP 서버는 다음 프로토콜 메시지를 포함하여 MCP 프로토콜을 지원해야 합니다.
-
tools/list -
tools/call(FastMCP와 같은 공통 프레임워크에서 지원됨)
-
MCP 서버 요구 사항에 대한 자세한 내용은 AgentCore Runtime에서 MCP 서버 배포를 참조하세요.
/mcp - POST
고객이 InvokeAgentRuntime으로 MCP 서버를 직접 호출할 때의 기본 에이전트 상호 작용 엔드포인트입니다.
목록 요청 예제:
Content-Type: application/json { "jsonrpc": "2.0", "id": 1, "method": "tools/list", }
목록 응답 예제:
JSON 응답(비스트리밍):
Content-Type: application/json { "jsonrpc": "2.0", "id": 1, "result": { "tools": [ { "name": "get_weather", "title": "Weather Information Provider", "description": "Get current weather information for a location", "inputSchema": { "type": "object", "properties": { "location": { "type": "string", "description": "City name or zip code" } }, "required": ["location"] } } ], "nextCursor": "next-page-cursor" } }
도구 호출 요청 예제:
Content-Type: application/json { "jsonrpc": "2.0", "id": 2, "method": "tools/call", "params": { "name": "get_weather", "arguments": { "location": "New York" } } }
도구 호출 응답 예제:
JSON 응답(비스트리밍):
Content-Type: application/json { "jsonrpc": "2.0", "id": 2, "result": { "content": [ { "type": "text", "text": "Current weather in New York:\nTemperature: 72°F\nConditions: Partly cloudy" } ], "isError": false } }
A2A 서버 요구 사항
Amazon Bedrock AgentCore 런타임을 사용하면 AgentCore 런타임에서 에이전트 Agent-to-Agent(A2A) 서버를 배포하고 실행할 수 있습니다. Amazon Bedrock AgentCore의 A2A 프로토콜 지원을 통해 투명한 프록시 계층 역할을 하여 A2A 서버와 원활하게 통합할 수 있습니다. A2A에 대해 구성된 경우 Amazon Bedrock AgentCore는 컨테이너가 루트 경로(0.0.0.0:9000/)의 포트9000에서 상태 비저장 스트리밍 가능한 HTTP 서버를 실행할 것으로 예상하며, 이는 기본 A2A 서버 구성과 일치합니다.
이 서비스는 프로토콜 투명성을 유지하면서 엔터프라이즈급 세션 격리를 제공합니다. InvokeAgentRuntime API의 JSON-RPC 페이로드는 수정 없이 A2A 컨테이너로 직접 전달됩니다. 이 아키텍처는 및 JSON-RPC 통신에서 에이전트 카드를 통한 기본 제공 에이전트 검색/.well-known/agent-card.json과 같은 표준 A2A 프로토콜 기능을 유지하면서 엔터프라이즈 인증(SigV4/OAuth 2.0) 및 확장성을 추가합니다.
다른 프로토콜과의 주요 차별화 요소는 포트(HTTP의 경우 9000 대 8080), 탑재 경로(/ 대 /invocations) 및 표준화된 에이전트 검색 메커니즘이므로 Amazon Bedrock AgentCore는 프로덕션 환경의 A2A 에이전트를 위한 이상적인 배포 플랫폼입니다.
요구 사항:
-
포트 - 포트 9000에서 실행되는 A2A 서버(HTTP의 경우 8080, MCP의 경우 8000)
-
호스트 - 컨테이너가
0.0.0.0에서 수신해야 합니다. -
경로
-
A2A 서버는에 탑재됩니다
/(HTTP/invocations의 경우 , MCP/mcp의 경우 ). -
GET
/ping사용 시 상태 확인
-
-
에이전트 카드 - A2A는에서 에이전트 카드를 통해 기본 제공 에이전트 검색을 제공합니다.
/.well-known/agent-card.json -
프로토콜 - agent-to-agent 통신에 JSON-RPC 사용
-
인증 - SigV4 및 OAuth 2.0 인증 체계를 모두 지원합니다.
A2A 서버 요구 사항에 대한 자세한 내용은 AgentCore 런타임에서 A2A 서버 배포를 참조하세요.
/ - POST
고객이 InvokeAgentRuntime으로 A2A 서버를 호출할 때 기본 에이전트 상호 작용 엔드포인트입니다.
에이전트 호출 요청의 예:
Content-Type: application/json { "jsonrpc": "2.0", "id": "req-001", "method": "message/send", "params": { "message": { "role": "user", "parts": [ { "kind": "text", "text": "what is 101 * 11?" } ], "messageId": "12345678-1234-1234-1234-123456789012" } } }
에이전트 호출 응답의 예:
JSON 응답(비스트리밍):
Content-Type: application/json { "jsonrpc": "2.0", "id": "req-001", "result": { "artifacts": [ { "parts": [ { "kind": "text", "text": "101 * 11 is 1111" } ] } ] } }
에이전트 카드 검색 예:
curl https://bedrock-agentcore.<REGION>.amazonaws.com/runtimes/{escaped_agent_arn}/invocations/.well-known/agent-card.json
/ping - GET
상태 확인을 수행하기 위한 엔드포인트입니다.
Bedrock AgentCore Runtime 컨테이너 테스트
컨테이너를 제출하기 전에 철저히 AWS Marketplace테스트합니다.
로컬 에이전트 테스트
Docker를 사용하여 로컬에서 에이전트를 테스트합니다.
docker run -p 8080:8080 <your-container-image> # Test ping endpoint curl http://localhost:8080/ping # Test agent invocation endpoint curl -X POST http://localhost:8080/invocations \ -H "Content-Type: application/json" \ -d '{"prompt": "Hello world!"}'
로컬 MCP 서버 테스트
Docker를 사용하여 로컬에서 MCP 서버를 테스트합니다.
docker run -p 8000:8000 <your-container-image> # Test ping endpoint curl http://localhost:8000/ping # Test MCP endpoint with tools/list curl -X POST http://localhost:8000/mcp \ -H "Content-Type: application/json" \ -d '{"jsonrpc": "2.0","id": 1,"method": "tools/list"}' # Test MCP endpoint with tools/call curl -X POST http://localhost:8000/mcp \ -H "Content-Type: application/json" \ -d '{ "jsonrpc": "2.0", "id": 2, "method": "tools/call", "params": {"name": "get_weather", "arguments": {"location": "New York"}}}'
로컬 A2A 서버 테스트
Docker를 사용하여 로컬에서 A2A 서버 테스트
docker run -p 9000:9000 <your-container-image> # Test ping endpoint curl http://localhost:9000/ping # Retrieve agent card curl http://localhost:9000/.well-known/agent-card.json # Test A2A endpoint with message/send curl -X POST http://localhost:9000/ \ -H "Content-Type: application/json" \ -d '{ "jsonrpc": "2.0", "id": "req-001", "method": "message/send", "params": { "message": { "role": "user", "parts": [ { "kind": "text", "text": "what is 101 * 11?"}],"messageId": "12345678-1234-1234-1234-123456789012" }}}'
Bedrock AgentCore Runtime에서 테스트
로컬에서 컨테이너를 테스트한 후, Amazon Elastic Container Registry(Amazon ECR)에 업로드하고 Amazon Bedrock AgentCore Runtime에 배포합니다. Amazon Bedrock AgentCore 런타임 콘솔 또는 AWS Command Line Interface ()를 사용하여 배포할 수 있습니다AWS CLI.
컨테이너 구성 모범 사례
보안 고려 사항
-
격리 - 간접 호출 사이에 민감한 데이터를 저장하지 마세요.
-
인증 - 모든 수신 요청을 검증
-
로깅 - 적절한 정보를 로깅하지만 민감한 데이터는 포함하지 않습니다.
-
종속성 - 보안 취약성을 방지하기 위해 모든 종속성을 최신 상태로 유지
성능 최적화
-
콜드 스타트 - 빠른 콜드 스타트를 위해 컨테이너 최적화
-
메모리 사용량 - 메모리 사용량을 최소화하여 성능 향상
-
동시성 - 동시 요청을 효율적으로 처리하도록 에이전트 설계
-
시간 초과 - 적절한 시간 초과 처리 구현
오류 처리
-
단계적 성능 저하 - 서비스를 사용할 수 없는 경우 폴백 메커니즘 구현
-
구조화된 오류 - 적절한 HTTP 상태 코드와 함께 잘 구조화된 오류 응답을 반환합니다.
-
재시도 로직 - 일시적 장애에 적합한 재시도 로직 구현
AWS Marketplace 제출 요구 사항
AgentCore 런타임 컨테이너를 제출할 때 다음을 AWS Marketplace포함합니다.
-
컨테이너 이미지 - 컨테이너 이미지가 Amazon ECR로 푸시됨
-
설명서 - 에이전트 또는 MCP 서버 사용 방법에 대한 포괄적인 설명서
-
사용 예제 - 에이전트 또는 MCP 서버를 호출하는 방법에 대한 명확한 예제
-
지원 정보 - 지원을 위한 연락처 정보
-
요금 정보 - 에이전트 또는 MCP 서버의 명확한 요금 구조
추가 리소스
자세한 내용은 다음 자료를 참조하세요.
에서 AgentCore 런타임 지원 AWS Marketplace
AgentCore 런타임 컨테이너를에 나열하는 것과 관련된 질문은 지원 받기를 AWS Marketplace AWS Marketplace참조하세요.
AgentCore 런타임에 대한 기술적 질문은 AWS Support 및 고객 서비스를