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 access to Prometheus metrics and queries, allowing execution of PromQL queries, metrics discovery and exploration, viewing instant and range query results, and retrieving target information from a Prometheus server.
Servidor MCP Prometheus
Un servidor de Protocolo de Contexto Modelo (MCP) para Prometheus.
Esto proporciona acceso a sus métricas y consultas de Prometheus a través de interfaces MCP estandarizadas, lo que permite que los asistentes de IA ejecuten consultas PromQL y analicen sus datos de métricas.
Características
- [x] Ejecutar consultas PromQL contra Prometheus
- [x] Descubra y explore métricas
- [x] Lista de métricas disponibles
- [x] Obtener metadatos para métricas específicas
- [x] Ver resultados de consultas instantáneas
- [x] Ver resultados de consultas de rango con diferentes intervalos de pasos
- [x] Soporte de autenticación
- [x] Autenticación básica desde variables de entorno
- [x] Autorización del token portador desde variables de entorno
- [x] Compatibilidad con contenedores Docker
- [x] Proporcionar herramientas interactivas para asistentes de IA
La lista de herramientas es configurable, por lo que puede elegir qué herramientas quiere que estén disponibles para el cliente MCP. Esto resulta útil si no utiliza ciertas funciones o si no desea ocupar demasiado espacio en la ventana de contexto.
Uso
- Asegúrese de que su servidor Prometheus sea accesible desde el entorno donde ejecutará este servidor MCP.
- Configure las variables de entorno para su servidor Prometheus, ya sea a través de un archivo
.env
o variables de entorno del sistema:
- Agregue la configuración del servidor al archivo de configuración del cliente. Por ejemplo, para Claude Desktop:
Nota: si ve
Error: spawn uv ENOENT
en Claude Desktop, es posible que deba especificar la ruta completa auv
o establecer la variable de entornoNO_UV=1
en la configuración.
Uso de Docker
Este proyecto incluye soporte para Docker para una fácil implementación y aislamiento.
Construyendo la imagen de Docker
Construya la imagen de Docker usando:
Ejecutando con Docker
Puedes ejecutar el servidor usando Docker de varias maneras:
Usando docker run directamente:
Usando docker-compose:
Cree un archivo .env
con sus credenciales de Prometheus y luego ejecute:
Ejecutar con Docker en Claude Desktop
Para utilizar el servidor en contenedores con Claude Desktop, actualice la configuración para usar Docker con las variables de entorno:
Esta configuración pasa las variables de entorno de Claude Desktop al contenedor Docker utilizando el indicador -e
con solo el nombre de la variable y proporcionando los valores reales en el objeto env
.
Nota sobre la implementación de Docker : La configuración de Docker se ha actualizado para que coincida con la estructura del proyecto chess-mcp, que ha demostrado funcionar correctamente con Claude. La nueva implementación utiliza un proceso de compilación multietapa y ejecuta el script de punto de entrada directamente sin un script de shell intermediario. Este enfoque garantiza la correcta gestión de la entrada estándar (stdin) y la salida estándar (stdout) para la comunicación MCP.
Desarrollo
¡Agradecemos sus contribuciones! Abra un problema o envíe una solicitud de incorporación de cambios si tiene alguna sugerencia o mejora.
Este proyecto utiliza uv
para gestionar las dependencias. Instale uv
siguiendo las instrucciones para su plataforma:
Luego puede crear un entorno virtual e instalar las dependencias con:
Estructura del proyecto
El proyecto se ha organizado con una estructura de directorio src
:
Pruebas
El proyecto incluye un conjunto de pruebas integral que garantiza la funcionalidad y ayuda a prevenir regresiones.
Ejecute las pruebas con pytest:
Las pruebas se organizan en:
- Pruebas de validación de configuración
- Pruebas de funcionalidad del servidor
- Pruebas de manejo de errores
- Pruebas de aplicación principales
Al agregar nuevas funciones, agregue también las pruebas correspondientes.
Herramientas
Herramienta | Categoría | Descripción |
---|---|---|
execute_query | Consulta | Ejecutar una consulta instantánea de PromQL contra Prometheus |
execute_range_query | Consulta | Ejecute una consulta de rango PromQL con hora de inicio, hora de finalización e intervalo de pasos |
list_metrics | Descubrimiento | Enumere todas las métricas disponibles en Prometheus |
get_metric_metadata | Descubrimiento | Obtener metadatos para una métrica específica |
get_targets | Descubrimiento | Obtenga información sobre todos los objetivos de scraping |
Licencia
Instituto Tecnológico de Massachusetts (MIT)
This server cannot be installed
Proporciona acceso a las métricas y consultas de Prometheus a través de interfaces de protocolo de contexto de modelo estandarizadas, lo que permite a los asistentes de IA ejecutar consultas PromQL y analizar datos de métricas.