Grafana

Servidor MCP para Grafana — gestiona paneles, fuentes de datos, alertas, carpetas y anotaciones a través de stdio

Documentación

grafana-mcp

Servidor MCP para Grafana: gestiona paneles, fuentes de datos, reglas de alerta, carpetas y anotaciones a través de stdio.

Instalación

bunx @daanrongen/grafana-mcp

Herramientas (17 en total)

DominioHerramientasCobertura
Paneleslist_dashboards, get_dashboard, create_dashboard, update_dashboard, delete_dashboardCiclo de vida completo de paneles
Fuentes de datoslist_datasources, get_datasource, create_datasource, delete_datasourceGestión de fuentes de datos
Alertaslist_alert_rules, get_alert_rule, list_alert_instancesReglas de alerta e instancias de Alertmanager activas
Carpetaslist_folders, create_folder, delete_folderOrganización de carpetas
Anotacioneslist_annotations, create_annotationAnotaciones de paneles y globales
Saludhealth_checkEstado de la instancia de Grafana

Configuración

VariableRequeridaDescripción
GRAFANA_URLURL base de Grafana (p. ej. http://localhost:3000)
GRAFANA_API_KEYToken de cuenta de servicio o clave de API de Grafana

Configuración

Claude Desktop

Edita ~/Library/Application Support/Claude/claude_desktop_config.json:

{
  "mcpServers": {
    "grafana": {
      "type": "stdio",
      "command": "bunx",
      "args": ["@daanrongen/grafana-mcp"],
      "env": {
        "GRAFANA_URL": "http://localhost:3000",
        "GRAFANA_API_KEY": "your-service-account-token"
      }
    }
  }
}

Claude Code CLI

claude mcp add grafana \
  -e GRAFANA_URL=http://localhost:3000 \
  -e GRAFANA_API_KEY=your-service-account-token \
  -- bunx @daanrongen/grafana-mcp

Desarrollo

bun install
bun run dev        # run with --watch
bun test           # run test suite
bun run typecheck  # type-check with tsc
bun run lint       # biome lint
bun run format     # biome format
bun run build      # bundle to dist/main.js

Inspección local

Usa el Inspector de MCP para explorar y llamar herramientas de forma interactiva contra una instancia real de Grafana:

GRAFANA_URL=http://localhost:3000 \
GRAFANA_API_KEY=your-service-account-token \
bun run inspect

Esto abre la interfaz del Inspector de MCP en el navegador, apuntando al servidor compilado localmente.

Arquitectura

src/
├── config.ts                   # Effect Config — GRAFANA_URL, GRAFANA_API_KEY
├── main.ts                     # Entry point — ManagedRuntime + StdioServerTransport
├── domain/
│   ├── GrafanaClient.ts        # Context.Tag service interface (port)
│   ├── errors.ts               # GrafanaError, NotFoundError
│   ├── models.ts               # Schema.Class models (Dashboard, Datasource, AlertRule, …)
│   ├── dashboards.test.ts      # Domain tests using GrafanaClientTest
│   ├── datasources.test.ts     # Domain tests using GrafanaClientTest
│   └── health.test.ts          # Domain tests using GrafanaClientTest
├── infra/
│   ├── GrafanaClientLive.ts    # Layer using fetch against the Grafana HTTP API
│   └── GrafanaClientTest.ts    # In-memory Ref-based test adapter
└── mcp/
    ├── server.ts               # McpServer wired to ManagedRuntime
    ├── utils.ts                # formatSuccess, formatError
    └── tools/                  # dashboards.ts, datasources.ts, alerts.ts, folders.ts, annotations.ts, health.ts

Licencia

MIT