Skip to main content
Glama
TheWhykiki

hass-mcp

by TheWhykiki

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
HASS_URLYesThe URL of the Home Assistant instance (e.g., http://homeassistant.local:8123)
HASS_TOKENYesA long-lived access token for Home Assistant authentication

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": true
}

Tools

Functions exposed to the LLM to take actions

NameDescription
ha_get_stateB

Get Home Assistant entity state by entity_id.

ha_list_statesA

List Home Assistant entity states (can be large).

ha_list_servicesA

List Home Assistant services and their fields.

ha_list_areasA

List Home Assistant areas from the area registry.

ha_list_devicesA

List Home Assistant devices from the device registry.

ha_list_entity_registryA

List Home Assistant entity registry entries.

ha_light_turn_onC

Turn on a light by entity_id.

ha_light_turn_offB

Turn off a light by entity_id.

ha_area_lights_offA

Turn off all lights in an area (by area_id).

ha_area_lights_onA

Turn on all lights in an area (by area_id).

ha_get_logbookA

Fetch logbook entries since an ISO time (optionally for an entity).

ha_get_historyC

Fetch history since an ISO time (optionally for an entity).

ha_call_serviceC

Call a Home Assistant service (domain/service) with data payload.

ha_render_templateC

Render a Jinja2 template and return the result.

ha_get_error_logsB

Fetch the latest Home Assistant error logs.

ha_update_entity_registryC

Update an entity registry entry (e.g., change name, entity_id, or area_id).

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

A3.5/5.0

Scored across 16 tools

Disambiguation5/5

Each tool has a distinct purpose with clear boundaries. Light control by area vs by entity are separate, state retrieval is split between single and list, and generic service call covers remaining operations without overlap.

Naming Consistency5/5

All tools follow consistent ha_verb_noun pattern using snake_case, e.g., ha_area_lights_off, ha_get_state, ha_list_areas. No mixing of conventions.

Tool Count5/5

16 tools is well-scoped for a Home Assistant server, covering core operations like state management, entity/area/device queries, history/logs, and template rendering without being overwhelming.

Completeness4/5

Covers all essential Home Assistant interactions: state queries, listings, light control, service calls, logs, history, and templates. Missing specific tools for common entities like switches or covers, but the generic ha_call_service fills gaps.

Maintenance

ActivityInactive
ResponsivenessNo issues