Integrates with Prometheus Alertmanager to retrieve and filter alerts, manage silences (create, list, delete), get alert details by fingerprint, and retrieve alert groups as organized by Alertmanager.
Prometheus Alertmanager MCP Server
This project implements a Model Context Protocol (MCP) server that integrates with Prometheus Alertmanager. It serves as a bridge between Claude AI and Alertmanager, allowing Claude to interact with and manage alerts through a standardized interface.
Core Features
Alert Retrieval: Fetches and formats current alerts from Alertmanager with optional filtering capabilities.
Alert Details: Provides detailed information about specific alerts when referenced by their fingerprint.
Silence Management: Offers tools to create, list, and delete silences that suppress notifications for specific alerts.
Alert Grouping: Retrieves alert groups as organized by Alertmanager.
Technical Implementation
Built using TypeScript and the MCP SDK
Communicates with Alertmanager's HTTP API (v2)
Runs as a stdio-based process compatible with Claude for Desktop
Implements proper error handling and timeout management
Provides strongly-typed interfaces for alert and silence data
Installation
Installing via Smithery
To install Prometheus Alertmanager Integration Server for Claude Desktop automatically via Smithery:
Prerequisites
Access to a running Prometheus Alertmanager instance
For Claude for Desktop: Node.js (v18 or newer) installed on your system
Setup
The package is available on npm and can be used directly with npx:
For global installation:
Usage with Claude for Desktop
Configure Claude for Desktop to use the MCP server by editing the configuration file:
Restart Claude for Desktop to load the new configuration.
You can now ask Claude to interact with Alertmanager using natural language:
"Show me current alerts"
"Filter alerts related to CPU issues"
"Get details for this alert"
"Create a silence for this alert for the next 2 hours"
Available Tools
get-alerts
Retrieves a list of alerts with optional filtering.
Parameters:
filter: (optional) Filtering query (e.g.,alertname=~'.*CPU.*')silenced: (optional) Include silenced alertsinhibited: (optional) Include inhibited alertsactive: (optional) Include active alerts (default: true)
get-alert-details
Gets detailed information about a specific alert.
Parameters:
fingerprint: Alert fingerprint
create-silence
Creates a silence for alerts matching specified criteria.
Parameters:
matchers: List of matchers for alertsstartsAt: (optional) Silence start time (ISO8601 format, default is current time)endsAt: Silence end time (ISO8601 format)createdBy: Username who created the silencecomment: Reason or explanation for the silence
get-silences
Retrieves a list of silences with optional filtering.
Parameters:
filter: (optional) Filtering query (e.g.,createdBy=~'.*admin.*')
delete-silence
Deletes a silence by ID.
Parameters:
silenceId: ID of the silence to delete
get-alert-groups
Gets alert groups with optional filtering.
Parameters:
active: (optional) Include active alerts (default: true)silenced: (optional) Include silenced alertsinhibited: (optional) Include inhibited alerts
Extending the Server
This MCP server can be extended with additional features such as:
Alert trend analysis
Automatic response suggestions
Integration with incident management systems
Custom dashboards for specific alert types