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
Сервер протокола контекста модели (MCP) для Grafana.
Это обеспечивает доступ к вашему экземпляру 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
- [ ] Добавить инструменты для других проверок Sift
- [ ] Оповещение
- [x] Список и выборка информации о правилах оповещения
- [x] Получить статусы правил оповещения (срабатывание/нормальное/ошибка/и т. д.)
- [ ] Создание и изменение правил оповещения
- [x] Список контактных точек
- [ ] Создание и изменение точек контакта
- [x] Доступ к функциональности Grafana OnCall
- [x] Список и управление расписаниями
- [x] Получить данные смены
- [x] Получить текущих дежурных пользователей
- [x] Список команд и пользователей
- [ ] Список групп оповещений
Список инструментов настраивается, поэтому вы можете выбрать, какие инструменты вы хотите сделать доступными для клиента MCP. Это полезно, если вы не используете определенные функции или не хотите занимать слишком много места в окне контекста. Чтобы отключить категорию инструментов, используйте флаг --disable-<category>
при запуске сервера. Например, чтобы отключить инструменты OnCall, используйте --disable-oncall
.
Инструменты
Инструмент | Категория | Описание |
---|---|---|
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 Incident |
create_incident | Инцидент | Создать инцидент в Grafana Incident |
add_activity_to_incident | Инцидент | Добавить элемент действия к инциденту в Grafana Incident |
resolve_incident | Инцидент | Разрешить инцидент в Grafana Incident |
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 | OnCall | Список расписаний от Grafana OnCall |
get_oncall_shift | OnCall | Получите подробную информацию о конкретной смене OnCall |
get_current_oncall_users | OnCall | Получить пользователей, которые в данный момент находятся на дежурстве по определенному графику |
list_oncall_teams | OnCall | Список команд из Grafana OnCall |
list_oncall_users | OnCall | Список пользователей из Grafana OnCall |
get_investigation | Просеять | Получить существующее расследование Sift по его UUID |
get_analysis | Просеять | Извлечь конкретный анализ из расследования Sift |
list_investigations | Просеять | Получить список расследований Sift с необязательным ограничением |
find_error_pattern_logs | Просеять | Находит повышенные шаблоны ошибок в журналах Loki. |
find_slow_requests | Просеять | Находит медленные запросы из соответствующих источников данных о темпе. |
Использование
- Создайте учетную запись службы в Grafana с достаточными правами для использования инструментов, которые вы хотите использовать, сгенерируйте токен учетной записи службы и скопируйте его в буфер обмена для использования в файле конфигурации. Подробности см. в документации Grafana .
- У вас есть несколько вариантов установки
mcp-grafana
:- Образ Docker : используйте готовый образ Docker из Docker Hub:Copy
- Загрузите двоичный файл : Загрузите последнюю версию
mcp-grafana
со страницы релизов и поместите ее в$PATH
. - Сборка из исходного кода : Если у вас установлен Go toolchain, вы также можете собрать и установить его из исходного кода, используя переменную среды
GOBIN
для указания каталога, в который должен быть установлен двоичный файл. Он также должен быть в вашемPATH
.Copy
- Образ Docker : используйте готовый образ Docker из Docker Hub:
- Добавьте конфигурацию сервера в файл конфигурации клиента. Например, для Claude Desktop:При использовании двоичного файла:При использовании Docker:CopyCopy
Примечание: если вы видите
Error: spawn mcp-grafana ENOENT
в Claude Desktop, вам необходимо указать полный путь кmcp-grafana
.
Использование VSCode с удаленным сервером MCP
Убедитесь, что ваш .vscode/settings.json
включает:
Режим отладки
Вы можете включить режим отладки для транспорта Grafana, добавив флаг -debug
к команде. Это обеспечит подробное протоколирование HTTP-запросов и ответов между сервером MCP и API Grafana, что может быть полезно для устранения неполадок.
Чтобы использовать режим отладки с конфигурацией Claude Desktop, обновите конфигурацию следующим образом:
При использовании двоичного файла:
При использовании Docker:
Разработка
Вклады приветствуются! Пожалуйста, откройте тему или отправьте запрос на извлечение, если у вас есть какие-либо предложения или улучшения.
Этот проект написан на Go. Установите Go, следуя инструкциям для вашей платформы.
Для запуска сервера используйте:
Вы также можете запустить сервер с помощью транспорта SSE внутри созданного образа Docker. Чтобы создать образ, используйте
А для запуска образа используйте:
Тестирование
Доступны три типа тестов:
- Модульные тесты (внешние зависимости не требуются):
Вы также можете запустить модульные тесты с помощью:
- Интеграционные тесты (требуются запущенные и работающие контейнеры Docker):
- Облачные тесты (требуется облачный экземпляр Grafana и учетные данные):
Примечание: Облачные тесты автоматически настраиваются в CI. Для локальной разработки вам нужно будет настроить собственный экземпляр Grafana Cloud и учетные данные.
Для более комплексных интеграционных тестов потребуется, чтобы экземпляр Grafana был запущен локально на порту 3000; вы можете запустить его с помощью Docker Compose:
Интеграционные тесты можно запустить с помощью:
Если вы добавляете больше инструментов, пожалуйста, добавьте интеграционные тесты для них. Существующие тесты должны быть хорошей отправной точкой.
Линтинг
Чтобы выполнить линтинг кода, выполните:
Это включает в себя пользовательский линтер, который проверяет наличие неэкранированных запятых в тегах структуры jsonschema
. Запятые в полях description
должны быть экранированы с помощью \\,
чтобы предотвратить молчаливое усечение. Вы можете запустить только этот линтер с помощью:
Более подробную информацию смотрите в документации JSONSchema Linter .
Лицензия
Данный проект лицензирован по лицензии Apache License, версия 2.0 .
This server cannot be installed
hybrid server
The server is able to function both locally and remotely, depending on the configuration or use case.
Сервер протокола контекста модели (MCP) для Grafana.
Это обеспечивает доступ к вашему экземпляру Grafana и окружающей экосистеме.
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