Home Assistant Admin MCP has solid naming conventions (verb_noun pattern across all 18 tools) and comprehensive parameter schemas with type definitions. However, descriptions are inconsistent in depth, many are terse (10-30 chars) and lack actionable context for LLM selection. Parameter descriptions exist but are minimal (e.g., 'Service domain' for domain param). Output schemas are not documented in the visible code. Error handling is present but recovery guidance is sparse. Tool composition is reasonable (single responsibility per tool), but several tools lack idempotency markers and confirmation patterns for destructive operations are inconsistently applied.
Call a Home Assistant service
Create a Home Assistant configuration backup
Discover available Home Assistant integrations
Get Home Assistant diagnostics information
Get the state of a Home Assistant entity
Get entity history from Home Assistant
Get Home Assistant logs
Get Home Assistant runtime information
Terse tool descriptions (10-35 chars) lack LLM selection context. E.g., 'Get Home Assistant runtime information' does not explain WHEN to call it vs. get_diagnostics, or what fields are returned.
Output schemas not documented in visible code. LLMs cannot plan downstream calls or extract required fields (e.g., what does list_backups return? backup_id, label, timestamp?). Breaks tool chaining.
Destructive operations (restore_backup, write_config_file) have optional 'confirm' parameter but no explicit confirmation flow documented. Agents may skip confirmation, risking data loss.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 47 | 2026-07-28+ | v2 |
List available Home Assistant configuration backups
List all Home Assistant entities
Read a Home Assistant configuration file
Reload Home Assistant automations
Reload Home Assistant scenes
Reload Home Assistant scripts
Restore a Home Assistant configuration backup
Search Home Assistant configuration files
Validate Home Assistant configuration
Write a Home Assistant configuration file
Parameter descriptions are minimal (e.g., 'Service domain', 'Entity ID'). No guidance on format, constraints, or examples. LLMs cannot self-correct invalid inputs.
No pagination parameters (limit, offset, cursor) on list tools (list_entities, list_backups, get_logs). Large result sets risk context window exhaustion.