Prometheus Mcp Server — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited Prometheus Mcp Server (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
Give AI assistants the power to query your Prometheus metrics.
A [Model Context Protocol][mcp] (MCP) server that provides access to your Prometheus metrics and queries through standardized MCP interfaces, allowing AI assistants to execute PromQL queries and analyze your metrics data.
[mcp]: https://modelcontextprotocol.io
<details> <summary><b>Claude Desktop</b></summary>
Add to your Claude Desktop configuration:
{
"mcpServers": {
"prometheus": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"PROMETHEUS_URL",
"ghcr.io/pab1it0/prometheus-mcp-server:latest"
],
"env": {
"PROMETHEUS_URL": "<your-prometheus-url>"
}
}
}
}</details>
<details> <summary><b>Claude Code</b></summary>
Install via the Claude Code CLI:
claude mcp add prometheus --env PROMETHEUS_URL=http://your-prometheus:9090 -- docker run -i --rm -e PROMETHEUS_URL ghcr.io/pab1it0/prometheus-mcp-server:latest</details>
<details> <summary><b>VS Code / Cursor / Windsurf</b></summary>
Add to your MCP settings in the respective IDE:
{
"prometheus": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"PROMETHEUS_URL",
"ghcr.io/pab1it0/prometheus-mcp-server:latest"
],
"env": {
"PROMETHEUS_URL": "<your-prometheus-url>"
}
}
}</details>
<details> <summary><b>Docker Desktop</b></summary>
The easiest way to run the Prometheus MCP server is through Docker Desktop:
<a href="https://hub.docker.com/open-desktop?url=https://open.docker.com/dashboard/mcp/servers/id/prometheus/config?enable=true"> <img src="https://img.shields.io/badge/+%20Add%20to-Docker%20Desktop-2496ED?style=for-the-badge&logo=docker&logoColor=white" alt="Add to Docker Desktop" /> </a>
</details>
<details> <summary><b>Manual Docker Setup</b></summary>
Run directly with Docker:
# With environment variables
docker run -i --rm \
-e PROMETHEUS_URL="http://your-prometheus:9090" \
ghcr.io/pab1it0/prometheus-mcp-server:latest
# With authentication
docker run -i --rm \
-e PROMETHEUS_URL="http://your-prometheus:9090" \
-e PROMETHEUS_USERNAME="admin" \
-e PROMETHEUS_PASSWORD="password" \
ghcr.io/pab1it0/prometheus-mcp-server:latest</details>
<details> <summary><b>Helm Chart (Kubernetes)</b></summary>
Deploy to Kubernetes using the Helm chart from the OCI registry:
helm install prometheus-mcp-server \
oci://ghcr.io/pab1it0/charts/prometheus-mcp-server \
--version 1.0.0 \
--set prometheus.url="http://prometheus:9090"With authentication:
helm install prometheus-mcp-server \
oci://ghcr.io/pab1it0/charts/prometheus-mcp-server \
--version 1.0.0 \
--set prometheus.url="http://prometheus:9090" \
--set auth.username="admin" \
--set auth.password="secret"With a custom values file:
helm install prometheus-mcp-server \
oci://ghcr.io/pab1it0/charts/prometheus-mcp-server \
--version 1.0.0 \
-f values.yamlSee the chart values for all available configuration options. </details>
| Variable | Description | Required |
|---|---|---|
PROMETHEUS_URL | URL of your Prometheus server | Yes |
PROMETHEUS_URL_SSL_VERIFY | Set to False to disable SSL verification | No |
PROMETHEUS_DISABLE_LINKS | Set to True to disable Prometheus UI links in query results (saves context tokens) | No |
PROMETHEUS_REQUEST_TIMEOUT | Request timeout in seconds to prevent hanging requests (DDoS protection) | No (default: 30) |
PROMETHEUS_USERNAME | Username for basic authentication | No |
PROMETHEUS_PASSWORD | Password for basic authentication | No |
PROMETHEUS_TOKEN | Bearer token for authentication | No |
PROMETHEUS_CLIENT_CERT | Path to client certificate file for mutual TLS authentication | No |
PROMETHEUS_CLIENT_KEY | Path to client private key file for mutual TLS authentication | No |
REQUESTS_CA_BUNDLE | Path to CA bundle file for verifying the server's TLS certificate (standard requests library env var) | No |
ORG_ID | Organization ID for multi-tenant setups | No |
PROMETHEUS_MCP_SERVER_TRANSPORT | Transport mode (stdio, http, sse) | No (default: stdio) |
PROMETHEUS_MCP_BIND_HOST | Host for HTTP transport | No (default: 127.0.0.1) |
PROMETHEUS_MCP_BIND_PORT | Port for HTTP transport | No (default: 8080) |
PROMETHEUS_MCP_STATELESS_HTTP | Enable stateless HTTP mode for multi-replica support | No (default: False) |
PROMETHEUS_CUSTOM_HEADERS | Custom headers as JSON string | No |
TOOL_PREFIX | Prefix for all tool names (e.g., staging results in staging_execute_query). Useful for running multiple instances targeting different environments in Cursor | No |
| Tool | Category | Description |
|---|---|---|
health_check | System | Health check endpoint for container monitoring and status verification |
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 with pagination and filtering support |
get_metric_metadata | Discovery | Get metadata for one metric or bulk metadata with optional filtering |
get_targets | Discovery | Get information about all scrape targets |
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.
Contributions are welcome! Please see our Contributing Guide for detailed information on how to get started, coding standards, and the pull request process.
This project uses uv to manage dependencies. Install uv following the instructions for your platform:
curl -LsSf https://astral.sh/uv/install.sh | shYou 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 .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-missingWhen adding new features, please also add corresponding tests.
MIT
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.