mcp-alertmanager について
mcp-alertmanagerは、Prometheus Alertmanagerを操作するGo製MCPサーバーです。監視・プラットフォーム担当者向けに、アラートやサイレンスの管理、状態確認、調査ツールを提供し、URLまたはKubernetes経由で接続します。
主な機能
- 01アラートの絞り込みとグループ化
- 02サイレンスの作成と削除
- 03状態とレシーバーの確認
- 04アラートの調査と相関分析
活用シーン
- 01発生中または重大なアラートを確認
- 02メンテナンス中にアラートをサイレンス
- 03インシデント時に関連アラートを追跡
MCP 対応
アラート照会、サイレンス管理、状態確認、調査など12個のツールをMCPクライアントに公開します。直接API URLまたはKubernetes APIサービスプロキシで接続します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
Alertmanager MCP サーバー(Go)
Prometheus Alertmanager と連携するための Model Context Protocol(MCP) サーバーです。client-go を介した Kubernetes 接続機能を内蔵した、ネイティブ Go バイナリです。
インストール
npx
npx -y mcp-alertmanager@latest
MCP クライアントの設定
MCP クライアントの設定(VS Code、Cursor、Windsurf など)に追加します。
{
"mcpServers": {
"alertmanager": {
"command": "npx",
"args": ["-y", "mcp-alertmanager@latest"],
"env": {
"ALERTMANAGER_URL": "http://localhost:9093"
}
}
}
}
VS Code
code --add-mcp '{"name":"alertmanager","command":"npx","args":["-y","mcp-alertmanager@latest"],"env":{"ALERTMANAGER_URL":"http://localhost:9093"}}'
Kubernetes 自動接続
K8S API サービスプロキシを介して、OpenShift/Kubernetes で実行中の Alertmanager に自動接続します。client-go を介したネイティブの kubeconfig/クラスター内設定を使用します。kubectl やポートフォワーディングは不要です。
デフォルト:openshift-monitoring/alertmanager-operated:9093
{
"mcpServers": {
"alertmanager": {
"command": "npx",
"args": ["-y", "mcp-alertmanager@latest"]
}
}
}
バイナリ
GitHub Releases からダウンロードするか、ソースからビルドします。
make build
./mcp-alertmanager
設定
環境変数
| 変数 | 説明 |
|---|---|
ALERTMANAGER_URL | Alertmanager API の直接 URL(K8S 自動接続より優先) |
CLI フラグ
| フラグ | 説明 | デフォルト |
|---|---|---|
--url | Alertmanager の直接 URL | - |
--namespace | Kubernetes のネームスペース | openshift-monitoring |
--service | Kubernetes のサービス名 | alertmanager-operated |
--service-port | Kubernetes のサービスのポート | 9093 |
--service-scheme | サービスのスキーム(http/https) | https |
--kubeconfig | kubeconfig ファイルのパス | 自動検出 |
優先順位: --url / ALERTMANAGER_URL > K8S 自動接続
接続方法:
- 直接 URL(
--urlまたはALERTMANAGER_URLが設定されている場合) - K8S API プロキシ(kubeconfig またはクラスター内設定を自動検出)
ツール(12)
アラート
| ツール | 説明 |
|---|---|
getAlerts | オプションのフィルターを指定してアラートを取得 |
getAlertGroups | ルーティングラベルでグループ化されたアラートを取得 |
getCriticalAlerts | 重大度がクリティカルのアラートのみを取得 |
getAlertingSummary | 重大度別の件数、上位のアラート、ネームスペースの概要 |
サイレンス
| ツール | 説明 |
|---|---|
getSilences | 状態別にサイレンスを一覧表示 |
createSilence | アラートのサイレンスを作成 |
deleteSilence | ID を指定してサイレンスを削除 |
ステータス
| ツール | 説明 |
|---|---|
getAlertmanagerStatus | サーバーのステータス、バージョン、クラスター情報 |
getReceivers | 通知の受信先を一覧表示 |
トラブルシューティング
| ツール | 説明 |
|---|---|
investigateAlert | 特定のアラートを詳細に調査 |
getAlertHistory | アラートの履歴と分析ガイダンス |
correlateAlerts | 共通ラベルを持つ関連アラートを検索 |
プロンプトの例
"What alerts are currently firing?"
"Are there any critical alerts?"
"Give me a summary of the alerting status"
"Investigate the HighMemoryUsage alert"
"Create a 2-hour silence for PodCrashLooping"
"What receivers are configured?"
"Find correlated alerts to identify the root cause"
"Show me alert history for KubeNodeNotReady"
開発
ビルド
make build # Build for current platform
make build-all-platforms # Cross-compile for all platforms
コンテナ
podman build -f Containerfile -t mcp-alertmanager .
Kubernetes/OpenShift へのデプロイ
コンテナイメージ
コンテナイメージは GitHub Container Registry で入手できます。
ghcr.io/jeanlopezxyz/mcp-alertmanager:latest
Helm チャート
付属の Helm チャートを使用してデプロイします。
# Add the chart repository (or use local chart)
helm upgrade --install mcp-alertmanager ./charts/mcp-alertmanager \
--namespace mcp-servers \
--create-namespace \
--set openshift=true
Helm の値
| パラメーター | 説明 | デフォルト |
|---|---|---|
image.registry | コンテナレジストリ | ghcr.io |
image.repository | イメージリポジトリ | jeanlopezxyz/mcp-alertmanager |
image.version | イメージタグ | latest |
openshift | OpenShift Routes を有効化 | false |
service.port | サービスのポート | 8080 |
alertmanager.namespace | Alertmanager のネームスペース | openshift-monitoring |
alertmanager.service | Alertmanager のサービス名 | alertmanager-operated |
rbac.useClusterReader | cluster-reader ロールを使用 | true |
カスタム Alertmanager を使用した例
helm upgrade --install mcp-alertmanager ./charts/mcp-alertmanager \
--namespace mcp-servers \
--set openshift=true \
--set alertmanager.url=http://alertmanager.monitoring:9093
ライセンス
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。