mcpField
M
mcp-victorialogs

mcp-victorialogs

ローカル
github.com/VictoriaMetricsデータ・分析1072 週間前に更新

mcp-victorialogs について

mcp-victorialogsは、VictoriaLogsを使うエンジニアやオブザーバビリティ業務向けのMCPサーバーです。読み取り専用のログ・インスタンスAPIと、検索可能な組み込みドキュメントを提供し、調査やデバッグに使えます。

主な機能

  1. 01ログの検索と確認
  2. 02インスタンス設定の確認
  3. 03ストリーム・フィールド・値の一覧
  4. 04ログ統計をメトリクスとして取得
  5. 05組み込みドキュメントの検索
  6. 06stdio、SSE、Streamable HTTPに対応

活用シーン

  1. 01VictoriaLogs内のログ調査
  2. 02ストリームやフィールド値の確認
  3. 03ログ統計の確認
  4. 04デバッグ中のドキュメント検索

MCP 対応

MCPクライアントにVictoriaLogsの読み取り専用APIと組み込みドキュメントをツールとして公開します。stdio、SSE、Streamable HTTPのトランスポートに対応します。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"victoriametrics-mcp-victorialogs": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"VL_INSTANCE_ENTRYPOINT",
"-e",
"VL_INSTANCE_BEARER_TOKEN",
"-e",
"MCP_DISABLED_TOOLS",
"ghcr.io/victoriametrics/mcp-victorialogs:1.9.0"
],
"env": {
"VL_INSTANCE_ENTRYPOINT": "<VL_INSTANCE_ENTRYPOINT>",
"VL_INSTANCE_BEARER_TOKEN": "<VL_INSTANCE_BEARER_TOKEN>",
"MCP_DISABLED_TOOLS": "<MCP_DISABLED_TOOLS>"
}
}
}
}
起動コマンドdocker run -i --rm -e VL_INSTANCE_ENTRYPOINT -e VL_INSTANCE_BEARER_TOKEN -e MCP_DISABLED_TOOLS ghcr.io/victoriametrics/mcp-victorialogs:1.9.0
設定が必要な環境変数
VL_INSTANCE_ENTRYPOINTURL to VictoriaMetrics instance (it should be root URL of vmlingle or vlselect), for example http://localhost:9428 or https://play-vmlogs.victoriametrics.com
VL_INSTANCE_BEARER_TOKENシークレットAuthentication token for VictoriaMetrics API
MCP_DISABLED_TOOLSComma-separated list of tools to disable

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
ocighcr.io/victoriametrics/mcp-victorialogs:1.9.0

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

VictoriaLogs MCP サーバー

Latest Release License Slack X Reddit

VictoriaLogs 向けの Model Context Protocol(MCP) サーバーの実装です。

VictoriaLogs インスタンスへのアクセスと、VictoriaLogs API およびドキュメントとのシームレスな統合を実現します。 VictoriaLogs インスタンスに関連するログ、オブザーバビリティ、デバッグタスクに対応する包括的なインターフェースを提供し、エンジニアやツール向けの高度な自動化機能と操作機能を実現します。

機能

この MCP サーバーでは、VictoriaLogs のほぼすべての読み取り専用 API、つまりWeb UIで利用可能なすべての機能を使用できます。

  • ログのクエリとログデータの調査
  • VictoriaLogs インスタンスのパラメーターの表示
  • 利用可能なストリーム、フィールド、フィールド値の一覧表示
  • ログの統計情報をメトリクスとしてクエリ
  • ルートエンドポイントでの、セットアップ手順とツールの確認に対応した UI(Streamable HTTP モードのみ)

さらに、この MCP サーバーには最新のドキュメントが組み込まれており、オンラインアクセスなしで検索できます。

image

利用可能なツールとプロンプトの詳細については、使用方法のセクションをご覧ください。

ツールの機能とプロンプト内でのドキュメント検索を組み合わせれば、VictoriaLogs インスタンスで活用できる優れた利用シナリオを考案できます。 また、MCP サーバーの品質と応答は、クライアントの機能と使用するモデルの品質に大きく依存する点にご注意ください。

この MCP サーバーを、オブザーバビリティやドキュメント検索に関連する他の MCP サーバーと組み合わせることで、さらに強力な結果を得ることもできます。

インストールせずに試す

