Skip to main content
Glama

Grafana

Official
by grafana
Apache 2.0
1,825
  • Linux
  • Apple

Servidor MCP de Grafana

Un servidor de Protocolo de Contexto de Modelo (MCP) para Grafana.

Esto proporciona acceso a su instancia de Grafana y al ecosistema circundante.

Características

  • [x] Buscar paneles de control

  • [x] Paneles de control

    • [x] Obtener el panel por UID

    • [x] Actualizar o crear un panel (DESCARGO DE RESPONSABILIDAD: Tenga cuidado con las ventanas de contexto. Consulte https://github.com/grafana/mcp-grafana/issues/101 para obtener más detalles)

    • [x] Obtener el título, la cadena de consulta y la información de la fuente de datos (incluido el UID y el tipo, si está disponible) de cada panel en un tablero

  • [x] Listar y obtener información de la fuente de datos

  • [ ] Consultar fuentes de datos

    • [x] Prometeo

    • [x] Loki

      • [x] Consultas de registro

      • [x] Consultas métricas

    • [ ] Ritmo

    • [ ] Piroscopio

  • [x] Consultar metadatos de Prometheus

    • [x] Metadatos métricos

    • [x] Nombres de métricas

    • [x] Nombres de etiquetas

    • [x] Valores de etiqueta

  • [x] Consultar metadatos de Loki

    • [x] Nombres de etiquetas

    • [x] Valores de etiqueta

    • [x] Estadísticas

  • [x] Buscar, crear, actualizar y cerrar incidentes

  • [x] Iniciar investigaciones de Sift y ver los resultados

    • [x] Crear investigaciones

    • [x] Enumere las investigaciones con un parámetro límite

    • [x] Obtener investigación

    • [x] Obtener análisis

    • [x] Encuentre patrones de error en los registros usando Sift

    • [x] Encuentra solicitudes lentas usando Sift

    • [ ] Agregar herramientas en los otros controles de tamizado

  • [ ] Alerta

    • [x] Listar y obtener información de reglas de alerta

    • [x] Obtener estados de reglas de alerta (activación/normal/error/etc.)

    • [ ] Crear y cambiar reglas de alerta

    • [x] Lista de puntos de contacto

    • [ ] Crear y cambiar puntos de contacto

  • [x] Acceda a la funcionalidad de Grafana OnCall

    • [x] Enumerar y administrar horarios

    • [x] Obtener detalles del turno

    • [x] Obtener los usuarios de guardia actuales

    • [x] Lista de equipos y usuarios

    • [ ] Lista de grupos de alerta

  • [x] Funcionalidad de administrador

    • [ ] Lista de usuarios

    • [x] Lista de equipos

    • [ ] Lista de roles

    • [ ] Enumere las asignaciones de roles

    • [ ] Asignaciones de roles de depuración

La lista de herramientas es configurable, por lo que puede elegir qué herramientas quiere que estén disponibles para el cliente MCP. Esto resulta útil si no utiliza alguna funcionalidad o si no desea ocupar demasiado espacio en la ventana de contexto. Para deshabilitar una categoría de herramientas, utilice el indicador --disable-<category> al iniciar el servidor. Por ejemplo, para deshabilitar las herramientas OnCall, utilice --disable-oncall .

Herramientas

Herramienta

Categoría

Descripción

list_teams

Administración

Listar todos los equipos

search_dashboards

Buscar

Buscar paneles de control

get_dashboard_by_uid

Panel

Obtener un panel por uid

update_dashboard

Panel

Actualizar o crear un nuevo panel

get_dashboard_panel_queries

Panel

Obtener el título del panel, las consultas, el UID de la fuente de datos y el tipo desde un tablero

list_datasources

Fuentes de datos

Lista de fuentes de datos

get_datasource_by_uid

Fuentes de datos

Obtener una fuente de datos por uid

get_datasource_by_name

Fuentes de datos

Obtener una fuente de datos por nombre

query_prometheus

Prometeo

Ejecutar una consulta en una fuente de datos de Prometheus

list_prometheus_metric_metadata

Prometeo

Lista de metadatos de métricas

list_prometheus_metric_names

Prometeo

Lista de nombres de métricas disponibles

list_prometheus_label_names

Prometeo

Lista de nombres de etiquetas que coinciden con un selector

list_prometheus_label_values

Prometeo

Lista de valores para una etiqueta específica

list_incidents

Incidente

Lista de incidentes en Grafana Incident

create_incident

Incidente

Crear un incidente en Grafana Incident

add_activity_to_incident

Incidente

Agregar un elemento de actividad a un incidente en Grafana Incident

resolve_incident

Incidente

Resolver un incidente en Grafana Incident

query_loki_logs

Loki

Consultar y recuperar registros utilizando LogQL (consultas de registros o métricas)

list_loki_label_names

Loki

Enumere todos los nombres de etiquetas disponibles en los registros

list_loki_label_values

Loki

Lista de valores para una etiqueta de registro específica

query_loki_stats

Loki

Obtener estadísticas sobre los flujos de registros

list_alert_rules

Alerta

Lista de reglas de alerta

get_alert_rule_by_uid

Alerta

Obtener regla de alerta por UID

list_oncall_schedules

De guardia

Lista de horarios de Grafana OnCall

get_oncall_shift

De guardia

Obtenga detalles de un turno específico de OnCall

get_current_oncall_users

De guardia

Obtener usuarios que actualmente están de guardia para un horario específico

list_oncall_teams

De guardia

Lista de equipos de Grafana OnCall

list_oncall_users

De guardia

Lista de usuarios de Grafana OnCall

get_investigation

Tamizar a

Recuperar una investigación de Sift existente por su UUID

get_analysis

Tamizar a

Recuperar un análisis específico de una investigación de Sift

list_investigations

Tamizar a

Recuperar una lista de investigaciones de Sift con un límite opcional

find_error_pattern_logs

Tamizar a

Encuentra patrones de error elevados en los registros de Loki.

find_slow_requests

Tamizar a

Encuentra solicitudes lentas de las fuentes de datos de tempo relevantes.

Uso

  1. Cree una cuenta de servicio en Grafana con permisos suficientes para usar las herramientas que desee, genere un token de cuenta de servicio y cópielo al portapapeles para usarlo en el archivo de configuración. Consulte la documentación de Grafana para obtener más información.

  2. Tiene varias opciones para instalar mcp-grafana :

    • Imagen de Docker : utilice la imagen de Docker prediseñada desde Docker Hub:

      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
    • Descargar binario : descargue la última versión de mcp-grafana desde la página de versiones y colóquela en su $PATH .

    • Compilar desde el código fuente : Si tiene instalada una cadena de herramientas Go, también puede compilarla e instalarla desde el código fuente. Para ello, utilice la variable de entorno GOBIN para especificar el directorio donde se instalará el binario. Esta variable también debe estar en su PATH .

      GOBIN="$HOME/go/bin" go install github.com/grafana/mcp-grafana/cmd/mcp-grafana@latest
  3. Agregue la configuración del servidor al archivo de configuración del cliente. Por ejemplo, para Claude Desktop:

    Si se utiliza el binario:

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

    Si usa 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>" } } } }

Nota: si ve Error: spawn mcp-grafana ENOENT en Claude Desktop, debe especificar la ruta completa a mcp-grafana .

Uso de VSCode con un servidor MCP remoto

Asegúrese de que su .vscode/settings.json incluya:

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

Modo de depuración

Puede habilitar el modo de depuración para el transporte de Grafana añadiendo la opción -debug al comando. Esto proporcionará un registro detallado de las solicitudes y respuestas HTTP entre el servidor MCP y la API de Grafana, lo cual puede ser útil para la resolución de problemas.

Para utilizar el modo de depuración con la configuración de Claude Desktop, actualice su configuración de la siguiente manera:

Si se utiliza el binario:

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

Si usa 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>" } } } }

Desarrollo

¡Agradecemos sus contribuciones! Abra un problema o envíe una solicitud de incorporación de cambios si tiene alguna sugerencia o mejora.

Este proyecto está escrito en Go. Instale Go siguiendo las instrucciones para su plataforma.

Para ejecutar el servidor, utilice:

make run

También puedes ejecutar el servidor usando el transporte SSE dentro de una imagen de Docker personalizada. Para crear la imagen, usa

make build-image

Y para ejecutar la imagen, usa:

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

Pruebas

Hay tres tipos de pruebas disponibles:

  1. Pruebas unitarias (no se requieren dependencias externas):

make test-unit

También puedes ejecutar pruebas unitarias con:

make test
  1. Pruebas de integración (requiere que los contenedores Docker estén en funcionamiento):

make test-integration
  1. Pruebas en la nube (requiere instancia de Grafana en la nube y credenciales):

make test-cloud

Nota: Las pruebas en la nube se configuran automáticamente en CI. Para el desarrollo local, deberá configurar su propia instancia y credenciales de Grafana Cloud.

Las pruebas de integración más completas requerirán que una instancia de Grafana se ejecute localmente en el puerto 3000; puede iniciar una con Docker Compose:

docker-compose up -d

Las pruebas de integración se pueden ejecutar con:

make test-all

Si va a agregar más herramientas, incorpore pruebas de integración para ellas. Las pruebas existentes deberían ser un buen punto de partida.

Pelusa

Para depurar el código, ejecute:

make lint

Esto incluye un linter personalizado que busca comas sin escape en las etiquetas de estructura jsonschema . Las comas en los campos description deben escaparse con \\, para evitar el truncamiento silencioso. Puede ejecutar este linter con:

make lint-jsonschema

Consulte la documentación de JSONSchema Linter para obtener más detalles.

Licencia

Este proyecto está licenciado bajo la Licencia Apache, Versión 2.0 .

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

hybrid server

The server is able to function both locally and remotely, depending on the configuration or use case.

Un servidor de Protocolo de Contexto de Modelo (MCP) para Grafana.

Esto proporciona acceso a su instancia de Grafana y al ecosistema circundante.

  1. Características
    1. Herramientas
  2. Uso
    1. Modo de depuración
  3. Desarrollo
    1. Pruebas
    2. Pelusa
  4. Licencia

    Related MCP Servers

    • A
      security
      -
      license
      A
      quality
      A beginner-friendly Model Context Protocol (MCP) server that helps users understand MCP concepts, provides interactive examples, and lists available MCP servers. This server is designed to be a helpful companion for developers working with MCP. Also comes with a huge list of servers you can install.
      Last updated -
      3
      16
      63
      Apache 2.0
    • -
      security
      -
      license
      -
      quality
      MCP Server simplifies the implementation of the Model Context Protocol by providing a user-friendly API to create custom tools and manage server workflows efficiently.
      Last updated -
      3
      4
      MIT License
    • -
      security
      -
      license
      -
      quality
      MCP Server provides a simpler API to interact with the Model Context Protocol by allowing users to define custom tools and services to streamline workflows and processes.
      Last updated -
      6
      3
      MIT License
    • A
      security
      -
      license
      A
      quality
      A Model Context Protocol (MCP) server designed to easily dump your codebase context into Large Language Models (LLMs).
      Last updated -
      1
      24
      2
      Apache 2.0

    View all related MCP servers

    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