kubectl MCP Plugin
Un servidor MCP para kubectl, que permite a los asistentes de IA interactuar con clústeres de Kubernetes a través de un protocolo estandarizado.
Documentación
Complemento kubectl MCP (Model Context Protocol)
Resumen
El complemento kubectl-mcp implementa un servidor Model Context Protocol (MCP) para kubectl. Este servidor permite que asistentes de IA como Amazon Q interactúen con la funcionalidad de kubectl directamente a través de un protocolo estandarizado, permitiendo una integración perfecta de los comandos de kubectl en flujos de trabajo impulsados por IA.
¿Qué es MCP?
Model Context Protocol (MCP) es un protocolo abierto que estandariza cómo las aplicaciones proporcionan contexto y herramientas a los Modelos de Lenguaje de Gran Escala (LLMs). Permite que los asistentes de IA:
- Descubran las herramientas disponibles y sus capacidades
- Ejecuten comandos y reciban respuestas estructuradas
- Proporcionen información contextual para mejorar las interacciones con la IA
Cómo funciona el complemento kubectl MCP
El complemento kubectl MCP expone todos los comandos de kubectl como herramientas que pueden ser invocadas por asistentes de IA. La implementación consta de varios componentes clave:
Componentes principales
main.go: Punto de entrada que inicia el servidor MCPpkg/mcp/server.go: Crea y configura el servidor MCP con todos los comandos de kubectlpkg/mcp/tools.go: Gestiona el registro de los comandos de kubectl como herramientas MCP
Detalles de implementación
- El servidor utiliza la librería
mcp-gopara implementar el Model Context Protocol - Registra dinámicamente todos los comandos de kubectl (get, apply, delete, etc.) como herramientas MCP
- El texto de ayuda, las banderas y los parámetros de cada comando se exponen a través del protocolo
- El servidor se ejecuta como un servidor stdio, comunicándose a través de la entrada/salida estándar
Proceso de registro de comandos
- El servidor recorre recursivamente el árbol de comandos de kubectl
- Para cada comando, extrae:
- La descripción del comando e información de uso
- Las banderas disponibles y sus descripciones
- Los parámetros requeridos y opcionales
Uso del complemento kubectl MCP con Amazon Q Chat
Para usar el complemento kubectl MCP con Amazon Q Chat, debe registrarlo en el archivo de configuración de Amazon Q.
Cree o edite el archivo en $HOME/.aws/amazonq/mcp.json con el siguiente contenido:
{
"mcpServers": {
"kubectl": {
"command": "kubectl-mcp",
"args": []
}
}
}
Esta configuración le indica a Amazon Q Chat que:
- Registre un servidor llamado "kubectl"
- Use el comando
kubectl-mcppara iniciar el servidor MCP - Haga que todos los comandos de kubectl estén disponibles como herramientas con el prefijo
kubectl___
Beneficios
- Integración perfecta: Los asistentes de IA pueden ejecutar comandos de kubectl directamente
- Respuestas estructuradas: Los comandos devuelven datos estructurados que pueden ser analizados por modelos de IA
- Descubribilidad: Los asistentes de IA pueden descubrir los comandos disponibles y sus parámetros
- Consciente del contexto: Proporciona contexto enriquecido sobre los recursos de Kubernetes
Instalación
Para instalar el complemento kubectl MCP:
-
Compile el complemento:
make kubectl-mcp -
Mueva el binario a una ubicación en su PATH:
sudo mv kubectl-mcp /usr/local/bin/ -
Verifique la instalación:
kubectl plugin list | grep mcp
Prueba rápida para el servidor MCP
Para probar rápidamente el servidor MCP, puede ejecutar el siguiente comando en su terminal:
echo '{"jsonrpc":"2.0","method":"tools/list","id":1}' | kubectl-mcp | jq
Recomendaciones
- Monitoree las operaciones en segundo plano para comandos de larga duración. Comandos como la creación de recursos tienen un tiempo de espera de 45 segundos para las respuestas de los comandos, pero los procesos continúan en segundo plano.
- Para operaciones complejas de kubectl, considere usar el complemento en combinación con kubectl apply -f para la gestión declarativa de recursos.