Cyclops MCP
Gestiona aplicaciones de Kubernetes de forma segura creando y actualizando Módulos Cyclops para agentes de IA.
Documentación
Cyclops MCP (Model Context Protocol)
Cyclops MCP permite que tu agente de IA favorito gestione tus aplicaciones de Kubernetes. Los servidores Cyclops MCP proporcionan herramientas para que los agentes creen y actualicen aplicaciones existentes de forma segura.
https://github.com/user-attachments/assets/0c675c33-1e36-4fdb-bf8c-2fd7fb491e6b
Esto significa que puede verificar todas tus plantillas existentes y el esquema de esas plantillas para crear aplicaciones precisas y listas para producción. Tu agente ahora tiene mucho menos margen para cometer errores de configuración, ya que crea recursos de alto nivel (Módulos Cyclops) en lugar de tocar cada línea de tus recursos de Kubernetes (Deployments, Services e Ingresses).
Te permite avanzar rápido y garantizar que no haya configuraciones erróneas no detectadas que lleguen a tu entorno de producción.
Con Cyclops y nuestro MCP, ahora puedes abstraer la complejidad de Kubernetes de tus desarrolladores Y de tus agentes de IA
Instalar mediante la interfaz de usuario
La forma más sencilla de instalar el servidor Cyclops MCP es a través de la interfaz de usuario de Cyclops. A continuación se presentan instrucciones sobre cómo instalarlo mediante binario y kubectl, pero la forma recomendada de instalarlo es a través de la interfaz de usuario.
⚠️ Para instalar Cyclops MCP a través de la interfaz de usuario, debes ejecutar Cyclops en una versión
v0.20.1o superior
- Instala Cyclops MCP yendo a la barra lateral
“Addon”>"MCP server". Ahora puedes hacer clic en"Install Cyclops MCP server"y tu servidor Cyclops MCP estará en funcionamiento en unos segundos.
-
Ahora que tu servidor MCP está en funcionamiento, todo lo que queda es exponerlo fuera de tu clúster y conectar tu agente de IA a él.
Para exponer el servidor MCP en localhost, simplemente puedes reenviar el puerto con el siguiente comando:
kubectl port-forward -n cyclops svc/cyclops-mcp 8000:8000Tu servidor ahora está disponible en
localhost:8000. -
Para conectarlo a un agente de IA, solo tendrás que proporcionar el servidor Cyclops MCP en su configuración. Por ejemplo, para agregarlo a Cursor, simplemente puedes añadirlo con el siguiente JSON:
{ "mcpServers": { "cyclops-kubernetes": { "url": "http://localhost:8000/sse" } } }
Ahora puedes iniciar una conversación nueva con tu compañero de IA. Arriba se muestra un ejemplo de cómo lo usamos con Cursor.
Instalar binario stdin
1. Asegúrate de que Cyclops esté instalado en tu clúster de Kubernetes
Consulta nuestra documentación sobre cómo instalarlo con un solo comando - https://cyclops-ui.com/docs/installation/install/manifest
2. Descargar el servidor MCP
Puedes descargar el binario del servidor Cyclops MCP con el siguiente comando:
GOBIN="$HOME/go/bin" go install github.com/cyclops-ui/mcp-cyclops/cmd/mcp-cyclops@latest
3. Agregar configuración del servidor
⚠️ Por defecto, Cyclops MCP utilizará el archivo
.kube/configpara conectarse a tu clúster
Configura tu servidor MCP Cyclops:
{
"mcpServers": {
"mcp-cyclops": {
"command": "mcp-cyclops"
}
}
}
Configuración
Puedes configurar el servidor Cyclops MCP mediante variables de entorno. A continuación se muestra un ejemplo de cómo agregar la configuración para especificar el archivo kubeconfig que el servidor Cyclops MCP debe usar al gestionar tus aplicaciones Cyclops.
{
"mcpServers": {
"mcp-cyclops": {
"command": "mcp-cyclops",
"env": {
"KUBECONFIG": "/path/to/your/kubeconfig"
}
}
}
}
Variables de entorno
A continuación se muestra la lista de variables de entorno utilizadas para configurar tu servidor Cyclops MCP:
| Variable de entorno | Descripción |
|---|---|
KUBECONFIG | Ruta al archivo kubeconfig (opcional, por defecto usa configuración dentro del clúster o $HOME/.kube/config) |
CYCLOPS_KUBE_CONTEXT | Contexto de Kubernetes a usar (opcional) |
CYCLOPS_MODULE_NAMESPACE | Namespace donde se almacenan los módulos |
CYCLOPS_HELM_RELEASE_NAMESPACE | Namespace para los lanzamientos de Helm |
CYCLOPS_MODULE_TARGET_NAMESPACE | Namespace de destino para los módulos |
Instalar en un clúster de Kubernetes manualmente
En lugar de que cada desarrollador instale el binario mcp-cyclops, puedes instalar el servidor Cyclops MCP con SSE como tipo de transporte en tu clúster de Kubernetes y permitir que todos tus desarrolladores se conecten al mismo servidor.
-
Antes de instalar, asegúrate de que Cyclops y todos sus CRDs estén instalados en tu clúster:
-
Verifica que los pods de Cyclops estén en ejecución:
kubectl get pods -n cyclopsDebería mostrar:
NAME READY STATUS RESTARTS AGE cyclops-ctrl-676b5d9789-ntcls 1/1 Running 0 94s cyclops-ui-7798655f97-xdg29 1/1 Running 0 94s -
Verifica si los CRDs están instalados
kubectl get crds | grep cyclops-uiDebería mostrar:
modules.cyclops-ui.com 2025-04-26T15:28:18Z templateauthrules.cyclops-ui.com 2025-04-26T15:28:18Z templatestores.cyclops-ui.com 2025-04-26T15:28:18Z
-
-
Instala el servidor Cyclops MCP con el siguiente comando:
kubectl apply -f https://raw.githubusercontent.com/cyclops-ui/mcp-cyclops/refs/heads/main/install/mcp-server.yaml -
Ahora puedes exponer el servicio
cyclops-mcp. Para probar tu servidor MCP, puedes reenviar el puerto:kubectl port-forward svc/cyclops-mcp -n cyclops 8000:8000 -
Agrega el host de tu servidor Cyclops MCP, o en caso de que lo estés probando, la dirección localhost donde reenviaste el puerto del servicio MCP:
{ "mcpServers": { "mcp-cyclops": { "url": "http://localhost:8000/sse" } } }
Herramientas
| Herramienta | Descripción |
|---|---|
create_module | Crear un nuevo Módulo. Antes de llamar a esta herramienta, asegúrate de llamar a get_template_schema para validar los valores de la plantilla dada |
get_module | Obtener Módulo por nombre |
list_modules | Listar todos los Módulos Cyclops |
update_module | Actualizar Módulo por nombre. Antes de llamar a esta herramienta, asegúrate de llamar a get_template_schema para validar los valores de la plantilla dada |
get_template_schema | Devuelve el esquema JSON para la plantilla dada. Debe verificarse antes de llamar a la herramienta create_module |
get_template_store | Obtener Tienda de Plantillas por nombre |
list_template_store | Listar Tiendas de Plantillas del clúster |