Skip to main content
Glama
pab1it0

Prometheus MCP Server

Prometheus MCP Server

GitHub Container Registry Helm Chart GitHub Release Codecov Python License

Give AI assistants the power to query your Prometheus metrics.

A (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.

Getting Started

Prerequisites

  • Prometheus server accessible from your environment

  • MCP-compatible client (Claude Desktop, VS Code, Cursor, Windsurf, etc.)

Installation Methods

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>"
      }
    }
  }
}

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

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>"
    }
  }
}

The easiest way to run the Prometheus MCP server is through Docker Desktop:

  1. Via MCP Catalog: Visit the Prometheus MCP Server on Docker Hub and click the button above

  2. Via MCP Toolkit: Use Docker Desktop's MCP Toolkit extension to discover and install the server

  3. Configure your connection using environment variables (see Configuration Options below)

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

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.yaml

See the chart values for all available configuration options.

Configuration Options

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_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

Related MCP server: Prometheus MCP Server

Available Tools

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.

Features

  • Execute PromQL queries against Prometheus

  • Discover and explore metrics

    • List available metrics

    • Get metadata for specific metrics

    • Search metric metadata by name or description in a single call

    • 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

Development

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 | 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 .

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

When adding new features, please also add corresponding tests.

License

MIT


Appeared in Searches

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/pab1it0/prometheus-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server