Skip to main content
Glama
RomanovVIII

ST67 Home Assistant MCP

by RomanovVIII

Preview a bounded Lovelace card edit

ha_lovelace_preview
Read-onlyIdempotent

Preview changes to a Home Assistant Lovelace card before saving. Apply explicit add/replace/remove operations to see exact before/after and dashboard version without executing or saving.

Instructions

Read-only preview: explicit add/replace/remove operations within ONE existing card (max 65,536 UTF-8 JSON bytes; this is not a guaranteed supported size). The complete MCP preview, including both representations and escaping, must fit 160,000 bytes. Returns full before/after, exact operations, a whole-dashboard version and preview hash. No code execution or saving. Refuses truncated or redacted reviews. The hash is a content identifier, not permission to write.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
cardPathYes
dashboardYes
operationsYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv0.2.0

TDQS

A4.4/5.0
Behavior5/5

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

Beyond the annotations (readOnlyHint, destructiveHint:false, idempotentHint:true), the description reveals key behaviors: hard size limits, refusal of truncated/redacted reviews, return of exact operations and whole-dashboard version, and that the hash is not a write permission. This gives the agent critical runtime expectations not encoded in annotations.

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

Conciseness5/5

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

Three dense sentences front-load the most important fact (read-only preview) and every clause earns its place, covering scope, limits, return values, side effects, hash semantics, and refusal behavior. No filler or redundancy.

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?

For a tool with no output schema, the description provides a thorough picture of what is returned and what the tool refuses to do, and it covers safety and size limits. The only notable gap is the lack of parameter-level detail for dashboard and cardPath, which prevents it from being fully self-contained.

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

Parameters3/5

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

With 0% schema description coverage, the description must compensate, and it does add meaning around operations being explicit add/replace/remove within ONE existing card, plus size constraints. However, it does not explain the dashboard parameter (including null usage) or cardPath structure, which are central to calling the tool correctly.

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?

The description clearly identifies a read-only preview for explicit add/replace/remove operations within one existing Lovelace card, with specific return values like before/after and a preview hash. This differentiates it from ha_lovelace_apply and other siblings by focusing on preview semantics rather than mutation.

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

Usage Guidelines4/5

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

The description states this is a read-only preview with no code execution or saving, making it clear it should be used for dry-run/bounded card edits rather than applying changes. It does not explicitly name ha_lovelace_apply as the alternative, but the preview-vs-apply contrast is strongly implied by the sibling set and the wording.

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