Skip to main content
Glama
mgcrea

@mgcrea/mcp-grafana

by mgcrea

Grafana: Get Dashboard

grafana_get_dashboard
Read-only

Read a Grafana dashboard as a compact summary, a single panel's JSON, or full JSON for saving; choose the view to inspect structure without unnecessary layout data.

Instructions

Read a dashboard. view=summary (default) returns what is on it without the layout: variables, and every panel (rows flattened) with its id, type, unit and queries — the layout, styling and overrides left out, typically half the JSON. view=panel returns one panel's full JSON (needs panel_id). view=full returns the whole dashboard JSON with its version, which is what grafana_save_dashboard needs back; it can be tens of KB. To see the DATA a panel shows, use grafana_run_panel_query instead of reading its query and re-typing it.

Input Schema

NameRequiredDescriptionDefault
uidYesThe dashboard uid, e.g. "alertmanager-overview" (from grafana_search or a /d/<uid>/ URL).
viewNosummary (default), panel (one panel's JSON, needs panel_id), or full.summary
panel_idNoThe panel id, from grafana_get_dashboard (or `viewPanel=` in a dashboard URL), e.g. 4.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.6/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already cover the read-only and open-world profile, and the description adds genuinely useful cost/omission detail: summary drops layout, styling and overrides ("typically half the JSON"), full "can be tens of KB" and carries `version`. It stops short of error behavior (unknown uid, missing/invalid panel_id) but discloses the main behavioral trade-offs of each mode.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with the core action, then ordered by mode, with the sibling redirect last where an agent will look for it. Dense but no filler; the one compressed clause ("the layout, styling and overrides left out, typically half the JSON") takes a re-read but earns its space.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

No output schema exists, so the description carries the return-shape burden — and it does: it enumerates what summary contains (variables, panels with id/type/unit/queries), what panel returns (full panel JSON), and what full returns (whole JSON plus `version`). Combined with the save/query cross-references, an agent has enough to pick a mode and call it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3; the description earns above that by explaining what each enum value of `view` actually yields and the conditional dependency that panel_id is required only for view=panel — semantics the terse schema enum text does not convey. `uid` and `panel_id` sourcing are left to the schema, which already handles them well.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Specific verb + resource ("Read a dashboard") immediately followed by the three operating modes, each with a concrete definition of what is returned. It differentiates from siblings by naming grafana_save_dashboard (round-trip consumer of view=full) and grafana_run_panel_query (data instead of query text).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly routes each need to a mode: summary is the default for 'what is on it', panel needs panel_id, full is what save_dashboard needs back. It also names the correct alternative for a different intent ("To see the DATA a panel shows, use grafana_run_panel_query instead of reading its query and re-typing it"), including the anti-pattern to avoid.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.