Integrations
Enables monitoring and analysis of Kubernetes metrics, including the ability to query container, pod, and other Kubernetes-specific metrics collected by VictoriaMetrics.
Supports Prometheus-compatible functionality including querying with PromQL, metric relabeling rules debugging, and integration with Prometheus configuration when used as a scraper for VictoriaMetrics.
Provides access to a VictoriaMetrics monitoring system, enabling querying metrics, exploring data, analyzing alerts/rules, viewing instance parameters, exploring data cardinality, analyzing queries, and debugging relabeling rules and retention configurations.
VictoriaMetrics MCP サーバー
VictoriaMetrics用のモデルコンテキストプロトコル (MCP)サーバーの実装。
これにより、VictoriaMetricsインスタンスへのアクセスと、 VictoriaMetrics APIおよびドキュメントとのシームレスな統合が可能になります。VictoriaMetricsインスタンスに関連する監視、可観測性、デバッグタスクのための包括的なインターフェースを提供し、エンジニアやツールのための高度な自動化とインタラクション機能を実現します。
特徴
この MCP サーバーを使用すると、VictoriaMetrics のほぼすべての読み取り専用 API、つまりVMUIで使用可能なすべての機能を使用できます。
- メトリクスのクエリとデータの探索(クライアントがサポートしている場合はグラフの描画も可能)
- 利用可能なメトリック、ラベル、ラベル値、およびシリーズ全体の一覧表示とエクスポート
- アラートと記録ルールとアラートの分析
- VictoriaMetricsインスタンスのパラメータを表示しています
- データのカーディナリティとメトリクスの使用統計を調べる
- クエリの分析
- 再ラベル付けルール、ダウンサンプリング、保持ポリシー設定のデバッグ
さらに、MCP サーバーには最新のドキュメントが埋め込まれており、オンライン アクセスなしで検索できます。
使用可能なツールとプロンプトの詳細については、 「使用方法」セクションを参照してください。
ツールの機能やドキュメント検索機能をプロンプトに組み合わせることで、VictoriaMetricsインスタンスの優れた活用シナリオを構築できます。ダイアログサンプルのセクションで動作例をご確認ください。MCPサーバーとそのレスポンスの品質は、クライアントの能力と使用するモデルの品質に大きく依存することにご注意ください。
MCP サーバーを他の可観測性またはドキュメント検索関連の MCP サーバーと組み合わせて、さらに強力な結果を得ることもできます。
要件
- VictoriaMetricsインスタンス (単一ノードまたはクラスター)
- Go 1.24以上(ソースからビルドする場合)
インストール
行く
ソースコード
バイナリ
リリースページから最新リリースをダウンロードし、PATH に配置するだけです。
ドッカー
近日公開...
構成
VictoriaMetrics の MCP サーバーは、環境変数を介して構成されます。
変数 | 説明 | 必須 | デフォルト | 許容値 |
---|---|---|---|---|
VM_INSTANCE_ENTRYPOINT | VictoriaMetricsインスタンスへのURL | はい | - | - |
VM_INSTANCE_TYPE | VictoriaMetricsインスタンスの種類 | はい | - | single 、 cluster |
VM_INSTANCE_BEARER_TOKEN | VictoriaMetrics API の認証トークン | いいえ | - | - |
MCP_SERVER_MODE | サーバーの動作モード | いいえ | stdio | stdio 、 sse |
MCP_SSE_ADDR | SSEサーバがリッスンするアドレス | いいえ | localhost:8080 | - |
設定例
クライアントでの設定
カーソル
Settings
-> Cursor Settings
-> MCP
-> Add new global MCP server
に移動し、次の構成をカーソルの~/.cursor/mcp.json
ファイルに貼り付けます。
詳細については、カーソル MCP のドキュメントを参照してください。
クロードデスクトップ
これを Claude Desktop のclaude_desktop_config.json
ファイルに追加します ( Settings
-> Developer
-> Edit config
を開くと見つかります)。
詳細については、 Claude Desktop MCP のドキュメントを参照してください。
クロード・コード
次のコマンドを実行します。
詳細については、 Claude Code MCP のドキュメントを参照してください。
ビジュアルスタジオコード
VS Code MCP 構成ファイルに以下を追加します。
詳細については、 VS Code MCP ドキュメントを参照してください。
ゼッド
Zed 構成ファイルに次の内容を追加します。
詳細については、 Zed MCP のドキュメントを参照してください。
JetBrains IDE
Settings
->Tools
->AI Assistant
->Model Context Protocol (MCP)
を開きます。Add (+)
クリックAs JSON
選択- 入力フィールドに次の内容を入力します。
ウィンドサーフィン
Windsurf MCP 構成ファイルに以下を追加します。
詳細については、 Windsurf MCP のドキュメントを参照してください。
アマゾンの岩盤
近日公開....
バイナリの代わりにDockerを使用する
近日公開...
使用法
MCP サーバーをインストールして構成したら、お気に入りの MCP クライアントで使用を開始できます。
次のフレーズから AI アシスタントとの対話を開始できます。
しかし、必須ではありません。質問を始めるだけで、アシスタントが自動的にツールとドキュメントを活用して最適な回答を提供します。ダイアログの例のセクションをご覧いただくと、何ができるかをより深く理解できます。
ツールセット
MCP VictoriaMetrics は、VictoriaMetrics インスタンスと対話するためのさまざまなツールを提供します。
利用可能なツールのリストは次のとおりです。
道具 | 説明 |
---|---|
query | 即時PromQL/MetricsQLクエリを実行する |
query_range | 一定期間にわたる範囲の PromQL/MetricsQL クエリを実行する |
metrics | 利用可能な指標の一覧 |
labels | 利用可能なラベル名を一覧表示する |
label_values | 特定のラベルの値を一覧表示する |
series | 利用可能な時系列を一覧表示する |
export | 生の時系列データをJSONまたはCSVにエクスポートする |
rules | アラートと記録ルールを表示する |
alerts | 現在のアラート(発動中および保留中)を表示する |
flags | VictoriaMetricsインスタンスのデフォルト以外のフラグを表示する |
metric_statistics | メトリクスの使用状況(クエリ内)の統計情報を取得する |
active_queries | 現在実行中のクエリを表示する |
top_queries | 最も頻繁なクエリや最も遅いクエリを表示する |
tsdb_status | TSDB カーディナリティ統計を表示する |
tenants | マルチテナント クラスタ セットアップで利用可能なテナントを一覧表示する |
documentation | 埋め込まれたVictoriaMetricsドキュメントを検索 |
metric_relabel_debug | Prometheus互換の再ラベル付けルールをデバッグする |
downsampling_filters_debug | ダウンサンプリング構成のデバッグ |
retention_filters_debug | 保持フィルタの設定をデバッグする |
プロンプト
サーバーには、一般的なタスク用の事前定義されたプロンプトが含まれています。
これらは現時点では単なる例であり、プロンプト ライブラリは将来追加される予定です。
プロンプト | 説明 |
---|---|
unused_metrics | クエリが実行されないメトリクスを見つけて、それらの取り込みを停止するための再ラベル設定を作成します。 |
documentation | VictoriaMetricsのドキュメントで特定のトピックを検索 |
rarely_used_metrics_with_high_cardinality | ほとんどクエリされない高カーディナリティの指標を特定する |
ダウンサンプリングはVictoriaMetricsのエンタープライズ機能です。ライセンスファイルの設定を確認したところ、現在のライセンスではダウンサンプリングをご利用いただけます。
ダイアログの例
これは、MCP サーバーを使用したアシスタントとのダイアログの単なる例であり、それがどのように機能するかを理解する上で役立ちます (ただし、これは Victoria Metrics MCP サーバーを Claude Desktop と共に使用し、パブリック プレイグラウンド インスタンスに構成された実際のダイアログです)。
あなた: 私の VM ではどのようなテナントが利用できますか?
アシスタント VictoriaMetrics インスタンスでは、次のテナントが利用可能です
0:0
(デフォルト テナント)、1:0
10:0
100:0
あなた: 今後はデフォルトのテナントのみを使用してください
アシスタント:了解しました。今後は、VictoriaMetricsインスタンスのすべての操作にデフォルトのテナント(0:0)のみを使用します。
あなた: どのような指標がありますか?
アシスタント: VictoriaMetricsインスタンスでは、多くのメトリクスが利用可能です。リストには、以下のような様々なシステムやコンポーネントからのメトリクスが含まれています。
- システムメトリック(
node_
、machine_
など) - Kubernetes メトリクス (
kube_
、container_
、apiserver_
など) - VictoriaMetrics固有のメトリック(
vm_
、vmagent_
、vmalert_
など) - Goランタイムメトリクス(
go_
) - Prometheus関連のメトリクス(
scrape_
、promhttp_
)、 - さまざまなアプリケーション メトリック (
argocd_
、alertmanager_
)。
これは、クエリ可能な2,000以上の指標を網羅したリストです。さらに詳しく調べたい指標の種類はありますか?
- システムメトリック(
あなた: では、これからKubernetesのメトリクスを使ってみましょう。これらのメトリクスのうち、クエリが実行されていないものはどれですか?
アシスタント:結果に基づいて、クエリされたことがない Kubernetes メトリックが 2 つあることがわかります (クエリ数は 0)。
kube_persistentvolumeclaim_deletion_timestamp
- このメトリックは、PersistentVolumeClaims が削除対象としてマークされた時期に関する情報を提供します。kube_pod_init_container_status_last_terminated_reason
- このメトリックは、ポッド内の init コンテナが最後に終了した理由を示します。
これらのメトリックは、監視やトラブルシューティングに役立つ可能性があります。
- PVC 削除タイムスタンプ メトリックは、削除パターンを追跡したり、スタックされた PVC を識別したりするのに役立ちます。
- 初期化コンテナの終了理由メトリックは、初期化コンテナの一般的な障害パターンを識別するのに役立ちます。
これらのメトリックが追跡する内容についてさらに詳しく説明したり、監視を開始するための便利なクエリを提案したりしますか?
あなた: はい、お願いします。また、これらのメトリクスの取り込みを停止するための再ラベル付けルールを作成していただけますか?
アシスタント:これらのクエリされていないメトリクスを収集から除外するための再ラベル設定を作成します。これにより、ストレージと処理のオーバーヘッドを削減できます。VictoriaMetricsのスクレイピング設定に追加できる再ラベル設定は次のとおりです。
Copyこの構成では次のようになります。
- 各メトリックの名前(
__name__
ラベル)を確認します。 - 指定されたメトリックのいずれかに一致するかどうかを確認します
- 一致するメトリックを削除し、収集および保存されないようにします。
VictoriaMetricsの設定ファイルに追加するか、PrometheusをVictoriaMetricsのスクレイパーとして使用している場合は、Prometheus設定内の関連するスクレイピングジョブ設定に追加してください。 この再ラベル設定を実装前にテストしたい場合は、メトリック再ラベルデバッグツールを使用して、メトリックにどのような影響があるかを確認できます。
- 各メトリックの名前(
あなた: はい、このラベル変更構成をリアルタイムシリーズでデバッグして、それが私のメトリクスにどのような影響を与えるかを確認してください。
アシスタント:完璧です! ラベル変更の設定は期待通りに動作しました:
- 最初の 2 つのテスト ケースでは、
kube_persistentvolumeclaim_deletion_timestamp
とkube_pod_init_container_status_last_terminated_reason
両方のメトリックが正しくドロップされていることがわかります (結果のラベルは空の{}
になります)。 - 3 番目のテスト ケースでは、
kube_pod_status_phase
などの他のメトリックが保持され、ドロップ ルールの影響を受けないことを確認します。
VictoriaMetricsまたはPrometheusの設定にこの再ラベル設定を追加することで、これらの未使用のメトリクスの収集を停止できます。これにより、現在の監視機能に影響を与えることなく、ストレージ容量を節約し、処理オーバーヘッドを削減できます。
- 最初の 2 つのテスト ケースでは、
あなた: しかし、私は VictoriaMetrics オペレーターの vmagent リソースを使用しているので、この再ラベル構成を使用したエージェントの仕様の一部を教えていただけますか?
アシスタント:おっしゃる通りです。VictoriaMetrics Operator と VMAgent カスタムリソースをご利用なので、設定は CR に適した形式である必要があります。VMAgent 仕様に relabel 設定を追加する手順は以下のとおりです。
Copy要点:
- VMAgent仕様では、インライン再ラベル付けルールに
inlineRelabelConfig
を使用します。 - このフィールドは
sourceLabels
と呼ばれます(Prometheus設定のsource_labels
ではありません)。 - これは、保存される前にすべての指標に適用されるグローバルな再ラベル付けです。
- VMAgent仕様では、インライン再ラベル付けルールに
あなた: これらのメトリックは削除せず、ダウンサンプリングを使ってサンプルレートを下げることにしました。ダウンサンプリングのパラメータは今どうなっていますか?
アシスタント:現在、ダウンサンプリング構成は次のようになっています。
Copyこれはつまり:
- 7日以上経過したデータは元の解像度で保存されます
- 7~30日前のデータは1分単位の解像度にダウンサンプリングされます
- 30~180日前のデータは5分単位の解像度にダウンサンプリングされます
- 180日以上前のデータは30分単位にダウンサンプリングされます
クエリ頻度の低い指標に特定のダウンサンプリングルールを追加したい場合は、ダウンサンプリングフィルターのデバッグツールを使用して、新しいルールの動作をテストできます。これらの特定の指標に、より積極的なダウンサンプリングを適用する設定をテストしてみましょう。
...シリーズを取得し、ダウンサンプリング フィルター デバッガーを使用しています...
素晴らしい!これでテストは正常に動作しています。現在の設定とテスト結果に基づき、VMAgent CR の推奨ダウンサンプリング設定を以下に示します。この設定では、クエリ頻度の低いメトリクスに対して、より積極的なダウンサンプリングが適用されます。
Copyこの構成:
- わずか 1 日後に、ほとんどクエリされないメトリクスに対して 10 分解像度のダウンサンプリングを適用します - 他のすべてのメトリクスに対しては、既存のダウンサンプリング ポリシーを維持します
ダウンサンプリング ルールの順序は重要です。より具体的なルールを最初にリストする必要があります。
このダイアログ中、アシスタントは次のツールを使用していました。
- 利用可能なテナントのリストを取得するには、
tenants
使用します。 - 機能とデータ形式に関する情報を取得するための
documentation
- 利用可能なメトリックのリストを取得するための
metrics
- メトリクスの使用状況に関する情報を取得するための
metrics_staistics
- デバッグ用の時系列を取得するための
series
- 再ラベル付けルールをデバッグするための
metric_relabel_debug
- インスタンスパラメータに関する情報を取得するための
flags
- ダウンサンプリング設定をデバッグするための
downsampling_filters_debug
ただし、他のツールを使用して、独自の方法で組み合わせることもできます。
免責事項
AIサービスやエージェント、そしてこのようなMCPサーバーは、結果の正確性、完全性、信頼性を保証するものではありません。AIで得られた結果は、ご自身で再確認する必要があります。MCPサーバーとその応答の品質は、クライアントの能力と使用するモデルの品質に大きく依存します。
貢献
MCP VictoriaMetrics プロジェクトへの貢献を歓迎します。問題、機能リクエスト、プルリクエストなど、お気軽にご提出ください。
This server cannot be installed
remote-capable server
The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.
mcp-ビクトリアメトリックス
Related MCP Servers
- PythonMIT License
- PythonApache 2.0
- -security-license-qualityVictoriaMetrics-mcp-serverLast updated -1JavaScript
- TypeScriptMIT License