Streamable HTTP · JSON-RPC 2.0 · 7 herramientas
Servidor MCP de ecentic.
Claude, ChatGPT y cualquier cliente del Model Context Protocol pueden llamar a ecentic de forma nativa por JSON-RPC 2.0. Esta página es la referencia de conexión: el endpoint, el transporte, el handshake y todas las herramientas que expone.
Conectar
Un endpoint, dos rutas, ninguna sesión que gestionar.
Content-Type: application/json
Accept: application/json, text/event-stream
{"jsonrpc":"2.0","id":1,"method":"tools/list"}El servidor está disponible en `/mcp` y en `/api/mcp`. Ambos son el mismo handler; la ruta corta existe porque la mayoría de los clientes y escáneres la prueban primero.
El transporte es Streamable HTTP. Cada petición es un `POST` con JSON-RPC 2.0, y cada respuesta llega por ese mismo POST. ecentic no abre ningún flujo iniciado por el servidor, así que un `GET` con `Accept: text/event-stream` responde `405` en lugar de dejar tu cliente esperando un flujo que nunca emitirá.
No hay sesión. ecentic no emite `Mcp-Session-Id`, y `DELETE` — el verbo de cierre de sesión — responde `405` por la misma razón. No hay nada que cerrar.
Handshake
Initialize y, después, la notificación initialized.
2025-06-18, 2025-03-26, 2024-11-05`initialize` devuelve la versión de protocolo negociada, la identidad del servidor, sus capacidades y una cadena `instructions` que describe para qué sirve ecentic. Si pides una versión que ecentic habla, recibes esa versión; cualquier otra recurre a la que anuncia por defecto.
El mensaje `notifications/initialized` que sigue es una notificación JSON-RPC: no tiene `id` y no recibe respuesta. ecentic la contesta con `202 Accepted` y cuerpo vacío, como exige el transporte. Un servidor que responde a una notificación con un error JSON-RPC rompe el handshake, así que este es el primer intercambio que conviene revisar cuando un cliente no conecta.
→ {"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2025-03-26"}}
← 200 {"jsonrpc":"2.0","id":1,"result":{"protocolVersion":"2025-03-26", ...}}
→ {"jsonrpc":"2.0","method":"notifications/initialized"}
← 202 (no body)Herramientas
Qué expone el servidor y qué llamadas necesitan clave.
| Herramienta | Auth | Qué hace |
|---|---|---|
| list_plans | ninguna | Devuelve el catálogo público de planes con precios, modo de facturación y condiciones de la comisión por rendimiento. |
| create_api_key | bearer | Genera una clave de API de larga duración en la cuenta que llama. Se muestra una sola vez. |
| create_checkout | bearer | Abre una sesión de pago de Stripe para un plan de suscripción. |
| connect_shopify | bearer | Inicia la instalación OAuth de Shopify para un dominio de tienda. |
| connect_woocommerce | bearer | Conecta una tienda WooCommerce con credenciales REST de consumidor. |
| connect_feed | bearer | Conecta un feed de productos por URL, detectando XML o JSON automáticamente. |
| get_onboarding_status | bearer | Informa de qué pasos del onboarding ha completado la cuenta. |
Autenticación
Las herramientas de solo lectura son abiertas; todo lo que toca una cuenta requiere una clave bearer.
Authorization: Bearer ecentic_sk_…Envía `Authorization: Bearer ecentic_sk_…` en las llamadas que modifican el estado de la cuenta. Una llamada que necesita credencial y no la lleva devuelve HTTP 401 con una cabecera `WWW-Authenticate` que nombra el documento de Protected Resource Metadata, de modo que el cliente puede volver a ejecutar el descubrimiento a partir del propio fallo.
Las claves son autoservicio: crea una cuenta y genera una desde el panel o llamando a `create_api_key` en una sesión autenticada. No interviene ningún comercial en ningún momento.
Errores
Dos superficies de error, y cuál estás viendo.
Un error JSON-RPC — método desconocido, parámetros incorrectos, una herramienta que rechaza la llamada — llega como HTTP 200 con un miembro `error`, exactamente como especifica JSON-RPC. Ramifica según `error.code`.
Un error de transporte — un método que el endpoint no ofrece — llega como un documento de problema RFC 9457 con `Content-Type: application/problem+json` y un `code` legible por máquina. Es el mismo modelo de error que usa la superficie REST.
La única excepción es el 401: lleva el envoltorio JSON-RPC para que un cliente que ya analiza JSON-RPC no necesite un segundo analizador, además de la cabecera `WWW-Authenticate` para el descubrimiento.
Todo lo que afirma esta página es verificable: el manifiesto, la tarjeta del servidor y el documento OpenAPI describen el mismo endpoint.
¿Listo para ser el producto que recomiendan los agentes?
Instálalo gratis en Shopify o WooCommerce y mira tu puntuación de IA en minutos.
© 2026 ecentic. Todos los derechos reservados.
Hecho para comercios que se niegan a ser invisibles para la IA.
