Grafana örneğinizde dashboard'ları arayın, olayları araştırın ve veri kaynaklarını sorgulayın
Claude Desktop config.json'a ekle
{
"mcpServers": {
"grafana-mcp-grafana": {
"command": "node",
"args": [
"~/.mcp/mcp-grafana/index.js"
]
}
}
} Kaynak kodu al ve yerel olarak çalıştır
git clone https://github.com/grafana/mcp-grafana.git ~/.mcp/mcp-grafana
cd ~/.mcp/mcp-grafana Grafana için bir [Model Context Protocol][mcp] (MCP) sunucusu.
Bu, Grafana örneğinize ve çevreleyen ekosisteme erişim sağlar.
uv gereklidir. Aşağıdakileri MCP istemci yapılandırmanıza ekleyin (örn. Claude Desktop, Cursor):
{
"mcpServers": {
"grafana": {
"command": "uvx",
"args": ["mcp-grafana"],
"env": {
"GRAFANA_URL": "http://localhost:3000",
"GRAFANA_SERVICE_ACCOUNT_TOKEN": "<your service account token>"
}
}
}
}
Grafana Cloud için GRAFANA_URL değerini örneğinizin URL'si ile değiştirin (örn. https://myinstance.grafana.net). Docker, binary ve Helm dahil daha fazla kurulum seçeneği için Kullanım bölümüne bakın.
Aşağıdaki özellikler şu anda MCP sunucusunda mevcuttur. Bu liste yalnızca bilgi amaçlıdır ve gelecekteki özellikler hakkında bir yol haritası veya taahhüt oluşturmaz.
$.title, $.panels[*].title) yalnızca gerekli verileri alın ve kontekst penceresi tüketimini azaltınNot: Panel sorgusu çalıştırma araçları varsayılan olarak devre dışıdır. Bunları etkinleştirmek için
runpanelquerydeğerini--enabled-toolsbayrağına ekleyin.
Pano araçları artık kontekst penceresi kullanımını etkili bir şekilde yönetmek için birkaç strateji içerir (issue #101):
get_dashboard_summary kullanınget_dashboard_property öğesini JSONPath ile kullanınget_dashboard_by_uid kullanmaktan kaçının tam pano JSON'ı özellikle gerekli olmadığı süreceNot: Sorgu örneği araçları varsayılan olarak devre dışıdır. Bunları etkinleştirmek için
examplesdeğerini--enabled-toolsbayrağına ekleyin.
Not: InfluxDB araçları varsayılan olarak devre dışıdır. Bunları etkinleştirmek için
influxdbdeğerini--enabled-toolsbayrağına ekleyin.
dialect parametresi aracılığıyla açıkça ayarlanabilir.Not: ClickHouse araçları varsayılan olarak devre dışıdır. Bunları etkinleştirmek için
clickhousedeğerini--enabled-toolsbayrağına ekleyin.
Not: CloudWatch araçları varsayılan olarak devre dışıdır. Bunları etkinleştirmek için
cloudwatchdeğerini--enabled-toolsbayrağına ekleyin.
Not: Graphite araçları varsayılan olarak devre dışıdır. Bunları etkinleştirmek için
graphitedeğerini--enabled-toolsbayrağına ekleyin.
Not: Athena araçları varsayılan olarak devre dışıdır. Bunları etkinleştirmek için
athenadeğerini--enabled-toolsbayrağına ekleyin.
Not: Snowflake araçları varsayılan olarak devre dışıdır. Bunları etkinleştirmek için
snowflakedeğerini--enabled-toolsbayrağına ekleyin.
Sorgular Grafana'nın Snowflake veri kaynağı (Grafana Enterprise eklentisi grafana-snowflake-datasource) aracılığıyla gider, bu nedenle kimlik doğrulama Grafana'da veri kaynağı yapılandırması tarafından yönetilir — kimlik bilgileri hiçbir zaman MCP sunucusu tarafından görülmez. Bu, ClickHouse araçları için kullanılan model ile aynıdır.
INFORMATION_SCHEMA.TABLES aracılığıyla tabloları keşfedin (veritabanı, şema, tür, satır sayısı ve boyut dahil). İsteğe bağlı veritabanı/şema filtreleri.SNOWFLAKE.TELEMETRY.EVENTS) günlükler ve izler için sorgulamak veya herhangi bir kullanıcı tablosunu sorgulamak için kullanışlı.
$__timeFilter(column), $__timeFrom, $__timeTo, $__from, $__to (Unix ms), $__interval (saniye), $__interval_ms ve ${varname} şablon değişkeni ikamesi için.Not: Elasticsearch/OpenSearch araçları varsayılan olarak devre dışıdır. Bunları etkinleştirmek için
elasticsearchdeğerini--enabled-toolsbayrağına ekleyin.
Not: Yönetici araçları varsayılan olarak devre dışıdır. Bunları etkinleştirmek için
--enabled-toolsbayrağınaadmindeğerini ekleyin.
http://localhost:3000/d/dashboard-uid)http://localhost:3000/d/dashboard-uid?viewPanel=5)http://localhost:3000/explore?left={"datasource":"prometheus-uid"})from=now-1h&to=now)what, when, tags, data) kullanarak ek açıklamalar oluşturun.Araçlar listesi yapılandırılabilir, bu nedenle MCP istemcisine hangi araçları kullanılabilir hale getirmek istediğinizi seçebilirsiniz.
Bu, belirli işlevselliği kullanmıyorsanız veya kontekst penceresinin çok fazla alanını kaplayacağını istemiyorsanız yararlıdır.
Bir araç kategorisini devre dışı bırakmak için sunucu başlatırken --disable-<category> bayrağını kullanın. Örneğin, OnCall araçlarını devre dışı bırakmak için --disable-oncall değerini, veya gezinti derin bağlantı oluşturmayı devre dışı bırakmak için --disable-navigation değerini kullanın.
Her araç düzgün çalışabilmesi için belirli RBAC izinleri gerektirir. MCP sunucusu için bir hizmet hesabı oluştururken, kullanmayı planladığınız araçlara göre gerekli izinlere sahip olduğundan emin olun. Listelenen izinler minimum gerekli eylemlerdir - kullanım durumunuza bağlı olarak uygun kapsamlar (örn. datasources:*, dashboards:*, folders:*) da gerekebilir.
İpucu: Grafana RBAC'ye aşina değilseniz veya birçok ayrıntılı kapsamı yapılandırmak yerine daha hızlı, daha basit bir kurulum istiyorsanız, hizmet hesabına Editor gibi yerleşik bir rol atayabilirsiniz. Editor rolü, MCP sunucusu işlemlerinin çoğunu işlemesine izin verecek geniş okuma/yazma erişimi sağlar; el ile uygulanan kapsamlardan daha az ayrıntılıdır (ve dolayısıyla daha az kısıtlayıcıdır), bu nedenle bunu yalnızca kolaylık en az ayrıcalık erişiminden daha önemli olduğunda kullanın.
Not: Grafana Incident ve Sift araçları ince tanecikli RBAC izinleri yerine temel Grafana rollerini kullanır:
Grafana RBAC hakkında daha fazla bilgi için resmi belgelendirme sayfasına bakın.
Kapsamlar, izinlerin geçerli olduğu belirli kaynakları tanımlar. Her eylem hem uygun izin hem de kapsam kombinasyonu gerektirir.
Yaygın Kapsam Desenleri:
Geniş erişim: Kuruluş çapında erişim için * joker kartlarını kullanın
datasources:* - Tüm veri kaynaklarına erişimdashboards:* - Tüm panolara erişimfolders:* - Tüm klasörlere erişimteams:* - Tüm takımlara erişimSınırlı erişim: Erişimi ayrı kaynaklar ile sınırlamak için belirli UID'ler veya ID'ler kullanın
datasources:uid:prometheus-uid - Yalnızca belirli bir Prometheus veri kaynağına erişimdashboards:uid:abc123 - UID abc123 olan panoye yalnızca erişimfolders:uid:xyz789 - UID xyz789 olan klasöre yalnızca erişimteams:id:5 - ID 5 olan takıma yalnızca erişimglobal.users:id:123 - ID 123 olan kullanıcıya yalnızca erişimÖrnekler:
Tam MCP sunucusu erişimi: Tüm araçlar için geniş izinler verin
datasources:* (datasources:read, datasources:query)
dashboards:* (dashboards:read, dashboards:create, dashboards:write)
folders:* (pano oluşturma ve uyarı kuralları için)
teams:* (teams:read)
global.users:* (users:read)
Sınırlı veri kaynağı erişimi: Yalnızca belirli Prometheus ve Loki örneklerini sorgulayın
datasources:uid:prometheus-prod (datasources:query)
datasources:uid:loki-prod (datasources:query)
Pano özel erişimi: Yalnızca belirli panoları okuyun
dashboards:uid:monitoring-dashboard (dashboards:read)
dashboards:uid:alerts-dashboard (dashboards:read)
| Araç | Kategori | Açıklama | Gerekli RBAC İzinleri | Gerekli Kapsamlar |
|---|---|---|---|---|
list_teams |
Admin | Tüm takımları listeleyin | teams:read |
teams:* veya teams:id:1 |
list_users_by_org |
Admin | Bir kuruluştaki tüm kullanıcıları listeleyin | users:read |
global.users:* veya global.users:id:123 |
list_all_roles |
Admin | Tüm Grafana rollerini listeleyin | roles:read |
roles:* |
get_role_details |
Admin | Bir Grafana rolü ayrıntılarını alın | roles:read |
roles:uid:editor |
get_role_assignments |
Admin | Bir rol için atamalar listeleyin | roles:read |
roles:uid:editor |
list_user_roles |
Admin | Kullanıcılar için rolleri listeleyin | roles:read |
global.users:id:123 |
list_team_roles |
Admin | Takımlar için roll |
Metrikler, loglar, sistemler, konteynerler, süreçler ve ağ bağlantıları dahil tüm observability verilerini kullanarak keşif, araştırma, raporlama ve root cause analizi yapın.
Sentry.io entegrasyonu ile hata takibi ve performans izlemesi
Zabbix entegrasyonu sunucular, itemler, triggerlar, şablonlar, problemler, veriler ve daha fazlası için.
VictoriaMetrics instance'larınızın API'leri ve dokümantasyonu ile kapsamlı entegrasyon sağlayarak, monitoring, observability ve debugging görevlerini kolaylaştırır.
Logfire aracılığıyla OpenTelemetry izlemeleri ve metriklerine erişim sağlar.
AI tarafından oluşturulan kodun kalitesini karmaşıklıktan güvenlik açıklarına kadar 10 kritik boyutta akıllı, prompt tabanlı analizle geliştirin