Endpoints
Servidor MCP
| Entorno | URL |
|---|---|
| Producción | https://mcp.kadu.ia.br |
| Staging | https://mcp.staging.kadu.ia.br |
La URL del servidor es la raíz del host — es esa dirección completa la que pegas en un cliente MCP. Es también el resource identifier OAuth (la audience del token), y por eso no lleva ninguna ruta.
Rutas servidas
| Método | Ruta | Para qué |
|---|---|---|
POST | / | Un mensaje JSON-RPC por solicitud. Toda la superficie de tools, resources y prompts. |
GET | /.well-known/oauth-protected-resource | Metadata del recurso protegido (RFC 9728). Pública, sin autenticación. |
GET | / | 405 (después de la autenticación) — este servidor es stateless y no abre stream servidor→cliente. |
DELETE | / | 204 (después de la autenticación) — no hay sesión que cerrar. |
En el host MCP, cualquier otra ruta responde 404 en JSON, con cualquier
método:
{ "error": { "code": "NOT_FOUND", "message": "Not found." } }
Documentación, consola y API
| URL | |
|---|---|
| Documentación | https://docs.kadu.ia.br |
| Agent Console (producción) | https://app.kadu.ia.br — adonde apunta el enlace de aprobación |
| Agent Console (staging) | https://app.staging.kadu.ia.br |
| API v1 (producción) | https://api.kadu.ia.br/v1 |
| API v1 (staging) | https://api.staging.kadu.ia.br/v1 |
Cada entorno tiene su audience: un token emitido para el MCP de staging no vale en el de producción, y al revés. No reutilices el token entre entornos.
:::info Host separado, a propósito El servidor MCP tiene host propio en lugar de una ruta en el host de la API o de la consola. Son tres razones: el documento de descubrimiento OAuth tiene que vivir en la raíz del host; ninguna cookie de sesión de la consola se envía a este origen, lo que elimina por construcción toda una clase de problemas de confused deputy; y el token del MCP tiene audience propia, que no se confunde con la de la API. :::
Desarrollo local
En desarrollo el endpoint responde en /mcp en el host de la app
(http://localhost:3030/mcp), y el documento de descubrimiento en
/.well-known/oauth-protected-resource. Fuera de desarrollo, /mcp solo
responde cuando la solicitud llega por el borde del host MCP; por el host de la
consola o de la API, la respuesta es 404.