

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# Amazon Bedrock AgentCore Runtime para AWS Marketplace
<a name="bedrock-agentcore-runtime"></a>

Este documento fornece informações para AWS Marketplace vendedores que desejam listar agentes ou ferramentas de IA que podem ser implantados no Amazon Bedrock AgentCore Runtime. Ele descreve os requisitos técnicos, as diretrizes de configuração e as melhores práticas para preparar seu contêiner compatível com o Bedrock AgentCore Runtime para. AWS Marketplace

**Topics**
+ [Visão geral do](#agentcore-runtime-overview)
+ [Requisitos técnicos do AgentCore contêiner Bedrock](#agentcore-container-requirements)
+ [Testando seu contêiner Bedrock AgentCore Runtime](#testing-agentcore-container)
+ [Práticas recomendadas para configuração do contêiner](#container-best-practices)
+ [Requisitos para AWS Marketplace submissão](#marketplace-submission-requirements)
+ [Recursos adicionais](#agentcore-additional-resources)
+ [Support for AgentCore Runtime em AWS Marketplace](#agentcore-support)

## Visão geral do
<a name="agentcore-runtime-overview"></a>

O Amazon Bedrock AgentCore Runtime fornece um ambiente de hospedagem seguro, sem servidor e criado especificamente para implantar e executar agentes ou ferramentas de IA. Ao listar seu contêiner Bedrock AgentCore Runtime em AWS Marketplace, você precisa garantir que ele atenda aos requisitos específicos para funcionar adequadamente no ambiente Bedrock AgentCore .

**nota**  
Para saber mais, consulte o Guia de [introdução ao Amazon Bedrock AgentCore Runtime](https://docs.aws.amazon.com/bedrock-agentcore/latest/devguide/runtime-getting-started.html).

## Requisitos técnicos do AgentCore contêiner Bedrock
<a name="agentcore-container-requirements"></a>

O Amazon Bedrock AgentCore Runtime tem diferentes requisitos técnicos para listar agentes de IA, servidores MCP e servidores A2A.
+ **Requisitos do agente**
+ **Requisitos do servidor MCP**
+ **Requisitos do servidor A2A**

### Requisitos do agente
<a name="agent-requirements"></a>

O atendente em contêiner deve atender aos seguintes requisitos principais:
+ Endpoint **/ping**: endpoint GET para verificações de integridade
+ Endpoint **/invocations**: endpoint POST para interações de atendente
+ **Docker Container: pacote** de implantação em ARM64 contêineres
+ **Porta**: o contêiner deve expor a porta `8080` para comunicação de atendente baseada em HTTP

#### `/ping`: GET
<a name="ping-endpoint"></a>

Este endpoint verifica se o atendente está operacional e pronto para resolver as solicitações.

**Resposta de exemplo:**

```
{
  "status": "Healthy"
}
```

#### `/invocations`: POST
<a name="invocations-endpoint"></a>

Esse é o principal endpoint de interação do agente quando os clientes ligam para o agente com InvokeAgentRuntime uma ação com a carga no formato JSON. InvokeAgentRuntime suporta respostas de streaming, permitindo que os clientes recebam respostas parciais à medida que elas se tornam disponíveis.

**Solicitação de exemplo:**

```
Content-Type: application/json
{
  "prompt": "What's the weather today?"
}
```

**Respostas de exemplo:**
+ Resposta JSON (sem streaming):

  ```
  Content-Type: application/json
  {
    "response": "Your agent's response here",
    "status": "success"
  }
  ```
+ Resposta SSE (streaming):

  ```
  Content-Type: text/event-stream
  data: {"event": "partial response 1"}
  data: {"event": "partial response 2"}
  data: {"event": "final response"}
  ```

### Requisitos do servidor MCP
<a name="mcp-server-requirements"></a>

O Amazon Bedrock AgentCore Runtime permite que você implante e execute servidores Model Context Protocol (MCP). Quando você configura o Amazon Bedrock AgentCore Runtime com o protocolo MCP, o serviço espera contêineres de servidor MCP no caminho. `0.0.0.0:8000/mcp` Esse é o caminho padrão SDKs suportado pela maioria dos servidores MCP oficiais.

Como o Amazon Bedrock AgentCore Runtime fornece isolamento de sessão por padrão, ele exige servidores HTTP streamáveis sem estado. O runtime adiciona automaticamente um cabeçalho `Mcp-Session-Id` para qualquer solicitação que não inclua um. Isso permite que os clientes MCP mantenham a continuidade da conexão com a mesma sessão do Amazon Bedrock AgentCore Runtime.

A API `InvokeAgentRuntime` passa diretamente pelos dados de carga útil, o que permite o proxy facilitado de mensagens RPC para protocolos como o MCP.

Requisitos:
+ **Transporte**: só deve usar http passível de streaming sem estado
+ **Gerenciamento de sessão**: a plataforma adiciona automaticamente o cabeçalho `Mcp-Session-Id` para isolamento da sessão
+ **Host**: o contêiner deve receber `0.0.0.0`
+ **Porta**: o contêiner deve expor a porta `8000` para comunicação do servidor MCP
+ **Caminho**: deve expor `/mcp` como um endpoint POST para receber mensagens RPC do MCP. A API `InvokeAgentRuntime` passa por solicitações para esse caminho para servidores MCP.
+ **Protocolo**: o servidor MCP deve dar suporte ao protocolo MCP, inclusive as seguintes mensagens de protocolo:
  + `tools/list`
  + `tools/call` (compatível com estruturas comuns como FastMCP)

Para saber mais sobre os requisitos do servidor MCP, consulte [Implantar servidores MCP no AgentCore ](https://docs.aws.amazon.com/bedrock-agentcore/latest/devguide/runtime-mcp.html) Runtime.

#### `/mcp`: POST
<a name="mcp-endpoint"></a>

Esse é o principal endpoint de interação do agente quando os clientes ligam para o servidor MCP com. InvokeAgentRuntime

**Solicitação da lista de exemplo:**

```
Content-Type: application/json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/list",
}
```

**Resposta da lista de exemplo:**

Resposta JSON (sem streaming):

```
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"
  }
}
```

**Solicitação de chamada da ferramenta de exemplo:**

```
Content-Type: application/json
{
  "jsonrpc": "2.0",
  "id": 2,
  "method": "tools/call",
  "params": {
    "name": "get_weather",
    "arguments": {
      "location": "New York"
    }
  }
}
```

**Resposta de chamada da ferramenta de exemplo:**

Resposta JSON (sem streaming):

```
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
  }
}
```

### Requisitos do servidor A2A
<a name="a2a-server-requirements"></a>

O Amazon Bedrock AgentCore Runtime permite que você implante e execute servidores Agent-to-Agent (A2A) no Runtime. AgentCore O suporte ao protocolo AgentCore A2A do Amazon Bedrock permite uma integração perfeita com servidores A2A, atuando como uma camada de proxy transparente. Quando configurado para A2A, o Amazon Bedrock AgentCore espera que os contêineres executem servidores HTTP sem estado e streamáveis `9000` na porta do caminho raiz (`0.0.0.0:9000/`), que se alinha à configuração padrão do servidor A2A.

O serviço fornece isolamento de sessão de nível corporativo, mantendo a transparência do protocolo - as cargas JSON-RPC da InvokeAgentRuntime API são passadas diretamente para o contêiner A2A sem modificação. Essa arquitetura preserva os recursos padrão do protocolo A2A, como descoberta de agentes integrada por meio de cartões de agente `/.well-known/agent-card.json` e comunicação JSON-RPC, ao mesmo tempo em que adiciona autenticação corporativa (SigV4/2.0) e escalabilidade. OAuth 

Os principais diferenciais de outros protocolos são a porta (9000 versus 8080 para HTTP), o caminho de montagem (`/`vs`/invocations`) e o mecanismo padronizado de descoberta de agentes, tornando o Amazon Bedrock AgentCore uma plataforma de implantação ideal para agentes A2A em ambientes de produção.

Requisitos:
+ **Porta** - os servidores A2A são executados na porta 9000 (versus 8080 para HTTP, 8000 para MCP)
+ **Host**: o contêiner deve receber `0.0.0.0`
+ **Path**
  + Os servidores A2A são montados em `/` (versus `/invocations` para HTTP, `/mcp` para MCP)
  + Verificações de saúde ao `/ping` usar GET
+ **Cartões de agente** - O A2A fornece descoberta de agentes integrada por meio de cartões de agente em `/.well-known/agent-card.json`
+ **Protocolo** - usa JSON-RPC para comunicação agent-to-agent
+ **Autenticação** - Suporta esquemas de autenticação SigV4 e OAuth 2.0

Para saber mais sobre os requisitos do servidor A2A, consulte [Implantar servidores A2A](https://docs.aws.amazon.com/bedrock-agentcore/latest/devguide/runtime-a2a.html) no Runtime. AgentCore 

#### `/`: POST
<a name="a2a-endpoint"></a>

Esse é o principal endpoint de interação do agente quando os clientes ligam para o servidor A2A com. InvokeAgentRuntime

**Exemplo de solicitação de invocação de agente:**

```
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"  
    }  
  } 
}
```

**Exemplo de resposta de invocação de agente:**

Resposta JSON (sem streaming):

```
Content-Type: application/json
{
  "jsonrpc": "2.0",
  "id": "req-001",
  "result": {
    "artifacts": [
      {
        "parts": [
          {
            "kind": "text",
            "text": "101 * 11 is 1111"
          }
        ]
      }
    ]
  }
}
```

**Exemplo de recuperação de cartão de agente:**

```
curl https://bedrock-agentcore.<REGION>.amazonaws.com/runtimes/{escaped_agent_arn}/invocations/.well-known/agent-card.json
```

#### `/ping`: GET
<a name="a2a-endpoint-ping"></a>

Esse é o endpoint para realizar verificações de saúde.

## Testando seu contêiner Bedrock AgentCore Runtime
<a name="testing-agentcore-container"></a>

Antes de enviar seu contêiner para AWS Marketplace, teste-o minuciosamente:

### Teste do atendente local
<a name="local-agent-testing"></a>

Testar o atendente localmente usando o 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!"}'
```

### Teste do servidor MCP local
<a name="local-mcp-testing"></a>

Testar o servidor MCP localmente usando o Docker

```
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"}}}'
```

### Teste de servidor A2A local
<a name="local-a2a-testing"></a>

Teste seu servidor A2A localmente usando o Docker

```
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" }}}'
```

### Testando no Bedrock AgentCore Runtime
<a name="testing-on-agentcore"></a>

Depois de testar seu contêiner localmente, faça o upload para o Amazon Elastic Container Registry (Amazon ECR) e implante-o no Amazon Bedrock Runtime. AgentCore Você pode implantar usando o console Amazon Bedrock AgentCore Runtime ou o AWS Command Line Interface (AWS CLI).

## Práticas recomendadas para configuração do contêiner
<a name="container-best-practices"></a>

### Considerações sobre segurança
<a name="security-considerations"></a>
+ **Isolamento**: não armazene dados sensíveis entre invocações
+ **Autenticação**: valide todas as solicitações recebidas
+ **Registro em log**: registre em log as informações indicadas, mas evite incluir dados sensíveis
+ **Dependências**: mantenha todas as dependências atualizadas para evitar vulnerabilidades de segurança

### Otimização de desempenho
<a name="performance-optimization"></a>
+ **Partida a frio**: otimize o contêiner para partidas rápidas a frio
+ **Uso de memória**: minimize a pegada de carbono da memória para melhorar o desempenho
+ **Concorrência**: projete o atendente para processar solicitações simultâneas de maneira eficiente
+ **Tempos limite**: implemente o processamento do tempo limite indicado

### Tratamento de erros
<a name="error-handling"></a>
+ **Degradação elegante**: implemente mecanismos de fallback para quando os serviços não estão disponíveis
+ **Erros estruturados**: retorne respostas de erro bem estruturadas com códigos de status HTTP indicados
+ **Lógica de repetição**: implemente a lógica de repetição indicada para falhas transitórias

## Requisitos para AWS Marketplace submissão
<a name="marketplace-submission-requirements"></a>

Ao enviar seu contêiner AgentCore Runtime para AWS Marketplace, inclua:
+ **Imagem de contêiner** — Sua imagem de contêiner enviada para o Amazon ECR
+ **Documentação** — Documentação abrangente sobre como usar seu agente ou servidor MCP
+ **Exemplos de uso** — exemplos claros de como invocar seu agente ou servidor MCP
+ **Informações de suporte — Informações** de contato para obter suporte
+ **Informações sobre preços** — Estrutura clara de preços para seu agente ou servidor MCP

## Recursos adicionais
<a name="agentcore-additional-resources"></a>

Para obter mais informações, consulte o seguinte:
+ [O que é o Amazon Bedrock AgentCore?](https://docs.aws.amazon.com/bedrock-agentcore/latest/devguide/what-is-bedrock-agentcore.html)
+ [O que é AWS Marketplace?](https://docs.aws.amazon.com/marketplace/latest/userguide/what-is-marketplace.html)
+ [Conceitos básicos de produtos de contêiner](container-product-getting-started.md)

## Support for AgentCore Runtime em AWS Marketplace
<a name="agentcore-support"></a>

Para questões relacionadas à listagem do seu contêiner AgentCore Runtime em AWS Marketplace, consulte [Como obter suporte para AWS Marketplace](https://docs.aws.amazon.com/marketplace/latest/buyerguide/buyer-support.html).

Para perguntas técnicas sobre AgentCore Runtime, consulte [AWS Support e Atendimento ao cliente](https://console.aws.amazon.com/support/home#/case/create?issueType=technical).