Servidor Prometheus Mcp
Um servidor de Protocolo de Contexto de Modelo (MCP) que permite que assistentes de IA consultem e analisem métricas do Prometheus através de interfaces padronizadas.
Visão geral
O que é o Servidor MCP do Prometheus?
O ### Servidor MCP do Prometheus é um servidor do Protocolo de Contexto de Modelo (MCP) projetado para facilitar assistentes de IA na consulta e análise de métricas do Prometheus através de interfaces padronizadas. Este servidor atua como uma ponte, permitindo uma interação fluida entre sistemas de IA e os ricos dados fornecidos pelo Prometheus, uma poderosa ferramenta de monitoramento e alerta amplamente utilizada em ambientes nativos de nuvem.
Recursos do Servidor MCP do Prometheus
- Interfaces Padronizadas: O servidor fornece um conjunto de APIs padronizadas que permitem que assistentes de IA acessem e manipulem facilmente as métricas do Prometheus.
- Acesso a Dados em Tempo Real: Os usuários podem consultar métricas em tempo real, permitindo insights imediatos e tomada de decisões.
- Amigável para Integração: Projetado para se integrar suavemente com sistemas de IA existentes e configurações do Prometheus, melhorando a funcionalidade geral sem exigir mudanças extensivas.
- Código Aberto: Sendo um repositório público, incentiva contribuições e melhorias da comunidade, promovendo um ambiente de desenvolvimento colaborativo.
- Escalabilidade: A arquitetura suporta escalabilidade, tornando-a adequada para implantações pequenas e grandes.
Como Usar o Servidor MCP do Prometheus
- Instalação: Clone o repositório do GitHub e siga as instruções de instalação fornecidas na documentação.
- Configuração: Configure o servidor ajustando os parâmetros necessários para se conectar à sua instância do Prometheus.
- Acesso à API: Utilize as APIs fornecidas para enviar consultas do seu assistente de IA para o Servidor MCP do Prometheus.
- Análise de Dados: Analise as métricas retornadas e integre-as em seus fluxos de trabalho de IA para aprimorar as capacidades de tomada de decisão.
- Suporte da Comunidade: Engaje-se com a comunidade para suporte, solicitações de recursos e contribuições para o projeto.
Perguntas Frequentes
Qual é o propósito do Servidor MCP do Prometheus?
O principal propósito do Servidor MCP do Prometheus é permitir que assistentes de IA consultem e analisem métricas do Prometheus através de interfaces padronizadas, aprimorando as capacidades da IA em ambientes orientados a dados.
O Servidor MCP do Prometheus é de código aberto?
Sim, o Servidor MCP do Prometheus é um projeto de código aberto, permitindo que os usuários contribuam para seu desenvolvimento e melhoria.
Como posso contribuir para o Servidor MCP do Prometheus?
Você pode contribuir fazendo um fork do repositório, realizando melhorias e enviando pull requests. Além disso, você pode relatar problemas ou sugerir recursos através da página de problemas do GitHub.
Quais são os requisitos do sistema para executar o Servidor MCP do Prometheus?
O servidor requer um ambiente compatível com acesso a uma instância do Prometheus. Requisitos específicos podem ser encontrados na documentação dentro do repositório.
Posso usar o Servidor MCP do Prometheus com outras ferramentas de monitoramento?
Embora seja projetado principalmente para o Prometheus, a arquitetura permite uma possível integração com outras ferramentas de monitoramento, dependendo do caso de uso e requisitos específicos.
Detalhe
Prometheus MCP Server
A Model Context Protocol (MCP) server for Prometheus.
This provides access to your Prometheus metrics and queries through standardized MCP interfaces, allowing AI assistants to execute PromQL queries and analyze your metrics data.
<a href="https://glama.ai/mcp/servers/@pab1it0/prometheus-mcp-server"> <img width="380" height="200" src="https://glama.ai/mcp/servers/@pab1it0/prometheus-mcp-server/badge" alt="Prometheus Server MCP server" /> </a>Features
-
Execute PromQL queries against Prometheus
-
Discover and explore metrics
- List available metrics
- Get metadata for specific metrics
- View instant query results
- View range query results with different step intervals
-
Authentication support
- Basic auth from environment variables
- Bearer token auth from environment variables
-
Docker containerization support
-
Provide interactive tools for AI assistants
The list of tools is configurable, so you can choose which tools you want to make available to the MCP client. This is useful if you don't use certain functionality or if you don't want to take up too much of the context window.
Usage
-
Ensure your Prometheus server is accessible from the environment where you'll run this MCP server.
-
Configure the environment variables for your Prometheus server, either through a
.env
file or system environment variables:
### Required: Prometheus configuration
PROMETHEUS_URL=http://your-prometheus-server:9090
### Optional: Authentication credentials (if needed)
### Choose one of the following authentication methods if required:
### For basic auth
PROMETHEUS_USERNAME=your_username
PROMETHEUS_PASSWORD=your_password
### For bearer token auth
PROMETHEUS_TOKEN=your_token
### Optional: For multi-tenant setups like Cortex, Mimir or Thanos
ORG_ID=your_organization_id
- Add the server configuration to your client configuration file. For example, for Claude Desktop:
{
"mcpServers": {
"prometheus": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"PROMETHEUS_URL",
"ghcr.io/pab1it0/prometheus-mcp-server:latest"
],
"env": {
"PROMETHEUS_URL": "<url>"
}
}
}
}
Development
Contributions are welcome! Please open an issue or submit a pull request if you have any suggestions or improvements.
This project uses uv
to manage dependencies. Install uv
following the instructions for your platform:
curl -LsSf https://astral.sh/uv/install.sh | sh
You can then create a virtual environment and install the dependencies with:
uv venv
source .venv/bin/activate # On Unix/macOS
.venv\Scripts\activate # On Windows
uv pip install -e .
Project Structure
The project has been organized with a src
directory structure:
prometheus-mcp-server/
├── src/
│ └── prometheus_mcp_server/
│ ├── __init__.py # Package initialization
│ ├── server.py # MCP server implementation
│ ├── main.py # Main application logic
├── Dockerfile # Docker configuration
├── docker-compose.yml # Docker Compose configuration
├── .dockerignore # Docker ignore file
├── pyproject.toml # Project configuration
└── README.md # This file
Testing
The project includes a comprehensive test suite that ensures functionality and helps prevent regressions.
Run the tests with pytest:
### Install development dependencies
uv pip install -e ".[dev]"
### Run the tests
pytest
### Run with coverage report
pytest --cov=src --cov-report=term-missing
Tests are organized into:
- Configuration validation tests
- Server functionality tests
- Error handling tests
- Main application tests
When adding new features, please also add corresponding tests.
Tools
| Tool | Category | Description |
| | | |
| execute_query
| Query | Execute a PromQL instant query against Prometheus |
| execute_range_query
| Query | Execute a PromQL range query with start time, end time, and step interval |
| list_metrics
| Discovery | List all available metrics in Prometheus |
| get_metric_metadata
| Discovery | Get metadata for a specific metric |
| get_targets
| Discovery | Get information about all scrape targets |
License
MIT
Configuração do Servidor
{
"mcpServers": {
"prometheus-mcp-server": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"ghcr.io/metorial/mcp-container--pab1it0--prometheus-mcp-server--prometheus-mcp-server",
"prometheus-mcp-server"
],
"env": {
"PROMETHEUS_URL": "prometheus-url",
"PROMETHEUS_USERNAME": "prometheus-username",
"PROMETHEUS_PASSWORD": "prometheus-password"
}
}
}
}