

A referência AWS Partner Central da API foi reestruturada. Para obter mais informações sobre as operações de API suportadas, consulte a [Referência AWS Partner Central da API](https://docs.aws.amazon.com/partner-central/latest/APIReference/Welcome.html).

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á.

# Referência de ferramentas
<a name="mcp-tools-reference"></a>

O Partner Central Agent MCP Server expõe duas ferramentas MCP: `sendMessage` para todas as interações do agente e `getSession` para recuperar o estado da sessão. Todas as operações do Partner Central — consultas de oportunidades, solicitações de financiamento, análise de documentos — são tratadas em linguagem natural por meio de. `sendMessage`

## Visão geral das ferramentas
<a name="mcp-tools-overview"></a>


| Ferramenta | Description | Categoria | 
| --- | --- | --- | 
| sendMessage | Envie mensagens para o agente de IA do Partner Central. Oferece suporte a texto, anexos de arquivos e respostas de aprovação humanas. | Leitura/Gravação | 
| getSession | Recupere o estado da sessão, incluindo histórico de conversas, eventos e metadados. | Read-only | 

## `Enviar mensagem`
<a name="mcp-tool-sendmessage"></a>

Ferramenta principal para todas as interações com agentes de IA do Partner Central. Use essa ferramenta para fazer perguntas, solicitar ações, anexar documentos para análise e responder às solicitações de aprovação para operações de gravação.

O agente mantém o contexto da conversa em uma sessão, para que você possa fazer perguntas complementares sem repetir o contexto anterior.

### Parâmetros
<a name="mcp-sendmessage-parameters"></a>
+ `content`(obrigatório) — Matriz de blocos de conteúdo. Cada bloco deve incluir um `type` campo que determine a estrutura do bloco. Você pode incluir vários blocos em uma única mensagem (por exemplo, texto \+ anexo de documento).

  Tipos de blocos de conteúdo:    
[See the AWS documentation website for more details](http://docs.aws.amazon.com/pt_br/partner-central/latest/developer-guide/mcp-tools-reference.html)
+ `catalog`(obrigatório) — Ambiente de destino para a operação.

  Valores válidos: `"AWS"` (produção), `"Sandbox"` (teste)
+ `sessionId`(opcional) — UUID v4 identificando uma sessão existente para continuar. Omita a criação de uma nova sessão. Formato: `session-xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx`.

  Padrão: uma nova sessão é criada automaticamente.
+ `stream`(opcional) — Ative o streaming de Server-Sent eventos (SSE) para entrega de respostas em tempo real.

  Valores válidos: `true`, `false`

  Padrão: `false`

### Resposta
<a name="mcp-sendmessage-response"></a>

A resposta inclui:


| Campo | Description | 
| --- | --- | 
| sessionId | Identificador de sessão para mensagens de acompanhamento | 
| status | Status da resposta:"complete","requires\_approval", ou "error" | 
| content | Conjunto de blocos de conteúdo de resposta do agente | 

### Exemplos
<a name="mcp-sendmessage-examples"></a>

#### Mensagem de texto básica (nova sessão)
<a name="mcp-example-basic-message"></a>

Solicitação:

```
{
    "jsonrpc": "2.0",
    "id": 1,
    "method": "tools/call",
    "params": {
        "name": "sendMessage",
        "arguments": {
            "content": [
                {
                    "type": "text",
                    "text": "List my open opportunities with expected close date in Q1 2026"
                }
            ],
            "catalog": "AWS"
        }
    }
}
```

Resposta:

```
{
    "jsonrpc": "2.0",
    "id": 1,
    "result": {
        "content": [
            {
                "type": "text",
                "text": "I found 12 open opportunities with expected close dates in Q1 2026. Here's a summary:\n\n1. **O1234567890** - Acme Corp Cloud Migration - $250,000 - Qualified stage\n2. **O1234567891** - GlobalTech Data Analytics - $180,000 - Prospect stage\n..."
            }
        ],
        "sessionId": "session-550e8400-e29b-41d4-a716-446655440000",
        "status": "complete"
    }
}
```

#### Follow-up mensagem (sessão existente)
<a name="mcp-example-followup"></a>

Solicitação:

```
{
    "jsonrpc": "2.0",
    "id": 2,
    "method": "tools/call",
    "params": {
        "name": "sendMessage",
        "arguments": {
            "sessionId": "session-550e8400-e29b-41d4-a716-446655440000",
            "content": [
                {
                    "type": "text",
                    "text": "Tell me more about O1234567890. Is it ready for submission?"
                }
            ],
            "catalog": "AWS"
        }
    }
}
```

#### Anexo de arquivo
<a name="mcp-example-file-attachment"></a>

Faça o upload de um documento para o S3 primeiro e, em seguida, faça referência a ele na mensagem:

```
{
    "jsonrpc": "2.0",
    "id": 3,
    "method": "tools/call",
    "params": {
        "name": "sendMessage",
        "arguments": {
            "sessionId": "session-550e8400-e29b-41d4-a716-446655440000",
            "content": [
                {
                    "type": "text",
                    "text": "Review this customer proposal and suggest which opportunity it aligns with"
                },
                {
                    "type": "document",
                    "filename": "acme-proposal.pdf",
                    "s3Uri": "s3://aws-partner-central-marketplace-ephemeral-writeonly-files/123456789012/acme-proposal.pdf?versionId=abc123def456"
                }
            ],
            "catalog": "AWS"
        }
    }
}
```

Restrições de upload de arquivos:
+ Máximo de 3 arquivos por mensagem
+ Limite de tamanho da imagem: 3,75 MB
+ Limite de tamanho do documento: 4,5 MB
+ Extensões permitidas: `doc``docx`,`pdf`,`png`,,`jpeg`,`xlsx`,`csv`, `txt`
+ Os arquivos devem ser enviados para `s3://{bucket}/{your-aws-account-id}/`
+ O URI do S3 deve incluir o parâmetro de `versionId` consulta

### Human-in-the-loop fluxo de trabalho de aprovação
<a name="mcp-sendmessage-approval"></a>

Quando o agente precisa realizar uma operação de gravação (por exemplo, atualizar uma oportunidade, enviar uma solicitação de financiamento), ele retorna um `"requires_approval"` status com os detalhes da ação proposta. Você deve responder com um bloco `tool_approval_response` de conteúdo.

**Etapa 1 — O agente solicita aprovação:**

```
{
    "jsonrpc": "2.0",
    "id": 4,
    "result": {
        "content": [
            {
                "type": "text",
                "text": "I'd like to update opportunity O1234567890 with the following changes:\n- Target close date: 2026-03-31\n- Expected revenue: $300,000\n- Stage: Qualified\n\nPlease approve, reject, or override this action."
            },
            {
                "type": "tool_approval_request",
                "toolUseId": "tool-use-98765",
                "toolName": "update_opportunity_enhanced",
                "parameters": {
                    "opportunityId": "O1234567890",
                    "targetCloseDate": "2026-03-31",
                    "expectedRevenue": 300000,
                    "stage": "Qualified"
                }
            }
        ],
        "sessionId": "session-550e8400-e29b-41d4-a716-446655440000",
        "status": "requires_approval"
    }
}
```

**Etapa 2 — Aprovar a ação:**

```
{
    "jsonrpc": "2.0",
    "id": 5,
    "method": "tools/call",
    "params": {
        "name": "sendMessage",
        "arguments": {
            "sessionId": "session-550e8400-e29b-41d4-a716-446655440000",
            "content": [
                {
                    "type": "tool_approval_response",
                    "toolUseId": "tool-use-98765",
                    "decision": "approve"
                }
            ],
            "catalog": "AWS"
        }
    }
}
```

**Etapa 2 (alternativa) — Rejeite a ação:**

```
{
    "jsonrpc": "2.0",
    "id": 5,
    "method": "tools/call",
    "params": {
        "name": "sendMessage",
        "arguments": {
            "sessionId": "session-550e8400-e29b-41d4-a716-446655440000",
            "content": [
                {
                    "type": "tool_approval_response",
                    "toolUseId": "tool-use-98765",
                    "decision": "reject",
                    "message": "The expected revenue should be $250,000, not $300,000"
                }
            ],
            "catalog": "AWS"
        }
    }
}
```

**Etapa 2 (alternativa) — Substituir por uma resposta personalizada:**

```
{
    "jsonrpc": "2.0",
    "id": 5,
    "method": "tools/call",
    "params": {
        "name": "sendMessage",
        "arguments": {
            "sessionId": "session-550e8400-e29b-41d4-a716-446655440000",
            "content": [
                {
                    "type": "tool_approval_response",
                    "toolUseId": "tool-use-98765",
                    "decision": "override",
                    "message": "Use expected revenue of $250,000 and keep the stage as Prospect instead"
                }
            ],
            "catalog": "AWS"
        }
    }
}
```

Valores da decisão de aprovação:


| Decisão | Comportamento | 
| --- | --- | 
| "approve" | Execute a ferramenta com os parâmetros propostos | 
| "reject" | Não execute a ferramenta. Opcional message explica o porquê. | 
| "override" | Forneça uma resposta personalizada ou instruções modificadas via message | 

### Streaming com SSE
<a name="mcp-sendmessage-streaming"></a>

Ative o streaming para receber fragmentos de respostas incrementais à medida que o agente processa sua solicitação:

Solicitação:

```
{
    "jsonrpc": "2.0",
    "id": 6,
    "method": "tools/call",
    "params": {
        "name": "sendMessage",
        "arguments": {
            "sessionId": "session-550e8400-e29b-41d4-a716-446655440000",
            "content": [
                {
                    "type": "text",
                    "text": "Analyze my pipeline and identify opportunities at risk"
                }
            ],
            "catalog": "AWS",
            "stream": true
        }
    }
}
```

O servidor responde com um fluxo de eventos SSE:

```
event: stream_start
data: {"sessionId": "session-550e8400-e29b-41d4-a716-446655440000"}

event: assistant-response.start
data: {}

event: server-tool-use
data: {"toolName": "analyze_pipeline", "parameters": {}}

event: server-tool-response
data: {"toolName": "analyze_pipeline", "result": {"opportunitiesAnalyzed": 47, "atRisk": 5}}

event: assistant-response.delta
data: {"text": "I analyzed your pipeline of 47 opportunities and identified "}

event: assistant-response.delta
data: {"text": "5 that are at risk of slipping:\n\n"}

event: assistant-response.delta
data: {"text": "1. **O2345678901** - Close date is past due by 15 days\n"}

event: assistant-response.completed
data: {"status": "complete"}

event: stream_end
data: {}
```

## `Obter sessão`
<a name="mcp-tool-getsession"></a>

Recupere o estado atual de uma sessão de conversação, incluindo histórico completo de conversas, eventos e metadados. Use isso para inspecionar o estado da sessão, analisar interações passadas ou retomar uma conversa.

### Parâmetros
<a name="mcp-getsession-parameters"></a>
+ `sessionId`(obrigatório) — UUID da sessão a ser recuperada. Formato: `session-xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx`.
+ `catalog`(obrigatório) — Ambiente ao qual a sessão pertence.

  Valores válidos: `"AWS"`, `"Sandbox"`

### Resposta
<a name="mcp-getsession-response"></a>


| Campo | Tipo | Description | 
| --- | --- | --- | 
| sessionId | string | Identificador da sessão | 
| createdAt | string | Registro de data e hora ISO 8601 da criação da sessão | 
| lastActivity | string | Registro de data e hora ISO 8601 da última atividade | 
| sequenceNumber | integer | Número de sequência do evento atual | 
| stateType | string | Estado atual da sessão | 
| events | array | Histórico completo de conversas (mensagens de usuários, respostas de agentes, usos de ferramentas) | 
| variables | objeto | Variáveis de sessão e metadados | 
| eventCount | integer | Número total de eventos na sessão | 

### Exemplo
<a name="mcp-getsession-example"></a>

Solicitação:

```
{
    "jsonrpc": "2.0",
    "id": 7,
    "method": "tools/call",
    "params": {
        "name": "getSession",
        "arguments": {
            "sessionId": "session-550e8400-e29b-41d4-a716-446655440000",
            "catalog": "AWS"
        }
    }
}
```

Resposta:

```
{
    "jsonrpc": "2.0",
    "id": 7,
    "result": {
        "content": [
            {
                "type": "text",
                "text": "{\"sessionId\":\"session-550e8400-e29b-41d4-a716-446655440000\",\"createdAt\":\"2026-01-15T10:30:00Z\",\"lastActivity\":\"2026-01-15T11:45:00Z\",\"sequenceNumber\":8,\"stateType\":\"END_TURN\",\"eventCount\":8,\"events\":[...],\"variables\":{}}"
            }
        ]
    }
}
```

## Tratamento de erros
<a name="mcp-tools-error-handling"></a>

Todos os erros seguem o formato de erro JSON-RPC 2.0:

```
{
    "jsonrpc": "2.0",
    "id": 1,
    "error": {
        "code": -32001,
        "message": "Authentication failed. Verify your SigV4 credentials and ensure they have not expired."
    }
}
```

Consulte [Códigos de erro](mcp-configuration-reference.md#mcp-config-error-codes) a lista completa dos códigos de erro e seus significados.

**Estratégia de nova tentativa recomendada**
+ Para `-32004` (LIMIT\_EXCEEDED): tente novamente com recuo exponencial a partir de 1 segundo
+ Para `-32603` (INTERNAL\_ERROR): tente novamente até 3 vezes com recuo exponencial
+ Para `-32001` (AUTHENTICATION\_FAILURE): atualize as credenciais e tente novamente
+ Para todos os outros erros: não tente novamente automaticamente — inspecione a mensagem de erro e corrija a solicitação