MCP

Query Prometheus Metrics with Natural Language

Prometheus MCP Server for TypeScript: Query metrics, discover data, and analyze system performance.

Works with prometheus

0
Spark score
out of 100
Updated 10 months ago
Version 1.0.0
Models

Add to Favorites

Why it matters

Integrate AI assistants with Prometheus to query system metrics, discover available data, and analyze performance using natural language prompts.

Outcomes

What it gets done

01

Execute PromQL queries for real-time and historical data analysis.

02

Discover available metrics and their metadata within your Prometheus instance.

03

Monitor scrape target health and service discovery status.

04

Analyze system performance trends and identify potential issues.

Install

Add it to your toolbox

Run in your project directory:

curl -fsSL https://spark.entire.vc/get/vb-prometheus-typescript | bash

Capabilities

Tools your agent gets

prom_query

Execute an instant PromQL query to get current metric values and alert status

prom_range

Execute a range PromQL query to analyze trends, create graphs, and access historical data

prom_discover

Discover available metrics and explore what metrics are available in your system

prom_metadata

Get metric metadata including types, descriptions, and units of measurement

prom_targets

Get scrape target information to monitor scraping health and service discovery

Overview

Prometheus (TypeScript) MCP Server

What it does

A Model Context Protocol (MCP) server that provides integration with Prometheus. This server enables AI assistants to query metrics, discover available data, and analyze system performance.

Source README

Prometheus MCP Server

npm version
License: MIT

A Model Context Protocol (MCP) server that provides seamless integration with Prometheus, enabling AI assistants to query metrics, discover available data, and analyze system performance through natural language interactions.

Features

  • Real-time Metrics Access - Query current and historical metrics data
  • Metrics Discovery - Find available metrics and monitoring targets
  • Multiple Auth Methods - Basic auth, bearer tokens, and TLS support
  • Type-safe - Full TypeScript implementation

MCP Configuration

Using npx (Recommended)

Add to your MCP client settings:

{
  "mcpServers": {
    "prometheus": {
      "command": "npx",
      "args": ["prometheus-mcp-server"],
      "env": {
        "PROMETHEUS_URL": "http://localhost:9090"
      }
    }
  }
}

Using global installation

First install the package globally:

npm install -g prometheus-mcp-server

Then configure your MCP client:

{
  "mcpServers": {
    "prometheus": {
      "command": "prometheus-mcp-server",
      "env": {
        "PROMETHEUS_URL": "http://localhost:9090"
      }
    }
  }
}

Environment Variables

# Required
PROMETHEUS_URL=http://localhost:9090

# Optional Authentication
PROMETHEUS_USERNAME=admin
PROMETHEUS_PASSWORD=password
PROMETHEUS_TOKEN=bearer-token

# Optional Connection
PROMETHEUS_TIMEOUT=10000
PROMETHEUS_INSECURE=false

Available Tools

Tool Description Use Case
prom_query Execute PromQL instant query Get current metric values, alerts status
prom_range Execute PromQL range query Analyze trends, create graphs, historical data
prom_discover Discover available metrics Explore what metrics are available in your system
prom_metadata Get metric metadata Understand metric types, descriptions, and units
prom_targets Get scrape targets info Monitor scraping health and service discovery

Example Usage

Ask your AI assistant natural language questions:

  • "What's the current CPU usage across all servers?"
  • "Show me HTTP request rates for the last 6 hours"
  • "Which services have the highest memory consumption?"
  • "Are there any failing health checks?"
  • "What metrics are available for monitoring my database?"

Development

# Run with inspector
npm run inspector

# Run directly
npm run dev

Connection Methods

1. No Authentication

export PROMETHEUS_URL=http://localhost:9090

2. Basic Authentication

export PROMETHEUS_URL=http://localhost:9090
export PROMETHEUS_USERNAME=admin
export PROMETHEUS_PASSWORD=secret

3. Bearer Token

export PROMETHEUS_URL=https://prometheus.example.com:9090
export PROMETHEUS_TOKEN=your-bearer-token

Additional Options

For self-signed certificates or development:

export PROMETHEUS_INSECURE=true

Discussion

Questions & comments · 0

Sign In Sign in to leave a comment.