インストールせずに機能を試せる、一般公開されている VictoriaMetrics MCP サーバーのインスタンスがあります。

https://play-vmlogs-mcp.victoriametrics.com/mcp

ご注意ください! この URL はブラウザーで開くことを想定しておらず、MCP クライアントでの使用を目的としています。

Public VictoriaLogs Playground で動作するように設定されており、Streamable HTTP モードで利用できます。

Claude Desktop の設定例を次に示します。

image

要件

インストール

Go
go install github.com/VictoriaMetrics/mcp-victorialogs/cmd/mcp-victorialogs@latest
バイナリ

Releases ページから最新リリースをダウンロードし、PATH に配置してください。

Linux x86_64 の例です(他のアーキテクチャやプラットフォーム向けのものも利用できます)。

latest=$(curl -s https://api.github.com/repos/VictoriaMetrics/mcp-victorialogs/releases/latest | grep 'tag_name' | cut -d\" -f4)
wget https://github.com/VictoriaMetrics/mcp-victorialogs/releases/download/$latest/mcp-victorialogs_Linux_x86_64.tar.gz
tar axvf mcp-victorialogs_Linux_x86_64.tar.gz
Docker

Docker を使用して VictoriaLogs MCP Server を実行できます。

Go のインストールやソースからのビルドが不要なため、最も簡単に始められる方法です。

docker run -d --name mcp-victorialogs \
  -e VL_INSTANCE_ENTRYPOINT=https://play-vmlogs.victoriametrics.com \
  -e MCP_SERVER_MODE=http \
  -e MCP_LISTEN_ADDR=:8081 \
  -p 8081:8081 \
  ghcr.io/victoriametrics/mcp-victorialogs

環境変数は、ご自身のパラメーターに置き換えてください。

MCP_SERVER_MODE=http フラグは、Streamable HTTP モードを有効にするために使用されます。 サーバーモードの詳細については、設定セクションをご覧ください。

利用可能な Docker イメージについては、GitHub レジストリをご覧ください。

また、stdio モードのクライアントで MCP サーバーと Docker を使用する方法の詳細については、バイナリの代わりに Docker を使用するセクションをご覧ください。

Source Code

ソースコードからバイナリをビルドするには、次の手順を使用できます。

  • リポジトリをクローンします。

    git clone https://github.com/VictoriaMetrics/mcp-victorialogs.git
    cd mcp-victorialogs
    
  • クローンしたソースコードからバイナリをビルドします。

    make build
    # after that you can find binary mcp-victorialogs and copy this file to your PATH or run inplace
    
  • クローンしたソースコードからイメージをビルドします。

    docker build -t mcp-victorialogs .
    # after that you can use docker image mcp-victorialogs for running or pushing
    
Helm

Helm を使用したインストールの詳細については、VictoriaLogs MCP Server Helm チャートのドキュメントをご覧ください。

Configuration

VictoriaLogs の MCP サーバーは、環境変数で設定します。

変数説明必須デフォルト許可される値
VL_INSTANCE_ENTRYPOINTVictoriaLogs インスタンスの URLはい--
VL_INSTANCE_BEARER_TOKENVictoriaLogs API の認証トークンいいえ--
VL_INSTANCE_HEADERSリクエストとともに送信するカスタム HTTP ヘッダー(カンマ区切りの key=value ペア)いいえ--
MCP_PASSTHROUGH_HEADERS受信した MCP リクエストから VictoriaLogs に転送する HTTP ヘッダー名(カンマ区切りのリスト)。競合する場合は VL_INSTANCE_HEADERS を上書きします。sse/http モードでのみ適用されます。いいえ--
VL_DEFAULT_TENANT_IDリクエストでテナントが指定されていない場合に使用するデフォルトのテナント ID(形式:AccountID:ProjectID または AccountID)いいえ0:0-
MCP_SERVER_MODEサーバーの動作モード。詳細はモードを参照してください。いいえstdiostdio、sse、http
MCP_LISTEN_ADDRSSE または HTTP サーバーがリッスンするアドレスいいえlocalhost:8081-
MCP_DISABLED_TOOLS無効にするツールのカンマ区切りリストいいえ--
MCP_HEARTBEAT_INTERVALストリーマブル HTTP プロトコルのハートビート間隔を定義します。
MCP サーバーが GET 接続を通じてクライアントにハートビートを送信し、
ゲートウェイなどのネットワークインフラによって接続が切断されないようにします。
いいえ30s-
MCP_LOG_FORMATログ出力形式いいえtexttext、json
MCP_LOG_LEVEL最小ログレベルいいえinfodebug、info、warn、error
モード

MCP サーバーは、以下の動作モード(トランスポート)に対応しています。

  • stdio - 標準入出力モードです。サーバーは標準入力からコマンドを読み取り、標準出力に応答を書き込みます。これがデフォルトのモードで、ローカルサーバーに適しています。
  • sse - Server-Sent Events です。サーバーは、SSE 接続用に /sse および /message エンドポイントを公開します。
  • http - Streamable HTTP です。サーバーは、HTTP 接続用に /mcp エンドポイントを公開します。

トランスポートの詳細については、MCP のドキュメントをご覧ください。

設定例
# For a public playground
export VL_INSTANCE_ENTRYPOINT="https://play-vmlogs.victoriametrics.com"

# Custom headers for authentication (e.g., behind a reverse proxy)
# Expected syntax is key=value separated by commas
export VL_INSTANCE_HEADERS="<HEADER>=<HEADER_VALUE>,<HEADER>=<HEADER_VALUE>"

# Forward specific headers from incoming MCP requests to VictoriaLogs
export MCP_PASSTHROUGH_HEADERS="X-Token,X-Access-Key"

# Server mode
export MCP_SERVER_MODE="sse"
export MCP_SSE_ADDR="0.0.0.0:8081"
export MCP_DISABLED_TOOLS="hits,facets"

エンドポイント

SSE モードおよび HTTP モードでは、MCP サーバーは以下のエンドポイントを提供します。

エンドポイント説明
/セットアップのヘルプとツールの確認ができるランディングページ(HTTP モードのみ)
/sse + /messageSSE モードのメッセージ用エンドポイント(SSE に対応した MCP クライアント向け)
/mcpHTTP モードでメッセージをストリーミングするための HTTP エンドポイント(Streamable HTTP に対応した MCP クライアント向け)
/metricsMCP サーバーの監視用 Prometheus 形式のメトリクス
/health/livenessサーバーが実行中であることを確認するための稼働状況チェックエンドポイント
/health/readinessサーバーがリクエストを受け付ける準備ができていることを確認するための準備状況チェックエンドポイント

クライアントでのセットアップ

Cursor

Settings -> Cursor Settings -> MCP -> Add new global MCP server を開き、以下の設定を Cursor の ~/.cursor/mcp.json ファイルに貼り付けます。

{
  "mcpServers": {
    "victorialogs": {
      "command": "/path/to/mcp-victorialogs",
      "env": {
        "VL_INSTANCE_ENTRYPOINT": "<YOUR_VL_INSTANCE>",
        "VL_INSTANCE_BEARER_TOKEN": "<YOUR_VL_BEARER_TOKEN>",
        "VL_INSTANCE_HEADERS": "<HEADER>=<HEADER_VALUE>,<HEADER>=<HEADER_VALUE>"
      }
    }
  }
}

詳しくは Cursor MCP のドキュメントをご覧ください。

Claude Desktop

以下を Claude Desktop の claude_desktop_config.json ファイルに追加します(Settings -> Developer -> Edit config を開くと見つかります)。

{
  "mcpServers": {
    "victorialogs": {
      "command": "/path/to/mcp-victorialogs",
      "env": {
        "VL_INSTANCE_ENTRYPOINT": "<YOUR_VL_INSTANCE>",
        "VL_INSTANCE_BEARER_TOKEN": "<YOUR_VL_BEARER_TOKEN>",
        "VL_INSTANCE_HEADERS": "<HEADER>=<HEADER_VALUE>,<HEADER>=<HEADER_VALUE>"
      }
    }
  }
}

詳しくは Claude Desktop MCP のドキュメントをご覧ください。

Claude Code

以下のコマンドを実行します。

claude mcp add victorialogs -- /path/to/mcp-victorialogs \
  -e VL_INSTANCE_ENTRYPOINT=<YOUR_VL_INSTANCE> \
  -e VL_INSTANCE_BEARER_TOKEN=<YOUR_VL_BEARER_TOKEN> \
  -e VL_INSTANCE_HEADERS="<HEADER>=<HEADER_VALUE>,<HEADER>=<HEADER_VALUE>"

詳しくは Claude Code MCP のドキュメントをご覧ください。

Codex

Codex CLI と IDE 拡張機能は、同じ MCP 設定ファイルを使用します。~/.codex/config.toml(または信頼済みプロジェクト内の .codex/config.toml)です。

以下のコマンドを実行します。

codex mcp add victorialogs \
  --env VL_INSTANCE_ENTRYPOINT=<YOUR_VL_INSTANCE> \
  --env VL_INSTANCE_BEARER_TOKEN=<YOUR_VL_BEARER_TOKEN> \
  --env VL_INSTANCE_HEADERS="<HEADER>=<HEADER_VALUE>,<HEADER>=<HEADER_VALUE>" \
  -- /path/to/mcp-victorialogs

または、以下を Codex の ~/.codex/config.toml ファイルに追加します。

[mcp_servers.victorialogs]
command = "/path/to/mcp-victorialogs"

[mcp_servers.victorialogs.env]
VL_INSTANCE_ENTRYPOINT = "<YOUR_VL_INSTANCE>"
VL_INSTANCE_BEARER_TOKEN = "<YOUR_VL_BEARER_TOKEN>"
VL_INSTANCE_HEADERS = "<HEADER>=<HEADER_VALUE>,<HEADER>=<HEADER_VALUE>"

サーバーを Streamable HTTP モードで実行する場合は、次のように登録できます。

codex mcp add victorialogs --url http://localhost:8081/mcp

詳しくは Codex MCP のドキュメントをご覧ください。

Visual Studio Code

以下を VS Code の MCP 設定ファイルに追加します。

{
  "servers": {
    "victorialogs": {
      "type": "stdio",
      "command": "/path/to/mcp-victorialogs",
      "env": {
        "VL_INSTANCE_ENTRYPOINT": "<YOUR_VL_INSTANCE>",
        "VL_INSTANCE_BEARER_TOKEN": "<YOUR_VL_BEARER_TOKEN>",
        "VL_INSTANCE_HEADERS": "<HEADER>=<HEADER_VALUE>,<HEADER>=<HEADER_VALUE>"
      }
    }
  }
}

詳しくは VS Code MCP のドキュメントをご覧ください。

Zed

以下を Zed の設定ファイルに追加します。

  "context_servers": {
    "victorialogs": {
      "command": {
        "path": "/path/to/mcp-victorialogs",
        "args": [],
        "env": {
                  "VL_INSTANCE_ENTRYPOINT": "<YOUR_VL_INSTANCE>",
        "VL_INSTANCE_BEARER_TOKEN": "<YOUR_VL_BEARER_TOKEN>",
        "VL_INSTANCE_HEADERS": "<HEADER>=<HEADER_VALUE>,<HEADER>=<HEADER_VALUE>"
      }
      },
      "settings": {}
    }
  }
}

