Model Context Protocol server for Home Assistant with Playwright visual feedback, dashboard design, automation, and system management capabilities
Server has 24 tools across two components (TypeScript MCP + Python addon). Most tools lack visible input schemas in the TypeScript portion (tools 1-14); only tools 15-24 show explicit schema definitions. Descriptions are present but generic (10-50 chars typical). No tool annotations (readOnlyHint, destructiveHint, idempotentHint). Error handling and recovery guidance absent. Naming follows verb_noun convention (good), but parameter descriptions are minimal. Output schemas undocumented. Security-sensitive tools (token issuance, file write, automation delete) lack permission gates or confirmation patterns.
Inspect active policy roles and configured agent identities with tokens redacted
Issue a scoped ephemeral token for sub-agents (admin only)
Pre-authorize an action against policy engine before execution
Query structured audit trail logs with filtering and role permission checks
Create a new automation with validation
Delete an automation
Get detailed configuration of a specific automation
TypeScript tools (1-14) have NO visible input schemas in source code. Cannot verify parameter types, constraints, or descriptions.
Destructive tools (ha_automation_delete, ha_file_write, ha_system_restore_backup) lack confirmation patterns or dry-run support. No recovery guidance in error responses. Agents can delete automations or overwrite files without safeguards.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 37 | 2026-07-28+ | v2 |
List all automations with their current state and metadata
Manually trigger an automation
Update an existing automation configuration
Retrieve the current Lovelace dashboard configuration
Render a screenshot of the Lovelace dashboard using Playwright
Save Lovelace dashboard configuration with validation
Safely read file contents within configuration root
Atomically write file with validation and automatic pre-edit snapshot
Call a Home Assistant service
Get the current state of a specific entity
Retrieve Home Assistant system logs
Tail and redact credentials from recent Home Assistant logs
Return system health status and memory footprint
Get Home Assistant system health status
List all available file snapshots, ordered newest first
List all Home Assistant entities with their current state
Restore a file from a snapshot or rollback a created file
Tool ha_agent_issue_token exposes sensitive token issuance without visible permission gates. No audit trail or rate limiting documented. Agents can issue unlimited tokens to arbitrary agent_ids.
Output schemas undocumented for all tools. LLMs cannot predict response structure, field names, or types. Breaks tool chaining (e.g., list_automations returns automation_id, but update_automation expects automation_id, not verified).
No tool annotations (readOnlyHint, destructiveHint, idempotentHint) present. Clients cannot distinguish safe reads from destructive writes without parsing descriptions. Violates current MCP spec (2026-07-28).