# [[Grafana Assistant]]
%%
[repo](https://github.com/grafana/grafana-assistant-app)
%%
![[Grafana Assistant.svg]]
Grafana Assistant is a feature in [[Grafana Cloud]] that adds an [[Large Language Model|LLM]] as a side panel in Grafana, allowing you to write queries, create dashboards, and investigate issues by chatting in natural language. [^1]
It was originally created as an internal hackathon project by [[Cyril Tovena]] and others, and is now publicly available for [[Grafana OSS]] and on [[Grafana Cloud]].

## How to enable Assistant for Grafana OSS
Assistant itself is not open-source, but you can now use it with your self-hosted or open-source Grafana instance by linking it to a [[Grafana Cloud]] account. Having a Grafana Cloud account (free or paid) gives you access to use Assistant in OSS.

### Prerequisites
- OSS Grafana v13 or higher
- A [[Grafana Cloud]] account (generous inclusions on the free tier — check the [pricing page](https://grafana.com/pricing/))
### Enabling Assistant
1. Go to **Administration** → **Plugins** and search for **Assistant**.
2. Click **Install**.
3. Refresh the page, then go to the **Connection** tab.
4. Click **Start Connection**. This will prompt you to log into Grafana Cloud.
5. Select the organization and stack you want, then click **Authorize connection**.
6. Once you see "Connection Authorized Successfully", close the tab and return to the Grafana Assistant plugin.
Your self-hosted Grafana is now linked to your Grafana Cloud account, and Assistant is available via the new icon in the upper right-hand corner of Grafana.
### Creating your first dashboard
If you don't have any data yet, every Grafana instance comes with a built-in **TestData** data source:
1. Go to **Data sources** → **Add data source** → **TestData**.
2. Click **Save & test** to confirm it's working.
3. Open Assistant from the upper right-hand corner.
4. Switch from the general mode to **Dashboarding** mode (better for creating and managing dashboards).
5. Ask Assistant something like: *"Could you create a server health dashboard for me using the TestData data source?"*
Assistant will get you ~80% of the way there on the first pass, and you can ask it to tweak panels or edit queries manually as needed.
## Features and capabilities
Grafana Assistant can:
- Edit dashboards in natural language, including colors, panel types, and layout
- Write and fix queries across multiple data sources
- Work on any data source, including non-observability ones (REST APIs, arbitrary data via [[Infinity]])
- Handle one-off exploratory queries without needing a persistent panel
- Lower the barrier to entry for new [[Grafana]] users who don't know where to start
It also has a "Learn Mode" that walks users through step-by-step explanations and courses.
## Architecture
Grafana Assistant is an agentic chat embedded in the Grafana sidebar, with tool calls happening client-side in the browser. The base model is [[Claude family of models]] (via the [[Anthropic]] API), with a coordinator agent routing to sub-agents and [[MCP]] tools as needed.
The context budget is roughly 40k tokens — split between the system prompt and available tools — so the team uses tool overloading (combining related tools into a single tool with an operation parameter) to conserve space. Errors are passed back to the model so it can self-correct. Reasoning is shown to the user through expandable tool-call sections, which helps build trust, especially during incidents.
There's also a backend autonomous multi-agent workflow for async operations like [[Investigations]], which can run without the user being present (e.g., triggered from Slack or mobile). Investigations is the successor to [[Sift Investigations]], which is being deprecated — Sift's fixed catalogue of mostly Kubernetes-specific checks is being replaced by a generative, environment-aware workflow.
## MCP and the broader AI ecosystem
Grafana Assistant has its own [[MCP]] server, alongside a separate [[Grafana MCP server]]. [[k6]] has an MCP server as well. Grafana Assistant is part of a broader AI product suite under the "Actually Useful AI" umbrella, which also includes [[Investigations]], dynamic alerting, and [[Grafana Machine Learning|ML]] components.
Architecturally, the **Grafana Cloud–hosted MCP server actually lives inside the `grafana-assistant-app` repo** — it imports the open-source `mcp-grafana` server as a Go dependency and layers Assistant-native tools (like `ask_assistant`) on top. Cloud picks up OSS tool changes only when it bumps the dependency and redeploys, not automatically. The self-hosted OSS `mcp-grafana` server has no such dependency and runs fully independently of Assistant. (Verified via #proj-grafana-mcp, 2026-08-18.)
## Evaluation
The team uses a two-tier evaluation system: manual tool curation plus an LLM-as-judge that automatically scores conversations. Per-message thumbs-up/down feedback feeds a dashboard that tracks tool performance over time.
## Use cases
Some common use cases:
- Creating or editing dashboards from natural language
- Exploring unfamiliar APIs and data sources
- Incident response with visible reasoning
- Learning Grafana (complementary to [[Pathfinder]])
## Pricing
Billed per **active AI user** per month, plus a shared token pool for system-initiated (non-interactive) usage. Verified against the [pricing page](https://grafana.com/pricing/), 2026-08-18:
- **Free**: 3 active AI users/month included (40M tokens/user/mo), plus a 25M tokens/mo shared pool for system-initiated usage.
- **Pro**: $20/active AI user/month (includes 40M tokens/user), overage at $2/1M tokens, volume discounts at scale.
- **Enterprise/contracted**: custom terms — contact sales.
- **Active AI user** = anyone who messages Assistant, clicks an action (e.g. "Explain this panel"), connects through the **Cloud MCP server**, or triggers an Automation — across any surface (Grafana, Slack/Teams, mobile, or the [[GCX|gcx]] CLI). Connecting via Cloud MCP counts you as active even at zero token usage.
- **[[GCX|gcx]] and [[Grafana MCP|Grafana MCP]] data-access calls consume no tokens** — the reasoning happens in your own agent's model. Tokens are only spent when Grafana's own model does the work: chatting with Assistant through `gcx`, calling `ask_assistant` via MCP, or running an investigation.
- Assistant Investigations usage is tracked but not billed until **1 Oct 2026**.
Always check the pricing page for current figures — these are point-in-time verified numbers, not guaranteed to stay current.
%%
[Here's an AI-generated report](https://docs.google.com/document/d/1PtsjbuiMBCXdpdAfJX3hNOquKh00lmkKwnkJHpVlU2I/edit?tab=t.0#heading=h.yt806v8asw25) identifying the top 3 use cases and pain points of Grafana Assistant.
%%
## Pain points and limitations
- No "bring your own API key" support yet
- Enterprise or locked-down orgs can be blocked by policies against external models
- Shared-conversation retention is still being worked out
## Positioning
Grafana is positioning itself as being at the cutting edge of AI in observability while remaining reasonably skeptical of AI hype. The slogan is "Actually Useful AI."
Within the Grafana learning experience, Grafana Assistant and [[Grafana Pathfinder]] serve different audiences: Grafana Assistant is for "I want to get stuff done but don't know how," while Pathfinder is for "I want to learn Grafana."
## Resources
### Context Window
Context Window is a podcast about all things AI at Grafana, which means that Assistant features prominently in many of them. Below are some episodes about Assistant:
- [[sources/Video/How we built Grafana Assistant - a conversation about AI development for observability|How we built Grafana Assistant - a conversation about AI development for observability]]
- [[Live - Grafana Sigil and AI O11y (Context Window 03)]]
%%
- [[Developer Advocacy for Grafana Assistant]]
%%
%%
# Excalidraw Data
## Text Elements
## Drawing
```json
{
"type": "excalidraw",
"version": 2,
"source": "https://github.com/zsviczian/obsidian-excalidraw-plugin/releases/tag/2.1.4",
"elements": [
{
"id": "4y8R7iOA",
"type": "text",
"x": 118.49495565891266,
"y": -333.44393157958984,
"width": 3.8599853515625,
"height": 24,
"angle": 0,
"strokeColor": "#1e1e1e",
"backgroundColor": "transparent",
"fillStyle": "solid",
"strokeWidth": 2,
"strokeStyle": "solid",
"roughness": 1,
"opacity": 100,
"groupIds": [],
"frameId": null,
"roundness": null,
"seed": 967149026,
"version": 2,
"versionNonce": 939059582,
"isDeleted": true,
"boundElements": null,
"updated": 1713723615080,
"link": null,
"locked": false,
"text": "",
"rawText": "",
"fontSize": 20,
"fontFamily": 4,
"textAlign": "left",
"verticalAlign": "top",
"containerId": null,
"originalText": "",
"lineHeight": 1.2
}
],
"appState": {
"theme": "dark",
"viewBackgroundColor": "#ffffff",
"currentItemStrokeColor": "#1e1e1e",
"currentItemBackgroundColor": "transparent",
"currentItemFillStyle": "solid",
"currentItemStrokeWidth": 2,
"currentItemStrokeStyle": "solid",
"currentItemRoughness": 1,
"currentItemOpacity": 100,
"currentItemFontFamily": 4,
"currentItemFontSize": 20,
"currentItemTextAlign": "left",
"currentItemStartArrowhead": null,
"currentItemEndArrowhead": "arrow",
"scrollX": 583.2388916015625,
"scrollY": 573.6323852539062,
"zoom": {
"value": 1
},
"currentItemRoundness": "round",
"gridSize": null,
"gridColor": {
"Bold": "#C9C9C9FF",
"Regular": "#EDEDEDFF"
},
"currentStrokeOptions": null,
"previousGridSize": null,
"frameRendering": {
"enabled": true,
"clip": true,
"name": true,
"outline": true
}
},
"files": {}
}
```
%%
[^1]: Tovena, C. & Ryer, M. (2025). *A context-aware LLM agent built directly into Grafana Cloud: Introducing Grafana Assistant.* Retrieved from the Grafana Labs blog here: https://grafana.com/blog/2025/05/07/llm-grafana-assistant/