Skip to main content
POST
Inicializa un cliente MCP, descubre las herramientas permitidas o ejecuta acciones de cliente de VoiceCheap mediante MCP.

Autenticación

Token de acceso OAuth de una cuenta de pago en Authorization: Bearer mcpaccess…, o una clave de API en x-api-key o Authorization: Bearer vc_…. Las credenciales van en cabeceras, nunca en parámetros de consulta de la URL.

Cuerpo de la solicitud

Ejemplos de solicitud

Sigue la codificación y la autenticación documentadas para esta ruta. El formato envolvente y las reglas de idempotencia de la API de acciones solo se aplican a las invocaciones de acciones.

Respuesta

Fragmento representativo de una respuesta tools/list. El resultado real contiene hasta 50 herramientas permitidas y nextCursor cuando quedan más. Las solicitudes normales reciben respuestas JSON de JSON-RPC; las notificaciones aceptadas reciben HTTP 202 con un cuerpo vacío.
HTTP 200

Cabeceras de respuesta

Notas de la operación

  • POST es el único método HTTP de MCP admitido. Las solicitudes GET, DELETE y otras solicitudes distintas de POST autenticadas devuelven METHOD_NOT_ALLOWED con HTTP 405 y Allow: POST después de las comprobaciones de frecuencia de la cuenta y de origen. El análisis de la solicitud o la gestión de CORS pueden responder antes. No hay un canal GET SSE ni una ruta de eliminación de sesión.
  • Envía Content-Type: application/json y Accept: application/json, text/event-stream. El transporte MCP instalado requiere ambos valores de Accept aunque este servidor tenga habilitadas las respuestas JSON.
  • Usa el ciclo de vida MCP normal: initialize, envía notifications/initialized y, después, tools/list o tools/call. Incluye la cabecera MCP-Protocol-Version negociada en las solicitudes posteriores.
  • El servidor no mantiene estado y no devuelve Mcp-Session-Id. Cada solicitud HTTP vuelve a autenticar los permisos actuales, la propiedad del usuario o equipo y el acceso de pago de la cuenta.
  • tools/list usa un cursor de cadena opaco de nextCursor y devuelve 50 herramientas por página. Continúa hasta que no aparezca nextCursor. Los cursores no válidos producen un error de método JSON-RPC.
  • Cada herramienta declara sus permisos OAuth necesarios en securitySchemes y _meta.securitySchemes. action_request_get también comprueba los permisos de la acción original.
  • Las anotaciones de las herramientas describen el comportamiento de solo lectura y las operaciones destructivas. openWorldHint indica la interacción con servicios externos o fuentes multimedia; no concede permisos adicionales.
  • webhooks_create_secret solo está disponible por REST y no aparece en el descubrimiento MCP. Ejecutarla o consultar su resultado mediante MCP devuelve el error de herramienta ACTION_NOT_AVAILABLE_IN_MCP. Los secretos de firma no se envían a los asistentes.
  • tools/call acepta {name, arguments}; los nombres de herramientas y los esquemas de argumentos se comparten con /v1/actions. Las mutaciones usan un requestId UUID v4 dentro de arguments y reutilizan argumentos idénticos en los reintentos.
  • Las llamadas ordinarias a herramientas completadas correctamente devuelven content con el resultado serializado {data, requestId?} y el mismo structuredContent. Las acciones de descarga de imágenes devuelven contenido de imagen MCP nativo y un generationId de texto en su lugar.
  • Los fallos de acciones son resultados de herramienta con isError: true, detalles del error en texto y structuredContent.error; no son necesariamente fallos HTTP. Revisa tanto los errores de transporte como los de la herramienta.
  • El resultado de una herramienta de larga duración incluye el ID de su solicitud de acción y pollAction: action_request_get. Consulta el estado con el nombre de la operación original; no recrees una generación para comprobar el progreso.
  • La inicialización, las notificaciones, el descubrimiento y las llamadas a herramientas cuentan para el límite de frecuencia compartido de la cuenta. Solo las acciones de datos completadas correctamente consumen llamadas de integración mensuales, con las excepciones documentadas de estado y control.
  • Envía un mensaje JSON-RPC por solicitud HTTP. Los cuerpos JSON tienen un límite de 1 MiB; los bytes multimedia usan las acciones de carga.
  • La cabecera Host debe coincidir con el host canónico de MCP. Si hay una cabecera Origin, debe ser el origen de MCP, el origen de la aplicación, https://chatgpt.com, https://chat.openai.com o https://claude.ai. Los clientes nativos pueden omitir Origin.
  • Los errores HTTP 401 incluyen WWW-Authenticate: Bearer resource_metadata=“https://api.voicecheap.ai/.well-known/oauth-protected-resource/mcp” en producción.
  • Los fallos de autenticación usan el objeto de error de integración. Las comprobaciones del protocolo MCP pueden devolver {code, message}; otros fallos de protocolo usan objetos de error JSON-RPC con códigos de error numéricos. No supongas un único formato de error para todos los fallos de transporte.
  • La protección HTTP pública de la ruta permite 3000 solicitudes por minuto y por IP de cliente antes de autenticar la cuenta. Cada cuenta mantiene su límite de frecuencia compartido de API/MCP, más bajo y específico de su plan.
  • Los errores de autorización de las herramientas incluyen un desafío Bearer en _meta con la clave mcp/www_authenticate. Vuelve a conectar tu cuenta con los permisos necesarios antes de reintentar.

Errores