Skip to main content
Glama
grafana

Grafana

Official
by grafana

Grafana MCP サーバー

Grafana 用のモデル コンテキスト プロトコル(MCP) サーバー。

これにより、Grafana インスタンスと周囲のエコシステムにアクセスできるようになります。

特徴

  • [x] ダッシュボードを検索

  • [x] ダッシュボード

    • [x] UIDでダッシュボードを取得する

    • [x] ダッシュボードを更新または作成する(免責事項:コンテキストウィンドウには注意してください。詳細はhttps://github.com/grafana/mcp-grafana/issues/101を参照してください)

    • [x] ダッシュボード内のすべてのパネルからタイトル、クエリ文字列、データソース情報(UIDとタイプを含む)を取得します。

  • [x] データソース情報の一覧表示と取得

  • [ ] データソースのクエリ

    • [x] プロメテウス

    • [x] ロキ

      • [x] ログクエリ

      • [x] メトリッククエリ

    • [ ] テンポ

    • [ ] パイロスコープ

  • [x] Prometheusメタデータのクエリ

    • [x] メトリックメタデータ

    • [x] メトリック名

    • [x] ラベル名

    • [x] ラベル値

  • [x] Lokiメタデータのクエリ

    • [x] ラベル名

    • [x] ラベル値

    • [x] 統計

  • [x] インシデントの検索、作成、更新、クローズ

  • [x] Sift調査を開始して結果を表示する

    • [x] 調査を作成する

    • [x] 制限パラメータ付き調査の一覧表示

    • [x] 調査を受ける

    • [x] 分析を取得

    • [x] Siftを使用してログ内のエラーパターンを見つける

    • [x] Siftを使って遅いリクエストを見つける

    • [ ] 他のシフトチェックにツールを追加する

  • [ ] 警告

    • [x] アラートルール情報の一覧表示と取得

    • [x] アラートルールのステータス(実行中/正常/エラーなど)を取得します。

    • [ ] アラートルールの作成と変更

    • [x] 連絡先リスト

    • [ ] 連絡先の作成と変更

  • [x] Grafana OnCall機能にアクセスする

    • [x] スケジュールの一覧表示と管理

    • [x] シフトの詳細を取得する

    • [x] 現在のオンコールユーザーを取得する

    • [x] チームとユーザーの一覧

    • [ ] アラートグループの一覧

  • [x] 管理機能

    • [ ] ユーザー一覧

    • [x] チーム一覧

    • [ ] 役割をリストする

    • [ ] 役割の割り当てを一覧表示する

    • [ ] デバッグロールの割り当て

ツールリストは設定可能なので、MCPクライアントで利用できるようにするツールを選択できます。これは、特定の機能を使用しない場合や、コンテキストウィンドウをあまり占有したくない場合に便利です。特定のカテゴリのツールを無効にするには、サーバーの起動時に--disable-<category>フラグを使用します。例えば、OnCallツールを無効にするには、 --disable-oncallを使用します。

ツール

道具

カテゴリ

説明

list_teams

管理者

すべてのチームを一覧表示する

search_dashboards

検索

ダッシュボードを検索

get_dashboard_by_uid

ダッシュボード

uidでダッシュボードを取得する

update_dashboard

ダッシュボード

ダッシュボードを更新または新規作成する

get_dashboard_panel_queries

ダッシュボード

ダッシュボードからパネルのタイトル、クエリ、データソースの UID とタイプを取得します

list_datasources

データソース

データソースの一覧

get_datasource_by_uid

データソース

uidでデータソースを取得する

get_datasource_by_name

データソース

名前でデータソースを取得する

query_prometheus

プロメテウス

Prometheusデータソースに対してクエリを実行する

list_prometheus_metric_metadata

プロメテウス

メトリックメタデータの一覧表示

list_prometheus_metric_names

プロメテウス

利用可能なメトリック名を一覧表示する

list_prometheus_label_names

プロメテウス

セレクタに一致するラベル名をリストする

list_prometheus_label_values

プロメテウス

特定のラベルの値を一覧表示する

list_incidents

事件

Grafanaインシデントでインシデントを一覧表示する

create_incident

事件

Grafanaでインシデントを作成する

add_activity_to_incident

事件

Grafana Incidentのインシデントにアクティビティ項目を追加する

resolve_incident

事件

Grafanaでインシデントを解決する

query_loki_logs

ロキ

LogQL(ログまたはメトリッククエリ)を使用してログをクエリおよび取得する

list_loki_label_names

ロキ

ログで利用可能なすべてのラベル名を一覧表示する

list_loki_label_values

ロキ

特定のログラベルの値を一覧表示する

query_loki_stats

ロキ

ログストリームに関する統計情報を取得する

list_alert_rules

警告

アラートルールの一覧

get_alert_rule_by_uid

警告

UIDでアラートルールを取得する

list_oncall_schedules

オンコール

Grafana OnCall からスケジュールを一覧表示する

get_oncall_shift

オンコール

特定のオンコールシフトの詳細を取得する

get_current_oncall_users

オンコール

特定のスケジュールで現在オンコール中のユーザーを取得する

list_oncall_teams

オンコール

Grafana OnCall からチームを一覧表示する

list_oncall_users

オンコール

Grafana OnCall からユーザーを一覧表示する

get_investigation

ふるいにかける

UUIDで既存のSift調査を取得する

get_analysis

ふるいにかける

Sift調査から特定の分析を取得する

list_investigations

ふるいにかける

オプションの制限付きでSift調査のリストを取得します

find_error_pattern_logs

ふるいにかける

Loki ログ内のエラー パターンの増加を検出します。

find_slow_requests

ふるいにかける

関連するテンポ データ ソースから遅いリクエストを見つけます。

Related MCP server: MCP Server

使用法

  1. Grafanaで、必要なツールを使用するのに十分な権限を持つサービスアカウントを作成し、サービスアカウントトークンを生成して、設定ファイルで使用するためにクリップボードにコピーします。詳細については、 Grafanaのドキュメントを参照してください。

  2. mcp-grafanaをインストールするにはいくつかのオプションがあります。

    • Docker イメージ: Docker Hub から事前に構築された Docker イメージを使用します。

      docker pull mcp/grafana docker run -p 8000:8000 -e GRAFANA_URL=http://localhost:3000 -e GRAFANA_API_KEY=<your service account token> mcp/grafana
    • バイナリをダウンロード:リリース ページからmcp-grafanaの最新リリースをダウンロードし、 $PATHに配置します。

    • ソースからビルド:Goツールチェーンがインストールされている場合は、 GOBIN環境変数を使用してバイナリをインストールするディレクトリを指定し、ソースからビルドしてインストールすることもできます。このディレクトリはPATHにも含まれている必要があります。

      GOBIN="$HOME/go/bin" go install github.com/grafana/mcp-grafana/cmd/mcp-grafana@latest
  3. サーバー設定をクライアント設定ファイルに追加します。例えば、Claude Desktopの場合は以下のようになります。

    バイナリを使用する場合:

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

    Docker を使用する場合:

    { "mcpServers": { "grafana": { "command": "docker", "args": [ "run", "--rm", "-p", "8000:8000", "-e", "GRAFANA_URL", "-e", "GRAFANA_API_KEY", "mcp/grafana" ], "env": { "GRAFANA_URL": "http://localhost:3000", "GRAFANA_API_KEY": "<your service account token>" } } } }

注意: Claude Desktop でError: spawn mcp-grafana ENOENT表示される場合は、 mcp-grafanaへのフルパスを指定する必要があります。

リモート MCP サーバーで VSCode を使用する

.vscode/settings.jsonに以下が含まれていることを確認してください。

"mcp": { "servers": { "grafana": { "type": "sse", "url": "http://localhost:8000/sse" } } }

デバッグモード

コマンドに-debugフラグを追加することで、Grafana トランスポートのデバッグモードを有効にできます。これにより、MCP サーバーと Grafana API 間の HTTP リクエストとレスポンスの詳細なログが記録され、トラブルシューティングに役立ちます。

Claude Desktop 構成でデバッグ モードを使用するには、次のように構成を更新します。

バイナリを使用する場合:

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

Docker を使用する場合:

{ "mcpServers": { "grafana": { "command": "docker", "args": [ "run", "--rm", "-p", "8000:8000", "-e", "GRAFANA_URL", "-e", "GRAFANA_API_KEY", "mcp/grafana", "-debug" ], "env": { "GRAFANA_URL": "http://localhost:3000", "GRAFANA_API_KEY": "<your service account token>" } } } }

発達

貢献を歓迎します!ご提案や改善点がありましたら、問題を報告するか、プルリクエストを送信してください。

このプロジェクトはGoで書かれています。お使いのプラットフォームの指示に従ってGoをインストールしてください。

サーバーを実行するには、次を使用します。

make run

カスタムビルドされたDockerイメージ内でSSEトランスポートを使用してサーバーを実行することもできます。イメージをビルドするには、

make build-image

イメージを実行するには、次を使用します。

docker run -it --rm -p 8000:8000 mcp-grafana:latest

テスト

利用できるテストには 3 つの種類があります。

  1. ユニットテスト (外部依存関係は不要):

make test-unit

次のようにしてユニット テストを実行することもできます。

make test
  1. 統合テスト (Docker コンテナが起動して実行されている必要があります):

make test-integration
  1. クラウド テスト (クラウド Grafana インスタンスと認証情報が必要です):

make test-cloud

注: クラウドテストはCIで自動的に構成されます。ローカル開発の場合は、独自のGrafana Cloudインスタンスと認証情報を設定する必要があります。

より包括的な統合テストでは、Grafana インスタンスをポート 3000 でローカルに実行する必要があります。これは Docker Compose で起動できます。

docker-compose up -d

統合テストは次のように実行できます。

make test-all

ツールを追加する場合は、それらの統合テストを追加してください。既存のテストは良い出発点となるはずです。

リンティング

コードを lint するには、次を実行します。

make lint

これには、 jsonschema構造体タグ内のエスケープされていないカンマをチェックするカスタムリンターが含まれています。 descriptionフィールド内のカンマは\\,でエスケープする必要があります。このリンターだけを実行するには、次のコマンドを使用します。

make lint-jsonschema

詳細については、 JSONSchema Linter のドキュメントを参照してください。

ライセンス

このプロジェクトは、Apache License バージョン 2.0に基づいてライセンスされます。

-
security - not tested
-
license - not tested
-
quality - not tested

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/grafana/mcp-grafana'

If you have feedback or need assistance with the MCP directory API, please join our Discord server