Skip to main content
Glama

Update Card Builder style preset

card_builder_update_style_preset
Destructive

Update an existing style preset's CSS data or metadata in Home Assistant by supplying only the fields to change; omitted fields stay unchanged.

Instructions

Update fields of an existing Card Builder style preset.

Sends only the parameters that are not omitted to card_builder/style_presets/update; any parameter that is supplied (including data) fully replaces the previous value for that field, with no way to recover the prior value afterwards.

Use when: adjusting an existing preset's style data or metadata. Not for: creating a new preset — use card_builder_create_style_preset. Returns: the updated style-preset dict as returned by the WebSocket command.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
dataNoReplacement CSS-style configuration blob. Omit to leave the current data unchanged.
nameNoNew display name. Omit to leave the current name unchanged.
descriptionNoNew description text. Omit to leave it unchanged.
style_preset_idYesId of the preset to update, from card_builder_list_style_presets.
extends_preset_idNoReplacement parent preset id to inherit from. Omit to leave inheritance unchanged.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed5 schema fields changedv0.25.1
    • addedInput schema / properties / data / description
      Added value: +"Replacement CSS-style configuration blob. Omit to leave the current data unchanged."
    • addedInput schema / properties / description / description
      Added value: +"New description text. Omit to leave it unchanged."
    • addedInput schema / properties / extends_preset_id / description
      Added value: +"Replacement parent preset id to inherit from. Omit to leave inheritance unchanged."
    • addedInput schema / properties / name / description
      Added value: +"New display name. Omit to leave the current name unchanged."
    • addedInput schema / properties / style_preset_id / description
      Added value: +"Id of the preset to update, from card_builder_list_style_presets."
  2. Addedv0.18.1

TDQS

A4.9/5.0
Behavior5/5

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

Annotations already declare destructiveHint=true and idempotentHint=false, but the description adds critical detail: only supplied parameters are sent, each supplied parameter fully replaces the prior value for that field, and the prior value is unrecoverable. This explains the destructive mechanics beyond the annotation flag.

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?

Front-loads the core purpose, then explains replacement mechanics, then supplies use/not-for routing, then notes the return. The roughly 100-word description has no filler and each sentence earns its place.

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?

An output schema exists, so detailed return documentation is not required, but the description still summarizes the return type. Annotations cover safety, the schema covers parameters, and the description adds irreversibility semantics and usage routing, making it complete for this destructive update tool.

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 description coverage is 100%, so the baseline is 3. The description adds meaningful update semantics not stated in the schema: omitted parameters are not sent, and any supplied parameter (including `data`) fully replaces the previous field value, which is important for correct invocation.

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 ('Update') and resource ('Card Builder style preset') and scopes it to an 'existing' preset. It explicitly routes creation to the sibling `card_builder_create_style_preset`, so an agent can tell it apart from create without opening schemas.

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?

Provides an explicit 'Use when' condition (adjusting an existing preset's style data or metadata) and a 'Not for' exclusion pointing to the alternative create tool. The routing is unambiguous for the main alternative.

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