Skip to main content
Glama
homeassistant-ai

Home Assistant MCP Server

Official

Get Operation Status

ha_get_operation_status
Read-only

Check the real-time status of Home Assistant device operations, individually or in bulk, via WebSocket to track progress of initiated services.

Instructions

Get the status of one or more device operations with real-time WebSocket verification.

Pass a single operation_id string to check one operation, or a list of IDs to check multiple operations at once (bulk status).

The timeout_seconds wait window bounds both modes. Bulk checks poll all operations concurrently under one shared window and report per-item failures inside detailed_results instead of aborting the batch.

Use this to track operations initiated by ha_bulk_control or ha_call_service. For current entity states, use ha_get_state instead.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
operation_idYesSingle operation ID or list of operation IDs to check. Use a single string for one operation, or a list for bulk status checks.
timeout_secondsNo

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Behavior5/5

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

Goes well beyond the readOnlyHint annotation by disclosing real-time WebSocket verification, shared timeout windows for bulk checks, concurrent polling, and per-item failure reporting. No contradictions with 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 concise and well-structured, front-loaded with the primary function and expanding into modes and error handling with minimal redundancy. Every sentence adds value.

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?

For a tool with moderate complexity, the description covers single vs. bulk usage, timeout behavior, failure semantics, and provides clear alternatives. Combined with the existing output schema and annotations, it is thoroughly complete.

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?

The schema describes operation_id fully but timeout_seconds only has a default. The description compensates by explaining that timeout_seconds bounds both modes and that bulk checks share one window, adding meaning beyond the schema.

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 tool gets operation status via WebSocket verification, specifying both single and bulk modes. It distinguishes itself from the sibling ha_get_state by noting it is for operation tracking rather than current entity states.

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?

Explicitly states when to use: to track operations from ha_bulk_control or ha_call_service, and provides a direct alternative: use ha_get_state for entity states. This leaves no ambiguity.

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/homeassistant-ai/ha-mcp'

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