GrafanaのMCPサーバを使ってGrafana Cloudと接続する

GrafanaのMCPサーバを使ってGrafana Cloudと接続する

Clock Icon2025.04.03

はじめに

本記事では、Grafanaから提供されているMCPサーバを使用して、Grafana Cloudと接続する方法について説明します。

GitHubのリポジトリはこちらです。

mcp-grafana

前提条件

この記事は以下の環境下で検証しています。

  • Windows 11
  • Grafana Cloud(Freeプラン)登録済み
  • Claude Desktop(Proプラン)で動作確認

APIキーの取得

GrafanaはHTTP APIを公開しています。AIアシスタントはMCPサーバと連携し、ユーザからの質問を元に適切なエンドポイントやリクエストパラメータを組み立て、APIから結果を取得します。そのため、GrafanaのMCPサーバを使用するにはAPIキーが必要です。

HTTP API | Grafana documentation

Grafana Cloudを起動し、左メニューから「Administration」⇒「Users and access」⇒「Service accounts」を選択します。

20250403_g_01

右上の「Add service account」をクリックします。

20250403_g_02

Display nameとRoleを任意に設定します。ここでは「Viewer」ロールに設定します。

20250403_g_03

下のような画面に遷移します。「Add service account token」をクリックします。

20250403_g_04

Display nameとExpirationを任意に設定します。

20250403_g_05

「Generate token」をクリックするとトークンが生成されます。トークンは後から参照することができないため、コピーしてどこかに保存しておきます。

20250403_g_06

mcp-grafanaのダウンロード

mcp-grafanaのREADMEに記載の通り、以下のページからご自身の環境にあったバイナリファイルをダウンロードします。

mcp-grafana/releases

私はmcp-grafana_Windows_x86_64.zipをダウンロードしました。

20250403_g_07

圧縮ファイルを解凍し、任意のディレクトリに配置します。

Claude Desktopの設定

Claude Desktopで、MCPサーバの設定ファイルを編集します。設定ファイルの編集方法については以下の記事を参照してください。

PostgreSQLのMCPサーバを使って自然言語でデータベースに問い合わせる | DevelopersIO

以下のように編集します。

{
  "mcpServers": {
    "grafana": {
      "command": "C:\\exeを配置したパス\\mcp-grafana.exe",
      "args": [],
      "env": {
        "GRAFANA_URL": "https://ご自身のスタック名.grafana.net/",
        "GRAFANA_API_KEY": "取得したAPIキー"
      }
    }
  }
}

Claude Desktopを再起動します。

動作確認

Claude Desktopを開くと、チャット欄の下にツールアイコンが表示されています。

20250403_g_08

このアイコンをクリックすると、Grafanaに対してどのようなツールが使えるかを参照できます。

20250403_g_09

どのようなダッシュボードがあるか聞いてみます。

20250403_g_10

20250403_g_11

Grafana Cloudにあるダッシュボードと同一の情報が返ってきました。

20250403_g_12

注意点

MCPサーバは基本的にGrafanaのHTTP APIを呼び出して動作しています。そのため、取得できる情報はGrafana HTTP APIが返すレスポンスに限定されます。例えば、データソースに対してSQLクエリを実行し、その結果をダッシュボードに表示しているようなケースでは、MCPを使ってその値を直接取得することはできません。

以下、Grafanaに対して可能な操作をClaudeに質問してみました。

Grafanaに関して、現在利用可能な操作や機能をご説明します。以下の主要な操作が可能です:

1. ダッシュボード管理
・ダッシュボードの検索・一覧表示(search_dashboards)
・特定のダッシュボードの詳細取得(get_dashboard_by_uid)
2. データソース管理
・データソース一覧の取得(list_datasources)
・特定のデータソースの詳細取得(get_datasource_by_uid、get_datasource_by_name)
3. アラート管理
・アラートルール一覧の取得(list_alert_rules)
・特定のアラートルールの詳細取得(get_alert_rule_by_uid)
4. メトリクスとログのクエリ
・Prometheusメトリクスのクエリ(query_prometheus)
・Prometheusラベル情報の取得(list_prometheus_label_names、list_prometheus_label_values)
・Prometheusメトリクス情報の取得(list_prometheus_metric_names、list_prometheus_metric_metadata)
・Lokiログのクエリ(query_loki_logs)
・Lokiログの統計情報取得(query_loki_stats)
・Lokiラベル情報の取得(list_loki_label_names、list_loki_label_values)
5. インシデント管理
・インシデントの一覧取得(list_incidents)
・インシデントの作成(create_incident)
・インシデントへの活動追加(add_activity_to_incident)
6. OnCall管理(オンコール当番)
・オンコールスケジュールの一覧・詳細取得(list_oncall_schedules)
・現在オンコール当番中のユーザー取得(get_current_oncall_users)
・オンコールシフトの詳細取得(get_oncall_shift)
・オンコールチームの一覧取得(list_oncall_teams)
・オンコールユーザーの一覧・詳細取得(list_oncall_users)

これらの機能を使って、Grafanaの監視環境全体を確認したり、特定のメトリクスやログを検索したり、アラートやインシデント管理を行ったりすることができます。何か特定の操作に関して詳しく知りたい点があれば、お知らせください。

現時点では、ログやアラートの管理や分析に役立てることができそうです。

おわりに

本記事では、GrafanaのMCPサーバを使用してGrafana Cloudと接続する手順を紹介しました。

現時点では対応しているAPIが限られていますが、今後のアップデートによってさらに機能が拡充されていく可能性があります。定期的に公式情報を確認されることをおすすめします。また、具体的な活用方法については、別途記事にできればと思います。

この記事がどなたかのお役に立てば幸いです。

Share this article

facebook logohatena logotwitter logo

© Classmethod, Inc. All rights reserved.