Skip to main content
Glama

Disable entity in registry

entities_disable_entity
Idempotent

Disable a Home Assistant entity to stop it from creating state, without deleting its registry entry. Use when retiring an entity but keeping its record.

Instructions

Disable an entity in the registry so Home Assistant stops creating its state.

Calls WS config/entity_registry/update with disabled_by="user".

Use when: retiring an entity without deleting its registry entry. Not for: re-enabling it — use entities_enable_entity. Returns: the updated entity registry entry from Home Assistant.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
entity_idYesFull entity ID to disable, e.g. 'sensor.old_device'.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changedv0.25.1
    • addedInput schema / properties / entity_id / description
      Added value: +"Full entity ID to disable, e.g. 'sensor.old_device'."
  2. 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 declare readOnlyHint=false, idempotentHint=true, destructiveHint=false, so the safety profile is already covered. The description adds real value beyond that by disclosing the underlying WS call (`config/entity_registry/update` with `disabled_by="user"`) and the observable effect that state creation stops. It does not, however, mention reversibility mechanics or permission requirements beyond the sibling hint.

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?

Four tight lines, front-loaded with the primary effect, then mechanism, then routing guidance, then return value. Every sentence earns its place with zero filler.

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?

Despite low complexity and a fully documented single parameter, the description covers effect, mechanism, when/when-not, and return value. Nothing an agent needs to invoke it correctly is missing, and the output schema makes further return detail unnecessary.

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?

Only one parameter, and schema description coverage is 100% (the schema already documents entity_id with an example). The description adds no syntax or format detail beyond the schema, so the baseline 3 applies.

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 ('Disable an entity in the registry') plus the concrete effect ('Home Assistant stops creating its state'). It also names the sibling it is not (entities_enable_entity), so an agent can distinguish it from the entities_* family without opening a schema.

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?

Explicit 'Use when: retiring an entity without deleting its registry entry' and 'Not for: re-enabling it — use entities_enable_entity'. It names the condition and the alternative tool, leaving no inference required.

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