Integrations
Provides access to Grafana dashboards, data sources, and ecosystem tools, enabling search and retrieval of dashboards, querying of data sources (Prometheus, Loki), incident management, alerting capabilities, and OnCall functionality.
Allows querying Prometheus data sources, retrieving metric metadata, listing metric names, and exploring label names and values to analyze time series data.
Grafana MCP-Server
Ein Model Context Protocol (MCP)-Server für Grafana.
Dies ermöglicht den Zugriff auf Ihre Grafana-Instanz und das umgebende Ökosystem.
Merkmale
- [x] Suche nach Dashboards
- [x] Dashboards
- [x] Dashboard per UID abrufen
- [x] Aktualisieren oder erstellen Sie ein Dashboard (HAFTUNGSAUSSCHLUSS: Seien Sie vorsichtig mit Kontextfenstern. Weitere Informationen finden Sie unter https://github.com/grafana/mcp-grafana/issues/101 ).
- [x] Holen Sie sich den Titel, die Abfragezeichenfolge und die Datenquelleninformationen (einschließlich UID und Typ, falls verfügbar) von jedem Panel in einem Dashboard
- [x] Datenquelleninformationen auflisten und abrufen
- [ ] Datenquellen abfragen
- [x] Prometheus
- [x] Loki
- [x] Protokollabfragen
- [x] Metrikabfragen
- [ ] Tempo
- [ ] Pyroskop
- [x] Prometheus-Metadaten abfragen
- [x] Metrische Metadaten
- [x] Metriknamen
- [x] Labelnamen
- [x] Labelwerte
- [x] Loki-Metadaten abfragen
- [x] Labelnamen
- [x] Labelwerte
- [x] Statistiken
- [x] Vorfälle suchen, erstellen, aktualisieren und schließen
- [x] Sift-Untersuchungen starten und Ergebnisse ansehen
- [x] Untersuchungen erstellen
- [x] Untersuchungen mit einem Grenzwertparameter auflisten
- [x] Untersuchung einleiten
- [x] Analysen abrufen
- [x] Fehlermuster in Protokollen mit Sift finden
- [x] Finden Sie langsame Anfragen mit Sift
- [ ] Tools für die anderen Sift Checks hinzufügen
- [ ] Alarmierung
- [x] Informationen zu Warnregeln auflisten und abrufen
- [x] Status der Alarmregeln abrufen (Auslösen/Normal/Fehler/usw.)
- [ ] Warnregeln erstellen und ändern
- [x] Kontaktstellen auflisten
- [ ] Kontaktpunkte erstellen und ändern
- [x] Zugriff auf die Grafana OnCall-Funktionalität
- [x] Zeitpläne auflisten und verwalten
- [x] Schichtdetails abrufen
- [x] Aktuelle Bereitschaftsbenutzer abrufen
- [x] Teams und Benutzer auflisten
- [ ] Alarmgruppen auflisten
Die Toolliste ist konfigurierbar, sodass Sie auswählen können, welche Tools dem MCP-Client zur Verfügung stehen sollen. Dies ist nützlich, wenn Sie bestimmte Funktionen nicht nutzen oder das Kontextfenster nicht zu sehr beanspruchen möchten. Um eine Toolkategorie zu deaktivieren, verwenden Sie beim Serverstart das Flag --disable-<category>
. Um beispielsweise die OnCall-Tools zu deaktivieren, verwenden Sie --disable-oncall
.
Werkzeuge
Werkzeug | Kategorie | Beschreibung |
---|---|---|
search_dashboards | Suchen | Suche nach Dashboards |
get_dashboard_by_uid | Armaturenbrett | Abrufen eines Dashboards per UID |
update_dashboard | Armaturenbrett | Aktualisieren oder erstellen Sie ein neues Dashboard |
get_dashboard_panel_queries | Armaturenbrett | Holen Sie sich Paneltitel, Abfragen, Datenquellen-UID und Typ von einem Dashboard |
list_datasources | Datenquellen | Datenquellen auflisten |
get_datasource_by_uid | Datenquellen | Abrufen einer Datenquelle per UID |
get_datasource_by_name | Datenquellen | Abrufen einer Datenquelle nach Namen |
query_prometheus | Prometheus | Führen Sie eine Abfrage für eine Prometheus-Datenquelle aus |
list_prometheus_metric_metadata | Prometheus | Metrikmetadaten auflisten |
list_prometheus_metric_names | Prometheus | Auflisten der verfügbaren Metriknamen |
list_prometheus_label_names | Prometheus | Listen Sie Beschriftungsnamen auf, die einem Selektor entsprechen |
list_prometheus_label_values | Prometheus | Listenwerte für ein bestimmtes Label |
list_incidents | Vorfall | Vorfälle in Grafana Incident auflisten |
create_incident | Vorfall | Erstellen Sie einen Vorfall in Grafana Incident |
add_activity_to_incident | Vorfall | Fügen Sie einem Vorfall in Grafana Incident ein Aktivitätselement hinzu |
resolve_incident | Vorfall | Lösen eines Vorfalls in Grafana Incident |
query_loki_logs | Loki | Abfragen und Abrufen von Protokollen mit LogQL (entweder Protokoll- oder Metrikabfragen) |
list_loki_label_names | Loki | Alle verfügbaren Labelnamen in Protokollen auflisten |
list_loki_label_values | Loki | Listenwerte für eine bestimmte Protokollbezeichnung |
query_loki_stats | Loki | Statistiken zu Protokollströmen abrufen |
list_alert_rules | Alarmierung | Auflisten von Warnregeln |
get_alert_rule_by_uid | Alarmierung | Alarmregel nach UID abrufen |
list_oncall_schedules | OnCall | Listen Sie Zeitpläne von Grafana OnCall auf |
get_oncall_shift | OnCall | Details zu einer bestimmten OnCall-Schicht abrufen |
get_current_oncall_users | OnCall | Holen Sie sich Benutzer, die derzeit für einen bestimmten Zeitplan in Bereitschaft sind |
list_oncall_teams | OnCall | Teams von Grafana OnCall auflisten |
list_oncall_users | OnCall | Benutzer von Grafana OnCall auflisten |
get_investigation | Sieben | Rufen Sie eine vorhandene Sift-Untersuchung anhand ihrer UUID ab |
get_analysis | Sieben | Abrufen einer bestimmten Analyse aus einer Sift-Untersuchung |
list_investigations | Sieben | Rufen Sie eine Liste der Sift-Untersuchungen mit einem optionalen Limit ab |
find_error_pattern_logs | Sieben | Findet erhöhte Fehlermuster in Loki-Protokollen. |
find_slow_requests | Sieben | Findet langsame Anfragen von den relevanten Tempo-Datenquellen. |
Verwendung
- Erstellen Sie in Grafana ein Dienstkonto mit ausreichenden Berechtigungen für die gewünschten Tools, generieren Sie ein Dienstkonto-Token und kopieren Sie es zur Verwendung in der Konfigurationsdatei in die Zwischenablage. Weitere Informationen finden Sie in der Grafana-Dokumentation .
- Sie haben mehrere Möglichkeiten,
mcp-grafana
zu installieren:- Docker-Image : Verwenden Sie das vorgefertigte Docker-Image von Docker Hub:Copy
- Binärdatei herunterladen : Laden Sie die neueste Version von
mcp-grafana
von der Release-Seite herunter und platzieren Sie sie in Ihrem$PATH
. - Aus dem Quellcode erstellen : Wenn Sie eine Go-Toolchain installiert haben, können Sie diese auch aus dem Quellcode erstellen und installieren. Verwenden Sie dazu die Umgebungsvariable
GOBIN
, um das Verzeichnis anzugeben, in dem die Binärdatei installiert werden soll. Dieses Verzeichnis sollte sich auch in IhremPATH
befinden.Copy
- Docker-Image : Verwenden Sie das vorgefertigte Docker-Image von Docker Hub:
- Fügen Sie die Serverkonfiguration zu Ihrer Client-Konfigurationsdatei hinzu. Beispiel für Claude Desktop:Bei Verwendung der Binärdatei:Bei Verwendung von Docker:CopyCopy
Hinweis: Wenn in Claude Desktop
Error: spawn mcp-grafana ENOENT
angezeigt wird, müssen Sie den vollständigen Pfad zumcp-grafana
angeben.
Verwenden von VSCode mit Remote-MCP-Server
Stellen Sie sicher, dass Ihre .vscode/settings.json
Folgendes enthält:
Debug-Modus
Sie können den Debug-Modus für den Grafana-Transport aktivieren, indem Sie dem Befehl das Flag -debug
hinzufügen. Dadurch wird eine detaillierte Protokollierung der HTTP-Anfragen und -Antworten zwischen dem MCP-Server und der Grafana-API ermöglicht, was bei der Fehlerbehebung hilfreich sein kann.
Um den Debug-Modus mit der Claude Desktop-Konfiguration zu verwenden, aktualisieren Sie Ihre Konfiguration wie folgt:
Bei Verwendung der Binärdatei:
Bei Verwendung von Docker:
Entwicklung
Beiträge sind willkommen! Bitte melden Sie ein Problem oder senden Sie einen Pull Request, wenn Sie Vorschläge oder Verbesserungen haben.
Dieses Projekt ist in Go geschrieben. Installieren Sie Go gemäß den Anweisungen für Ihre Plattform.
Um den Server auszuführen, verwenden Sie:
Sie können den Server auch mit dem SSE-Transport in einem benutzerdefinierten Docker-Image ausführen. Verwenden Sie zum Erstellen des Images
Und um das Image auszuführen, verwenden Sie:
Testen
Es stehen drei Arten von Tests zur Verfügung:
- Unit-Tests (keine externen Abhängigkeiten erforderlich):
Sie können Unit-Tests auch mit Folgendem ausführen:
- Integrationstests (erfordert, dass Docker-Container aktiv und betriebsbereit sind):
- Cloud-Tests (erfordert Cloud-Grafana-Instanz und Anmeldeinformationen):
Hinweis: Cloud-Tests werden automatisch in CI konfiguriert. Für die lokale Entwicklung müssen Sie Ihre eigene Grafana Cloud-Instanz und Anmeldeinformationen einrichten.
Für umfassendere Integrationstests ist eine lokale Grafana-Instanz auf Port 3000 erforderlich. Sie können eine solche mit Docker Compose starten:
Die Integrationstests können ausgeführt werden mit:
Wenn Sie weitere Tools hinzufügen, fügen Sie bitte Integrationstests dafür hinzu. Die vorhandenen Tests sollten eine gute Grundlage sein.
Fusseln
Um den Code zu linten, führen Sie Folgendes aus:
Dies beinhaltet einen benutzerdefinierten Linter, der auf nicht maskierte Kommas in jsonschema
Struktur-Tags prüft. Die Kommas in description
müssen mit \\,
um eine stille Kürzung zu verhindern. Sie können diesen Linter nur mit folgendem Befehl ausführen:
Weitere Einzelheiten finden Sie in der JSONSchema Linter-Dokumentation .
Lizenz
Dieses Projekt ist unter der Apache-Lizenz, Version 2.0 , lizenziert.
This server cannot be installed
hybrid server
The server is able to function both locally and remotely, depending on the configuration or use case.
Ein Model Context Protocol (MCP)-Server für Grafana.
Dies ermöglicht den Zugriff auf Ihre Grafana-Instanz und das umgebende Ökosystem.
Related MCP Servers
- AsecurityFlicenseAqualityA Model Context Protocol (MCP) server that provides programmatic access to the Supabase Management API. This server allows AI models and other clients to manage Supabase projects and organizations through a standardized interface.Last updated -88427JavaScript
- -securityAlicense-qualityA Model Context Protocol (MCP) server that lets you seamlessly use OpenAI's models right from Claude.Last updated -12428JavaScriptMIT License
- -securityAlicense-qualitymcp server that allows to do actual actions related to solana first version adds knowledge about RPC methods and how to call themLast updated -18RustThe Unlicense
- AsecurityFlicenseAqualityAn MCP server that allows users to interact with YNAB data, enabling access to account balances, transactions, and the creation of new transactions through the Model Context Protocol.Last updated -101Python