Se reestructuró la referencia de la Centro de socios de AWS API. Para obtener más información sobre las operaciones de API compatibles, consulte la referencia de la Centro de socios de AWS API.
Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Referencia de herramientas
El servidor MCP del agente de Partner Central presenta dos herramientas de MCP: sendMessage para todas las interacciones entre los agentes y getSession para recuperar el estado de la sesión. Todas las operaciones de Partner Central (consultas de oportunidades, solicitudes de financiación, análisis de documentos) se gestionan mediante lenguaje natural. sendMessage
Descripción general de las herramientas
| Herramienta | Description (Descripción) | Categoría |
|---|---|---|
sendMessage |
Envíe mensajes al agente de IA de Partner Central. Admite mensajes de texto, archivos adjuntos y respuestas de aprobación personalizadas. | Lectura y escritura |
getSession |
Recupera el estado de la sesión, incluido el historial de conversaciones, los eventos y los metadatos. | Read-only |
Enviar mensaje
Herramienta principal para todas las interacciones con los agentes de IA de Partner Central. Utilice esta herramienta para hacer preguntas, solicitar acciones, adjuntar documentos para su análisis y responder a las solicitudes de aprobación de las operaciones de escritura.
El agente mantiene el contexto de la conversación dentro de una sesión, por lo que puede hacer preguntas de seguimiento sin repetir el contexto anterior.
Parameters
content(obligatorio): conjunto de bloques de contenido. Cada bloque debe incluir untypecampo que determine la estructura del bloque. Puedes incluir varios bloques en un solo mensaje (p. ej., texto o documento adjunto).Tipos de bloques de contenido:
Tipo Campos Description (Descripción) texttype(obligatorio),text(obligatorio)Mensaje de usuario (texto) enviado al agente documenttype(obligatorio),filename(obligatorio),s3Uri(obligatorio)Archivo adjunto para que el agente lo analice. s3UriDebe incluir unversionIdparámetro.tool_approval_responsetype(obligatorio),toolUseId(obligatorio),decision(obligatorio),message(opcional)Respuesta a una solicitud de aprobación realizada por un experto catalog(obligatorio): entorno objetivo para la operación.Valores válidos:
"AWS"(producción),"Sandbox"(pruebas)sessionId(opcional): el UUID v4 identifica una sesión existente para continuar. Omite la creación de una nueva sesión. Formato:session-xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx.Predeterminado: se crea automáticamente una nueva sesión.
stream(opcional): habilite la transmisión de Server-Sent eventos (SSE) para ofrecer respuestas en tiempo real.Valores válidos:
true,falseValor predeterminado:
false
Respuesta
La respuesta incluye lo siguiente:
| Campo | Description (Descripción) |
|---|---|
sessionId |
Identificador de sesión para los mensajes de seguimiento |
status |
Estado de respuesta:"complete","requires_approval", o "error" |
content |
Matriz de bloques de contenido de respuesta del agente |
Ejemplos
Mensaje de texto básico (nueva sesión)
Solicitud:
{ "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" } } }
Response: (Respuesta:)
{ "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 mensaje (sesión existente)
Solicitud:
{ "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" } } }
Archivo adjunto
Suba primero un documento a S3 y, a continuación, haga referencia a él en el mensaje:
{ "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" } } }
Restricciones de carga de archivos:
Máximo de 3 archivos por mensaje
Límite de tamaño de imagen: 3,75 MB
Límite de tamaño del documento: 4,5 MB
Extensiones permitidas:
docdocx,pdf,png,jpeg,xlsx,csv,txtLos archivos deben cargarse a
s3://{bucket}/{your-aws-account-id}/La URI de S3 debe incluir el parámetro de
versionIdconsulta
Human-in-the-loop flujo de trabajo de aprobación
Cuando el agente necesita realizar una operación de escritura (por ejemplo, actualizar una oportunidad o enviar una solicitud de financiación), devuelve un "requires_approval" estado con los detalles de la acción propuesta. Debes responder con un bloque tool_approval_response de contenido.
Paso 1: el agente solicita la aprobación:
{ "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" } }
Paso 2: Aprobar la acción:
{ "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" } } }
Paso 2 (alternativa): rechazar la acción:
{ "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" } } }
Paso 2 (alternativo): anula con una respuesta 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 de la decisión de aprobación:
| Decisión | Comportamiento |
|---|---|
"approve" |
Ejecute la herramienta con los parámetros propuestos |
"reject" |
No ejecute la herramienta. Opcional message explica por qué. |
"override" |
Proporcione una respuesta personalizada o instrucciones modificadas mediante message |
Transmisión con SSE
Habilite la transmisión para recibir fragmentos de respuesta incrementales a medida que el agente procesa su solicitud:
Solicitud:
{ "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 } } }
El servidor responde con una secuencia de eventos de 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: {}
GetSession
Recupera el estado actual de una sesión de conversación, incluido el historial completo de la conversación, los eventos y los metadatos. Utilízalo para inspeccionar el estado de la sesión, revisar las interacciones pasadas o reanudar una conversación.
Parameters
sessionId(obligatorio): el UUID de la sesión que se va a recuperar. Formato:session-xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx.catalog(obligatorio): entorno al que pertenece la sesión.Valores válidos:
"AWS","Sandbox"
Respuesta
| Campo | Tipo | Description (Descripción) |
|---|---|---|
sessionId |
cadena | Identificador de sesión |
createdAt |
cadena | Marca de tiempo ISO 8601 de creación de la sesión |
lastActivity |
cadena | Marca de tiempo ISO 8601 de la última actividad |
sequenceNumber |
entero | Número de secuencia del evento actual |
stateType |
cadena | Estado actual de la sesión |
events |
array | Historial completo de conversaciones (mensajes de usuario, respuestas de los agentes, usos de las herramientas) |
variables |
objeto | Variables de sesión y metadatos |
eventCount |
entero | Número total de eventos de la sesión |
Ejemplo
Solicitud:
{ "jsonrpc": "2.0", "id": 7, "method": "tools/call", "params": { "name": "getSession", "arguments": { "sessionId": "session-550e8400-e29b-41d4-a716-446655440000", "catalog": "AWS" } } }
Response: (Respuesta:)
{ "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\":{}}" } ] } }
Gestión de errores
Todos los errores siguen el formato de error 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." } }
Consulta Códigos de error la lista completa de códigos de error y sus significados.
Estrategia de reintento recomendada
Para
-32004(LIMIT_EXCEEDED): Vuelva a intentarlo con un retroceso exponencial a partir de 1 segundoPara
-32603(INTERNAL_ERROR): Vuelva a intentarlo hasta 3 veces con un retraso exponencialPara
-32001(AUTHENTICATION_FAILURE): Actualice las credenciales y vuelva a intentarloPara todos los demás errores: no lo vuelva a intentar automáticamente; inspeccione el mensaje de error y corrija la solicitud