詳しくは Zed MCP のドキュメントをご覧ください。

JetBrains IDE
  • Settings -> Tools -> AI Assistant -> Model Context Protocol (MCP) を開きます。
  • Add (+) をクリックします。
  • As JSON を選択します。
  • 以下を入力欄に貼り付けます。
{
  "mcpServers": {
    "victorialogs": {
      "command": "/path/to/mcp-victorialogs",
      "env": {
        "VL_INSTANCE_ENTRYPOINT": "<YOUR_VL_INSTANCE>",
        "VL_INSTANCE_BEARER_TOKEN": "<YOUR_VL_BEARER_TOKEN>",
        "VL_INSTANCE_HEADERS": "<HEADER>=<HEADER_VALUE>,<HEADER>=<HEADER_VALUE>"
      }
    }
  }
}
Windsurf

以下を Windsurf の MCP 設定ファイルに追加します。

{
  "mcpServers": {
    "victorialogs": {
      "command": "/path/to/mcp-victorialogs",
      "env": {
        "VL_INSTANCE_ENTRYPOINT": "<YOUR_VL_INSTANCE>",
        "VL_INSTANCE_BEARER_TOKEN": "<YOUR_VL_BEARER_TOKEN>",
        "VL_INSTANCE_HEADERS": "<HEADER>=<HEADER_VALUE>,<HEADER>=<HEADER_VALUE>"
      }
    }
  }
}

