Conectar un agente de IA (MCP)
Skysize expone un endpoint de Model Context Protocol (MCP), de modo que el agente de código de IA que ya usas para escribir tus módulos de Odoo también pueda leer qué ocurrió al desplegarlos.
En lugar de copiar un traceback del panel a tu editor, puedes preguntarle directamente a tu agente: «¿por qué falló el último despliegue de mi rama de staging?». El agente obtiene el log de build, el log de tiempo de ejecución, las consultas lentas o las métricas del contenedor de la rama exacta en la que está trabajando, y cierra el diagnóstico sin que salgas del editor.
El acceso MCP está incluido en todos los planes, incluido el Sandbox gratuito.
Qué puede leer tu agente
El endpoint proporciona siete herramientas de solo lectura:
| Herramienta | Qué devuelve |
|---|---|
list_projects | Los proyectos a los que tienes acceso: id, nombre, versión y edición de Odoo, validez, estado del plan |
list_branches | Las ramas de un proyecto con el estado del despliegue y el último resultado de build por rama |
list_builds | Los builds recientes de una rama, del más nuevo al más antiguo (10 por defecto, 50 como máximo) |
get_build_log | La salida de build de un despliegue (fases install, update, tests y requirements), como extracto acotado |
get_runtime_log | El final del archivo odoo.log de la instancia en ejecución (200 líneas por defecto, 1000 como máximo), con filtro de texto opcional |
get_slow_queries | Las sentencias SQL más lentas de pg_stat_statements, normalizadas, con número de llamadas y tiempos medio y máximo |
get_branch_metrics | CPU, memoria y latencia HTTP del contenedor de una rama, incluidos los límites de recursos del tipo de rama |
Son los mismos logs y métricas que muestra el panel. Consulta Ver logs para el equivalente en la interfaz.
Crear un token de acceso
- Inicia sesión en app.skysize.io y abre Cuenta > Agentes de IA.
- Dale al token un nombre que indique dónde se usa, por ejemplo
portatil-claude-code. - Elige una caducidad: 1 día, 3 días, 7 días, una fecha personalizada o nunca. Siete días viene preseleccionado. Una fecha personalizada puede llegar hasta un año.
- Haz clic en Crear token.
El token se muestra una sola vez, justo después de crearlo. Cópialo en ese momento, no podrá volver a mostrarse. Si lo pierdes, revócalo y crea uno nuevo.
Un token de acceso actúa en tu nombre. Trátalo como una contraseña: nunca lo subas a un repositorio y prefiere una caducidad corta para un token que solo necesitas durante una sesión de depuración. Puedes revocar cualquier token en cualquier momento desde la misma página.
Conectar Claude Code
La página de tokens muestra un comando listo para pegar. Se ve así:
claude mcp add --transport http skysize https://app.skysize.io/mcp --header "Authorization: Bearer <tu-token>"
Sustituye <tu-token> por el token que acabas de copiar y ejecuta el comando en tu terminal. Verifica la conexión con:
claude mcp list
Pídele a tu agente «lista mis proyectos de Skysize» para confirmar que las herramientas son accesibles.
Conectar otro cliente MCP
Cualquier cliente MCP que hable HTTP streamable y permita definir una cabecera de petición funciona igual, incluidos Cursor y Windsurf. Configura:
| Ajuste | Valor |
|---|---|
| Transporte | HTTP streamable |
| URL | https://app.skysize.io/mcp |
| Cabecera | Authorization: Bearer <tu-token> |
Los conectores que requieren OAuth, como el directorio de conectores remotos de claude.ai, todavía no se pueden usar. El endpoint se autentica hoy con tokens de acceso. Usa un cliente capaz de enviar una cabecera.
Qué puede y qué no puede hacer el agente
Solo lectura. Ninguna herramienta puede modificar nada. Tu agente no puede relanzar un build, reiniciar una instancia, editar variables de entorno, lanzar una copia de seguridad ni eliminar un despliegue.
Nunca expone secretos. Las variables de entorno quedan excluidas de la salida de todas las herramientas, al igual que los dominios, la configuración de DNS y los datos de facturación.
Tus permisos, exactamente. El token lleva tus accesos, nada más. Tu agente ve los proyectos que tú ves y las ramas que puedes leer, siguiendo los mismos roles de proyecto y accesos de grupo que el panel. Consulta Gestionar usuarios y grupos. Si tu rol se limita a las ramas de desarrollo, el de tu agente también.
Salida acotada. Los logs se devuelven como extractos, no como archivos completos. Un log de build grande se trunca conservando su principio y su final, de modo que los tracebacks situados en cualquiera de los dos extremos se preservan.
Límite de peticiones. Cada token está limitado a 60 peticiones por minuto. Los agentes reintentan con entusiasmo, y este límite evita que un bucle sature la plataforma. Por encima, las peticiones se rechazan hasta el minuto siguiente.
Cosas que conviene saber sobre los datos
- Los despliegues de desarrollo se eliminan 24 horas después de su build. Si tu agente indica que una rama de desarrollo no tiene despliegue, esa es la razón. Un nuevo push la reconstruye.
- Las consultas lentas necesitan
pg_stat_statementsen el host. Cuando no está disponible, la herramienta devuelveavailable: falsecon el motivo, en lugar de una lista vacía. - Las métricas se recogen cada 30 segundos y se conservan 30 días. La ventana de consulta es de 60 minutos por defecto y puede llegar a 24 horas.
- Los logs de build reflejan la última ejecución de cada fase de ese despliegue. Para builds más antiguos, usa el panel.
Resolución de problemas
| Síntoma | Causa y solución |
|---|---|
401 unauthorized | El token es incorrecto, está revocado o ha caducado. Revisa la columna Caduca en la página de tokens y crea uno nuevo |
| El cliente rechaza la URL | La URL debe ser absoluta y terminar en /mcp. Un /mcp a secas no se acepta |
429 rate_limited | Más de 60 peticiones en un minuto con el mismo token. Espera y reinténtalo |
| Falta un proyecto | Tu cuenta no tiene acceso a él. Pide a un administrador del proyecto que te asigne un rol |
Las consultas lentas devuelven false | El Postgres del host funciona sin pg_stat_statements. Contacta con soporte para que se habilite |
Peticiones útiles
Una vez conectado, prueba:
- «Mi despliegue de staging ha fallado. Lee el log de build y dime qué se rompió.»
- «Revisa el log de tiempo de ejecución de mi rama de producción en busca de tracebacks en las últimas 200 líneas.»
- «¿Qué consultas SQL son las más lentas en mi base de datos de producción, y cuáles de mis módulos las generan?»
- «¿Mi contenedor de producción alcanzó su límite de memoria en la última hora?»
- «Mi módulo falla por una biblioteca de Python que falta. Lee el log de requirements y dime qué hizo pip.»