Skip to main content
Glama
RomanovVIII

ST67 Home Assistant MCP

by RomanovVIII

Home Assistant REST API

ha_rest
Destructive

Execute Home Assistant REST API calls to read states, invoke services, and manage configuration via HTTP requests.

Instructions

Call a supported method under /api/. Path is relative, for example states or services/light/turn_on. Never retries writes. Responses and duration are bounded.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
bodyNo
pathYes
queryNo
methodYes
allowBinaryNoEnable only when the user explicitly authorizes returning this binary content. Its contents cannot be reliably scrubbed for secrets.
contentTypeNo

Schema Changelog

Changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. First observedv0.1.0

TDQS

A3.9/5.0
Behavior4/5

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

Beyond the annotations (destructiveHint, openWorldHint, etc.), the description adds important behaviors: 'Never retries writes' and 'Responses and duration are bounded'. These are not present in the annotations and provide meaningful operational guarantees. No contradictions with the 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?

The description is brief and front-loaded, with no redundant or filler content. Each sentence adds value: the core action, path semantics, and key behavioral guarantees.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a generic REST caller, the description provides essential operation and guarantees but lacks guidance on how to structure query parameters or body content. It does not mention error handling, but given the absence of an output schema and the simplicity of the tool, it is reasonably complete, though not fully comprehensive.

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?

Schema description coverage is only 17% (only allowBinary has a description), but the tool description clarifies the 'path' parameter by explaining it is relative to /api/ with examples. Other parameters like query, body, and contentType remain under-explained in both the schema and description, so the description only partially compensates for the low coverage.

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 states the action ('Call a supported method under /api/') and provides concrete path examples ('states', 'services/light/turn_on'). It is easily distinguished from sibling tools ha_status and ha_ws, which are status and websocket-specific.

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

Usage Guidelines3/5

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

The description gives usage context by defining paths as relative to /api/ and showing examples, but it does not explicitly compare with sibling tools or state when to use this REST tool versus ha_ws or ha_status. The warning 'Never retries writes' is a behavioral note rather than a usage directive.

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

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/RomanovVIII/st67-home-assistant-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server