MCP Prometheus Server

by drewstreib

321 downloads Not rated yet BSD-3-Clause license
GitHub

About

A sophisticated MCP server for Prometheus queries demonstrating advanced Haskell practices

Details

License
BSD-3-Clause license

Explore

- 🚀 Claude Desktop Integration - Seamless MCP protocol support
- 📊 Complete Prometheus API - Query, discover, and explore metrics
- 🔍 5 Powerful Tools - From instant queries to metric discovery
- 🛡️ Production Ready - Comprehensive error handling and logging
- 🧵 Thread Safe - Strict evaluation prevents lazy I/O hangs
- 🔧 Haskell Best Practices - Proper exception handling, no SomeException anti-patterns
- 🧪 Test Coverage - Unit and integration tests included

Setting up with Highlight

This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:

  1. Download and install Highlight from highlightai.com/download
  2. Navigate to the plugins tab and select "Add Custom Plugin"
  3. Configure the plugin with the settings below
    Plugin Name MCP Prometheus Server
    Command (node, npx, python, etc.)

    Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.

  4. Enable "Start Automatically" if you want the plugin to start when Highlight launches

From the repository

- GHC 9.12+ and Cabal 3.0+
- Or use GHCup (recommended):

curl --proto '=https' --tlsv1.2 -sSf https://get-ghcup.haskell.org | sh

Add to your Claude Desktop configuration file:

macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json
Linux: ~/.config/claude/claude_desktop_config.json

{
  "mcpServers": {
    "prometheus": {
      "command": "/path/to/mcp-prom-haskell/mcp-prometheus-server/testbin/mcp-prometheus-server",
      "args": [
        "--prometheus-url",
        "http://your-prometheus-server:9090"
      ]
    }
  }
}

Replace /path/to/ with your actual path to the repository.

- PROMETHEUS_URL - URL of your Prometheus server (default: http://your-prometheus-server:9090)

Claude Desktop / Cursor

Paste into your MCP client config file to install this server.

{
    "mcpServers": {
        "mcp prometheus server": {
            "mcp-prom-haskell": {
                "command": "docker",
                "args": [
                    "build",
                    "-t",
                    "mcp-prometheus-server",
                    "."
                ]
            }
        }
    }
}

McpServers

{
    "mcp-prom-haskell": {
        "command": "docker",
        "args": [
            "build",
            "-t",
            "mcp-prometheus-server",
            "."
        ]
    }
}

Version
License
Haskell
MCP

Overview

A production-ready Model Context Protocol (MCP) server implementation in Haskell that provides Claude Desktop with access to Prometheus metrics and queries. Built with Haskell best practices including proper exception handling, strict evaluation patterns, and comprehensive error recovery.

"The Adeon Special" - v1.0.1 incorporates advanced Haskell techniques to avoid common footguns and ensure thread-safe, robust operation.

Features

- 🚀 Claude Desktop Integration - Seamless MCP protocol support
- 📊 Complete Prometheus API - Query, discover, and explore metrics
- 🔍 5 Powerful Tools - From instant queries to metric discovery
- 🛡️ Production Ready - Comprehensive error handling and logging
- 🧵 Thread Safe - Strict evaluation prevents lazy I/O hangs
- 🔧 Haskell Best Practices - Proper exception handling, no SomeException anti-patterns
- 🧪 Test Coverage - Unit and integration tests included

Quick Start

Option 1: Use Pre-built Binary (Recommended)

1. Clone the repository:

git clone https://github.com/drewstreib/mcp-prom-haskell.git
cd mcp-prom-haskell/mcp-prometheus-server

2. Use the pre-built binary:

./testbin/mcp-prometheus-server --prometheus-url http://your-prometheus-server:9090

Option 2: Build from Source

```bash
make build

No reviews yet — be the first

Sign in to leave a review

Use Google, GitHub, or an email account so ratings stay tied to real people.

Email sign in

No reviews posted yet.