MCP

Grafana MCP:まずデータソースを列挙し、最初から巨大ダッシュボード全体を取らない

Grafana 9.0+ とサービスアカウントトークンがあり、データソースやダッシュボードを見たい人向け。初回はデータソースの読み取りだけ。runpanelquery は有効にしない。

公式ソース · grafana/mcp-grafana

インストール

uvx mcp-grafana

だれ向けか

すでに Grafana 9.0 以降のインスタンスがあり、モデルにインスタンスと周辺(ダッシュボード、データソース)を見せたい人向け。根拠は次のとおり:この MCP は Grafana インスタンスとその周辺エコシステムへのアクセスを提供する。

GRAFANA_URL とサービスアカウントトークン GRAFANA_SERVICE_ACCOUNT_TOKEN を用意できる必要がある。9.0 未満では、一部機能(とくにデータソース関連)が API 不足で使えないことがある。

根拠はクライアント一覧を出しておらず、大半のツール関数名も書いていない。初回は読み取り専用だけ。既定オフの panel query を有効にしない。localhost:3000 の例を本番にそのまま使わない。

3 分で最初の試行

主経路は uvx。クライアントでは次を設定する:

"command": "uvx",
"args": ["mcp-grafana"],
"env": {
  "GRAFANA_URL": "http://localhost:3000",
  "GRAFANA_SERVICE_ACCOUNT_TOKEN": "<your service account token>"
}

URL を自分のインスタンスに、トークンをサービスアカウント token に置き換える。会話に書かない。

前提:Grafana ≥ 9.0 に届く。サービスアカウントにデータソース列挙またはダッシュボード読み取りの権限がある。この呼び出しはトークン付きで自分の Grafana に行く。オフラインサンドボックスではない。

設定場所:クライアント MCP の command / args / env。

低リスクな最初の呼び出し:まず「データソース情報の列挙と取得」(根拠の能力)。最初から UID で巨大ダッシュボード全体を取らない。Run panel query ツールは既定オフ。初回のために runpanelquery を --enabled-tools に足さない。

成功の合図:クライアント接続後、設定済みデータソース一覧が見える。401 や接続失敗なら先に URL とトークン、インスタンスが ≥ 9.0 かを確認する。

ユースケース

ケース 1:インスタンスにどのデータソースがあるかを見る。「List and fetch datasource information」を使う。根拠は対応タイプに Prometheus、Loki、ClickHouse、CloudWatch、Elasticsearch、OpenSearch、Snowflake、Athena を含むと書く。ツール関数名やフィルタ引数はない。確認できるのは、設定済みデータソースとその詳細まで。

ケース 2:UID で 1 枚のダッシュボードの完全な詳細を取る。根拠は警告する:大きなダッシュボードはコンテキスト窓を大きく使う。UID が分かっていて巨大でない盤を選ぶ。戻りが長すぎたら「根拠がコンテキスト消費を警告済み」で止める。全量を繰り返し取らない。根拠に JSONPath で削るツールの locator 原文はない。代替ツール名を作らない。

利用上の境界

Grafana 9.0+、GRAFANA_URL、サービスアカウントトークンが必要。runpanelquery は既定無効で、有効化後にだけ panel query を走る。UID で盤全体を取るとコンテキストが溢れることがある。データソースタイプは上記のみ。根拠に undo、完全なツール名表、トークン最小権限の記述はない。Grafana とデータソースへのアクセスはゼロリスクではない。サービスアカウントが見えるダッシュボードとデータソースはモデルも見える。「読み取り専用でデータソースを列挙」を、外向き通信なし、機密メトリクス名なし、とは読まない。