Skip to main content
Glama

Validate energy dashboard configuration

energy_validate_energy_prefs
Read-onlyIdempotent

Validate the saved Energy Dashboard configuration without changes, checking energy sources and device consumption for issues such as missing statistic IDs after edits.

Instructions

Validate the currently saved Energy Dashboard configuration.

Calls the WebSocket endpoint energy/validate, which checks the saved energy_sources/device_consumption for issues (e.g. a statistic ID that no longer exists) without changing anything.

Use when: checking whether the current Energy Dashboard setup has issues, e.g. after editing sources with energy_save_energy_prefs or one of the energy_add_* helpers. Not for: reading the configuration itself — use energy_get_energy_prefs. Returns: dict as returned by HA's energy/validate WS command, listing any detected issues per source. Errors: {"error": str(e)} when the WS call raises.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.3.0

TDQS

A4.5/5.0
Behavior4/5

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

Annotations already cover readOnlyHint, idempotentHint, destructiveHint and openWorldHint, so the bar is lower. The description still adds context beyond annotations: it says the check runs against the saved energy_sources/device_consumption, that it makes no changes, and it discloses the error shape ({"error": str(e)}). It does not mention rate limits or auth requirements, but for a read-only validation call that is a minor omission.

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?

Well front-loaded: purpose first, then mechanism, then use/not-for, then return and error shape. Slightly verbose in restating the endpoint name and the validation target, but every section earns its place and there is no filler.

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

Completeness4/5

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

Given the zero-param, read-only nature and the presence of an output schema, the description is nearly complete: it covers purpose, prerequisites (edit operations that should precede it), alternatives, return shape, and error behavior. The only thing it does not cover is any permission or environment precondition, which is minor here.

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?

The tool takes zero parameters, so the baseline is 4. The description correctly implies a no-argument call and explains what underlying data is inspected, adding meaning without inventing parameter details.

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?

States a specific verb (validate) and resource (currently saved Energy Dashboard configuration) and names the underlying WebSocket command 'energy/validate'. It also explicitly distinguishes itself from the sibling energy_get_energy_prefs, which reads the config rather than validating it.

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?

Includes explicit 'Use when' (after editing sources with energy_save_energy_prefs or energy_add_* helpers) and 'Not for' (reading the config — use energy_get_energy_prefs). This fully routes the agent between this tool and its closest siblings.

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

Deploy Server

Other Tools