詳しくは Windsurf MCP のドキュメントをご覧ください。

バイナリの代わりに Docker を使用する

ローカルのバイナリの代わりに Docker を使用して VictoriaLogs MCP Server を実行できます。

上記の設定例にある実行コマンドを、次のように置き換えてください。

{
  "mcpServers": {
    "victorialogs": {
      "command": "docker",
        "args": [
          "run",
          "-i", "--rm",
          "-e", "VL_INSTANCE_ENTRYPOINT",
          "-e", "VL_INSTANCE_BEARER_TOKEN",
          "-e", "VL_INSTANCE_HEADERS",
          "ghcr.io/victoriametrics/mcp-victorialogs",
        ],
      "env": {
        "VL_INSTANCE_ENTRYPOINT": "<YOUR_VL_INSTANCE>",
        "VL_INSTANCE_BEARER_TOKEN": "<YOUR_VL_BEARER_TOKEN>",
        "VL_INSTANCE_HEADERS": "<HEADER>=<HEADER_VALUE>,<HEADER>=<HEADER_VALUE>"
      }
    }
  }
}

使用方法

MCP サーバーをインストールして設定した後、お好みの MCP クライアントで使用を開始できます。

次のフレーズから AI アシスタントとの対話を開始できます。

Use MCP VictoriaLogs in the following answers

