Grafana MCP Server は、モデルコンテキストプロトコル (Model Context Protocol, MCP) に基づくサーバーであり、Grafana インスタンスとその周辺のエコシステムとの統合専用に設計されています。このプロジェクトは、AI エージェント(Claude Desktop など)に、Grafana のさまざまな機能へのアクセスと操作能力を提供します。
このプロジェクトは、柔軟なツール設定オプションを提供し、特定の機能カテゴリを有効または無効にすることができます。
ツール名称 | 分類 | 説明 |
---|---|---|
search_dashboards |
Search | ダッシュボードを検索 |
get_dashboard_by_uid |
Dashboard | UID を使用してダッシュボードを取得 |
update_dashboard |
Dashboard | ダッシュボードを更新または新規作成 |
list_datasources |
Datasources | データソースをリスト |
query_prometheus |
Prometheus | Prometheus クエリを実行 |
query_loki_logs |
Loki | ログをクエリおよび検索 |
list_incidents |
Incident | イベントをリスト |
list_alert_rules |
Alerting | アラートルールをリスト |
list_oncall_schedules |
OnCall | OnCall 当番計画をリスト |
find_error_pattern_logs |
Sift | エラーパターンを検索 |
--disable-<category>
フラグを使用すると、特定のツールカテゴリを無効にできます。たとえば、--disable-oncall
を使用すると、OnCall 関連ツールを無効にできます。
docker pull mcp/grafana
docker run -p 8000:8000 -e GRAFANA_URL=http://localhost:3000 -e GRAFANA_API_KEY=<your_token> mcp/grafana
releases ページ から最新バージョンをダウンロードし、$PATH
ディレクトリに配置します。
GOBIN="$HOME/go/bin" go install github.com/grafana/mcp-grafana/cmd/mcp-grafana@latest
バイナリファイルを使用する場合:
{
"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>"
}
}
}
}
-debug
フラグを追加してデバッグモードを有効にすると、詳細な HTTP リクエストとレスポンスのログが提供されます。
{
"mcpServers": {
"grafana": {
"command": "mcp-grafana",
"args": ["-debug"],
"env": {
"GRAFANA_URL": "http://localhost:3000",
"GRAFANA_API_KEY": "<your service account token>"
}
}
}
}
# サーバーの実行
make run
# Docker イメージのビルド
make build-image
# Docker コンテナの実行
docker run -it --rm -p 8000:8000 mcp-grafana:latest
make test-unit
# または
make test
# Docker コンテナの起動が必要
make test-integration
# クラウド Grafana インスタンスと認証情報が必要
make test-cloud
# ローカル Grafana インスタンスの起動
docker-compose up -d
# すべてのテストの実行
make test-all
make lint
このプロジェクトには、jsonschema
構造体タグ内のエスケープされていないカンマをチェックするためのカスタムリンターが含まれています。
make lint-jsonschema
このプロジェクトは、AI と従来の監視ツールを統合する新しいトレンドを表しており、開発者に人工知能アシスタントと Grafana エコシステムを接続する強力なブリッジを提供します。