/assistant-mcp
Connect AI coding agents (Claude Code, Cursor, VS Code, OpenAI Codex) to Grafana Cloud via the `mcp-grafana` Model Context Protocol server. Installs the server with `go install`, generates a Grafana service-account token, wires `~/.claude/settings.json` or `~/.cursor/mcp.json`
$ npx -y skills add grafana/skills --skill assistant-mcp --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
- Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
- You can call itInvoke it directly when you want it.
- Slash command
/assistant-mcp
Context preview
The summary Claude sees to decide when to auto-load this skill.
Connect AI coding agents (Claude Code, Cursor, VS Code, OpenAI Codex) to Grafana Cloud via the `mcp-grafana` Model Context Protocol server. Installs the server with `go install`, generates a Grafana service-account token, wires `~/.claude/settings.json` or `~/.cursor/mcp.json`
SKILL.md
assistant-mcp.SKILL.mdname: assistant-mcp
license: Apache-2.0
description: Connect AI coding agents (Claude Code, Cursor, VS Code, OpenAI Codex) to Grafana Cloud via the `mcp-grafana` Model Context Protocol server. Installs the server with `go install`, generates a Grafana service-account token, wires `~/.claude/settings.json` or `~/.cursor/mcp.json` with the `command` + `env` block, runs `--disable-write` for safer read-only sessions, switches to SSE transport for team-shared / VS Code setups, and verifies with `/mcp` + a `list_datasources` round-trip. Use when connecting Claude Code to Grafana, setting up MCP for Grafana, configuring the Grafana MCP server, using Grafana tools in Cursor/VS Code, querying Grafana from an AI agent, sharing the MCP server across a team — even when the user says "give my agent Grafana access", "let Claude see my metrics", or "Cursor + Grafana" without saying "MCP".
Grafana Cloud MCP Server Setup
The Grafana MCP server exposes Grafana Cloud capabilities as tools that AI agents can call via the Model Context Protocol. Agents can then query metrics, search dashboards, manage alerts, investigate incidents, and interact with Fleet Management without leaving the coding environment.
Transports: `stdio` (agent spawns the server as a subprocess, simplest), or `SSE` (server runs independently, agents connect via HTTP — see [references/sse-transport.md](references/sse-transport.md)).
Common Workflows
Connecting Claude Code to Grafana (stdio)
# 1. Install the server
go install github.com/grafana/mcp-grafana/cmd/mcp-grafana@latest
# 2. Verify the binary
mcp-grafana --version
# If "command not found": ensure $GOPATH/bin (or $HOME/go/bin) is on PATH.
3. **Get a service-account token**: Grafana Cloud → Administration → Service Accounts → create with `Viewer` role (add `Editor` only if you need writes) → generate token. Note the Grafana URL (e.g. `https://myorg.grafana.net`).
4. **Wire `~/.claude/settings.json`** (or project-local `.claude/settings.json`):
{
"mcpServers": {
"grafana": {
"command": "mcp-grafana",
"args": ["--disable-write"],
"env": {
"GRAFANA_URL": "https://myorg.grafana.net",
"GRAFANA_API_KEY": "glsa_xxxx"
}
}
}
}`--disable-write` is the safer default — drop it once you've verified the read path works.
5. **Restart Claude Code, then verify**:
/mcp
The `grafana` server should appear with its tool list. Then ask:
What data sources are configured in my Grafana instance?
A clean response = working. If the tool call fails:
- Check `GRAFANA_URL` has no trailing slash
- Confirm the API key hasn't expired
- Re-run with `mcp-grafana --debug` to see raw request/response
Connecting Cursor
Same Grafana token. Settings → Features → MCP Servers (or edit `~/.cursor/mcp.json`):
{
"mcpServers": {
"grafana": {
"command": "mcp-grafana",
"args": ["--disable-write"],
"env": {
"GRAFANA_URL": "https://myorg.grafana.net",
"GRAFANA_API_KEY": "glsa_xxxx"
}
}
}
}Verify the same way — Cursor surfaces MCP servers in its agent panel; run a query like "list dashboards tagged kubernetes".
Sharing the server across a team (SSE)
Switch from `stdio` to `SSE` so the server runs once and many agents connect to it. Full setup with VS Code config in [references/sse-transport.md](references/sse-transport.md).
Security considerations
- API keys belong in env vars or a secrets manager — never in committed files.
- Use `--disable-write` for shared environments and CI; only lift it on the specific machine where the agent should be allowed to mutate Grafana.
- Scope service-account permissions to the minimum: `Viewer` is enough for queries and dashboard reads. Only grant `Editor` when the agent needs to create dashboards or annotations.
- Rotate tokens periodically via Administration → Service Accounts.
References
- [`references/tools.md`](references/tools.md) — full list of MCP tools exposed (query / dashboard / alerting / Fleet Management / annotations) and how to discover the live set
- [`references/sse-transport.md`](references/sse-transport.md) — SSE setup for team sharing and VS Code, with stdio-vs-SSE decision matrix + common failure modes
- [`references/a2a.md`](references/a2a.md) — Agent-to-Agent (A2A) protocol for delegating reasoning to the Grafana Assistant (vs direct tool calls via MCP)
External resources
- [Grafana MCP server (github.com/grafana/mcp-grafana)](https://github.com/grafana/mcp-grafana)
- [Model Context Protocol specification](https://spec.modelcontextprotocol.io/)
- [Grafana Cloud API documentation](https://grafana.com/docs/grafana-cloud/developer-resources/api-reference/)
- [Grafana Assistant documentation](https://grafana.com/docs/grafana-cloud/machine-learning/assistant/)
Read more
name: assistant-mcp license: Apache-2.0 description: Connect AI coding agents (Claude Code, Cursor, VS Code, OpenAI Codex) to Grafana Cloud via the `mcp-grafana` Model Context Protocol server. Installs the server with `go install`, generates a Grafana service-account token, wires `~/.claude/settings.json` or `~/.cursor/mcp.json` with the `command` + `env` block, runs `--disable-write` for safer read-only sessions, switches to SSE transport for team-shared / VS Code setups, and verifies with `/mcp` + a `list_datasources` round-trip. Use when connecting Claude Code to Grafana, setting up MCP for Grafana, configuring the Grafana MCP server, using Grafana tools in Cursor/VS Code, querying Grafana from an AI agent, sharing the MCP server across a team — even when the user says "give my agent Grafana access", "let Claude see my metrics", or "Cursor + Grafana" without saying "MCP".
Grafana Cloud MCP Server Setup
The Grafana MCP server exposes Grafana Cloud capabilities as tools that AI agents can call via the Model Context Protocol. Agents can then query metrics, search dashboards, manage alerts, investigate incidents, and interact with Fleet Management without leaving the coding environment.
Transports: `stdio` (agent spawns the server as a subprocess, simplest), or `SSE` (server runs independently, agents connect via HTTP — see [references/sse-transport.md](references/sse-transport.md)).
Common Workflows
Connecting Claude Code to Grafana (stdio)
# 1. Install the server go install github.com/grafana/mcp-grafana/cmd/mcp-grafana@latest # 2. Verify the binary mcp-grafana --version # If "command not found": ensure $GOPATH/bin (or $HOME/go/bin) is on PATH.
3. **Get a service-account token**: Grafana Cloud → Administration → Service Accounts → create with `Viewer` role (add `Editor` only if you need writes) → generate token. Note the Grafana URL (e.g. `https://myorg.grafana.net`).
4. **Wire `~/.claude/settings.json`** (or project-local `.claude/settings.json`):
{
"mcpServers": {
"grafana": {
"command": "mcp-grafana",
"args": ["--disable-write"],
"env": {
"GRAFANA_URL": "https://myorg.grafana.net",
"GRAFANA_API_KEY": "glsa_xxxx"
}
}
}
}`--disable-write` is the safer default — drop it once you've verified the read path works.
5. **Restart Claude Code, then verify**:
/mcp
The `grafana` server should appear with its tool list. Then ask:
What data sources are configured in my Grafana instance?
A clean response = working. If the tool call fails:
- Check `GRAFANA_URL` has no trailing slash
- Confirm the API key hasn't expired
- Re-run with `mcp-grafana --debug` to see raw request/response
Connecting Cursor
Same Grafana token. Settings → Features → MCP Servers (or edit `~/.cursor/mcp.json`):
{
"mcpServers": {
"grafana": {
"command": "mcp-grafana",
"args": ["--disable-write"],
"env": {
"GRAFANA_URL": "https://myorg.grafana.net",
"GRAFANA_API_KEY": "glsa_xxxx"
}
}
}
}Verify the same way — Cursor surfaces MCP servers in its agent panel; run a query like "list dashboards tagged kubernetes".
Sharing the server across a team (SSE)
Switch from `stdio` to `SSE` so the server runs once and many agents connect to it. Full setup with VS Code config in [references/sse-transport.md](references/sse-transport.md).
Security considerations
- API keys belong in env vars or a secrets manager — never in committed files.
- Use `--disable-write` for shared environments and CI; only lift it on the specific machine where the agent should be allowed to mutate Grafana.
- Scope service-account permissions to the minimum: `Viewer` is enough for queries and dashboard reads. Only grant `Editor` when the agent needs to create dashboards or annotations.
- Rotate tokens periodically via Administration → Service Accounts.
References
- [`references/tools.md`](references/tools.md) — full list of MCP tools exposed (query / dashboard / alerting / Fleet Management / annotations) and how to discover the live set
- [`references/sse-transport.md`](references/sse-transport.md) — SSE setup for team sharing and VS Code, with stdio-vs-SSE decision matrix + common failure modes
- [`references/a2a.md`](references/a2a.md) — Agent-to-Agent (A2A) protocol for delegating reasoning to the Grafana Assistant (vs direct tool calls via MCP)
External resources
- [Grafana MCP server (github.com/grafana/mcp-grafana)](https://github.com/grafana/mcp-grafana)
- [Model Context Protocol specification](https://spec.modelcontextprotocol.io/)
- [Grafana Cloud API documentation](https://grafana.com/docs/grafana-cloud/developer-resources/api-reference/)
- [Grafana Assistant documentation](https://grafana.com/docs/grafana-cloud/machine-learning/assistant/)
Public skills for working with Grafana, Prometheus, Loki, Tempo, Pyroscope, k6, and the broader LGTM observability stack. Compatible with Claude Code, Cursor, Codex, and any tool supporting the Agent Skills open standard.
Repo: grafana/skills
Other skills on grafana-skills.
- /admission-control
Use when the user asks to "write a validator", "add validation", "implement admission control", "write a mutating webhook", "add a mutation handler", "validate incoming resources", "implement admission logic", "add admission webhooks", "write ingress validation", or asks how to
Open skill - /app-sdk-concepts
Use when starting any grafana-app-sdk work — scaffolding a Grafana app, initializing a Grafana App Platform app, picking a deployment mode (standalone operator / grafana/apps / frontend-only), wiring app-specific config, or onboarding to the SDK. Covers `grafana-app-sdk` CLI
Open skill - /cue-kind-definition
Author CUE kind definitions for grafana-app-sdk apps - schemas, versioning, field constraints, named type definitions, custom routes, and codegen configuration. Scaffolds kinds via `grafana-app-sdk project kind add`, writes spec/status schemas with type constraints (regex, enum,
Open skill - /reconciler-logic
Implement reconcilers and watchers for grafana-app-sdk apps — write `TypedReconciler[*MyKind]` reconcile functions, apply generation-based skip patterns, do conflict-safe status updates via `resource.UpdateObject`, configure `BasicReconcileOptions` (namespace, label/field
Open skill - /adaptive-metrics
Cut Grafana Cloud Metrics cost by shrinking active-series count with Adaptive Metrics aggregation rules — auto-recommendations from query history, custom exact/regex rules, label-drop config, unused-metric detection, and Alloy remote_write fallback. Use when investigating a high
Open skill - /admin
Manage Grafana Cloud accounts — organizations, stacks, RBAC roles and assignments, SSO/SAML/OAuth/GitHub auth, service accounts for CI/CD, user invites, team membership, and API-driven provisioning. Creates stacks via the Cloud API, mints service-account tokens, applies role
Open skill