ただし、これは必須ではありません。質問するだけで、アシスタントがツールとドキュメントを自動的に使用して、最適な回答を提供します。

ツールセット

MCP VictoriaLogs には、VictoriaLogs インスタンスとやり取りするための多数のツールが用意されています。

利用可能なツールの一覧は次のとおりです。

ツール説明
documentationVictoriaLogs の組み込みドキュメントを検索します
facets各ログフィールドで最も頻出する値を取得します
field_namesクエリのフィールド名一覧を取得します
field_valuesクエリのフィールド値一覧を取得します
flagsVictoriaLogs インスタンスのデフォルト以外のフラグを表示します
hits一致するログエントリー数をバケットごとにグループ化して取得します
queryLogsQL クエリを実行します
stats_query指定した時刻のログ統計をクエリします
stats_query_range指定した時間範囲のログ統計をクエリします
stream_field_namesクエリのストリームフィールド一覧を取得します
stream_field_valuesクエリのストリームフィールド値一覧を取得します
stream_idsクエリのストリーム ID 一覧を取得します
streamsクエリのストリーム一覧を取得します
プロンプト

サーバーには、一般的なタスク向けの事前定義済みプロンプトが含まれています。

現時点ではあくまで例であり、今後プロンプトライブラリを拡充する予定です。

プロンプト説明
documentation特定のトピックについて VictoriaLogs のドキュメントを検索します

FAQ

MCP サーバーが、単純な API プロキシに期待されるより多くのリソースを使用するのはなぜですか?

サーバーには、documentation ツール用の VictoriaMetrics のドキュメントとブログ記事を含むベクトルデータベースが組み込まれています。 これにより、すべてのデータを LLM に渡さずに、VictoriaLogs に関する複雑な質問に回答できます。
これがリソース使用量の主な原因です。使用量を減らすには、環境変数 MCP_DISABLED_TOOLS に documentation を追加して、ベクトルデータベースの読み込みを完全に無効にします。

1 つの MCP サーバーインスタンスを複数の VictoriaMetrics インスタンスで使用するにはどうすればよいですか?

MCP Server の MCP_PASSTHROUGH_HEADERS パラメーターと、vmauth のヘッダーベースルーティングを組み合わせると、MCP クライアント設定の HTTP ヘッダー値に基づいて、MCP 呼び出しをインスタンス間でルーティングできます。

ロードマップ

  • 「クエリの説明」ツールをサポートする
  • VictoriaMetrics Cloud とのオプションの統合をサポートする
  • 現在のドキュメントツールに加えて、サーバーに追加のナレッジを追加する:
  • MCP のマルチテナント版(複数のデプロイメントに対応)を実装する
  • フラグ/設定の検証ツールを追加する
  • 設定によるツールの有効化/無効化

免責事項

このような MCP サーバーを含む AI サービスやエージェントは、結果の正確性、完全性、信頼性を保証できません。 AI で得られた結果は必ず再確認してください。

MCP Server の品質と応答は、使用するクライアントの機能やモデルの品質に大きく左右されます。

貢献

MCP VictoriaLogs プロジェクトへの貢献を歓迎します!

問題の報告、機能リクエスト、プルリクエストをお気軽にお寄せください。

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。