remote-capable server
The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.
Integrations
Provides tools for managing ArgoCD applications including listing, creating, updating, deleting, and syncing applications, as well as accessing user information, server settings, and plugin configurations.
Servidor MCP de ArgoCD
Un servidor MCP (Protocolo de contexto de modelo) que se integra con la API de ArgoCD, lo que permite que los asistentes de IA y los modelos de lenguaje grandes administren aplicaciones y recursos de ArgoCD a través de interacciones de lenguaje natural.
Características
- Autenticación y gestión de sesiones :
- Recuperación de información de usuario desde la API de ArgoCD
- Autenticación basada en tokens con ArgoCD
- Configuración del servidor y acceso a la configuración
- Recuperación de información del complemento
- Recuperación de información de la versión
- Gestión de aplicaciones :
- Enumere y filtre aplicaciones por proyecto, nombre y espacio de nombres
- Obtenga información detallada de la aplicación
- Crear, actualizar y eliminar aplicaciones
- Sincronizar aplicaciones con opciones configurables
- Cliente API robusto :
- Normalización de URL y manejo inteligente de puntos finales
- Manejo integral de errores y mensajes de error detallados
- Tiempos de espera configurables y verificación SSL
- Protección y enmascaramiento de seguridad de tokens
- Experiencia de desarrollador :
- Comprobación completa de tipos estáticos con mypy
- Documentación detallada y ejemplos
- Configuración basada en el entorno
Inicio rápido
Configuración
Iniciando el servidor
El servidor se configura mediante variables de entorno. Estas son las opciones de configuración disponibles:
Variable de entorno | Descripción | Valor predeterminado |
---|---|---|
ARGOCD_TOKEN | Token de API de ArgoCD | Ninguno |
ARGOCD_API_URL | Punto final de la API de ArgoCD | https://argocd.example.com/api/v1 |
ARGOCD_VERIFY_SSL | Verificar certificados SSL | verdadero |
Puedes iniciar el servidor de varias maneras:
Cuando el token se proporciona a través de una variable de entorno, Claude puede usarlo sin tener que especificarlo en cada comando.
Conectando con Claude
Uso de la CLI de Claude Code
Uso de Claude Desktop
Cree un archivo de configuración claude_desktop_config.json
:
Reemplace las rutas y los valores de configuración con sus valores reales:
- Utilice la ruta completa al ejecutable uv (encuéntrelo con
which uv
en macOS/Linux owhere uv
en Windows) - Establezca la ruta de directorio correcta para su instalación de argocd-mcp
- Agregue su token API de ArgoCD
- Configurar otras variables de entorno según sea necesario
Esta configuración le dice a Claude Desktop cómo iniciar el servidor MCP automáticamente con su configuración de entorno específica.
Herramientas disponibles
Herramientas de sesión
get_user_info
: obtiene la información del usuario actual a través de api/v1/session/userinfo
Herramientas de configuración
get_settings
: obtiene la configuración del servidor ArgoCD, incluida la interfaz de usuario, OIDC y otras configuracionesget_plugins
: obtiene información sobre los complementos de ArgoCD configurados
Herramientas de versión
get_version
: Obtener información de la versión del servidor API
Herramientas de gestión de aplicaciones
list_applications
: Obtener todas las aplicaciones con opciones de filtradoget_application_details
: Obtenga información detallada sobre una aplicación específicacreate_application
: Crea una nueva aplicaciónupdate_application
: Actualizar una aplicación existentedelete_application
: Eliminar una aplicaciónsync_application
: activa una operación de sincronización en una aplicación
Conversaciones de ejemplo
Comprobación de la información del usuario
Obtener la versión de ArgoCD
Obtener la configuración de ArgoCD
Administrar aplicaciones
Desarrollo
Requisitos
- Python 3.12+
- MCP (incluye FastMCP y herramientas de desarrollo)
- Gestor de paquetes uv (recomendado) o pip
- Token de API de ArgoCD
Comprobación de tipos
Este proyecto utiliza mypy para la verificación de tipos estáticos para mejorar la calidad del código y detectar errores relacionados con los tipos de forma temprana:
La configuración de verificación de tipos está disponible tanto en pyproject.toml
como mypy.ini
. Esta configuración aplica reglas de tipado estrictas, incluyendo:
- No permitir definiciones sin tipo
- Advertencia sobre la devolución de cualquier tipo
- Comprobación de la integridad de las definiciones de funciones
- Compatibilidad con paquetes de espacios de nombres
- Configuraciones específicas del módulo
Estructura del proyecto
El código está organizado en una estructura modular:
Ampliación del servidor
Para agregar nuevas funciones:
- Agregue nuevas herramientas al módulo apropiado en el directorio
tools
- Registrar nuevas herramientas en
server.py
- Siga los patrones existentes para la validación de parámetros y el manejo de errores.
- Actualizar la documentación en README.md
- Agregar pruebas para nuevas funcionalidades
Solución de problemas
Si encuentra problemas:
- Comprobar los registros del servidor (el registro de información está habilitado de forma predeterminada)
- Tenga en cuenta que
Processing request of type CallToolRequest
es informativa, no un error. - Si usa
mcp dev server.py
, el Inspector MCP se abrirá automáticamente en http://localhost:5173 para depuración - Utilice los registros del servidor para depurar llamadas y respuestas de API
- Para problemas de certificados SSL con certificados autofirmados:
- Compruebe si todas las variables de entorno necesarias están configuradas correctamente:
Contribuyendo
¡Agradecemos sus contribuciones! Si desea contribuir a este proyecto, abra un problema o una solicitud de incorporación de cambios.
Al contribuir, siga estas pautas:
- Asegúrese de que todo el código incluya sugerencias de tipo adecuadas
- Ejecute la comprobación de tipos de mypy antes de enviar solicitudes de solicitud
- Agregar pruebas para nuevas funcionalidades
- Actualizar la documentación para cualquier característica o cambio nuevo
This server cannot be installed
Un servidor MCP (Protocolo de contexto de modelo) que se integra con la API de ArgoCD, lo que permite que los asistentes de IA y los modelos de lenguaje grandes administren aplicaciones y recursos de ArgoCD a través de interacciones de lenguaje natural.