Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
HA_URLYesHome Assistant URLhttp://homeassistant.local:8123
HA_TOKENYesLong-lived access token (required for standalone mode)
NEXUS_PORTNoHTTP server port7123
NEXUS_API_KEYNoPin to a specific API key (auto-generated if not set)
HA_CONFIG_PATHNoPath to HA config directory (for git tools)/config
SUPERVISOR_TOKENNoAuto-injected when running as Home Assistant add-on

Capabilities

Features and capabilities supported by this server

CapabilityDetails
tools
{
  "listChanged": true
}
logging
{}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
extensions
{
  "io.modelcontextprotocol/ui": {}
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
entities_list_entitiesA

List all entities, optionally filtered by domain (light, switch, sensor…).

entities_get_entityB

Get full state and attributes of a single entity.

entities_turn_onB

Turn on an entity. Optional: brightness (0-255), color_temp (mireds), rgb_color ([r,g,b]).

entities_turn_offC

Turn off an entity.

entities_toggleA

Toggle an entity between on and off.

entities_set_valueC

Set value of input_number, number, or climate temperature.

entities_select_optionC

Select option for input_select or select entity.

entities_update_entity_nameC

Rename an entity in the entity registry.

entities_assign_entity_to_areaC

Assign an entity to an area.

entities_disable_entityC

Disable an entity in the registry.

entities_enable_entityB

Re-enable a disabled entity.

entities_list_entity_registryA

Get raw entity registry (includes disabled, hidden entities).

entities_bulk_controlA

Bulk turn_on/turn_off/toggle a list of entities.

Groups entities by domain and issues one service call per domain (e.g. all light.* get a single light.turn_on). action must be one of: "turn_on", "turn_off", "toggle". Returns dict mapping domain -> count of entities affected.

entities_bulk_set_stateA

Bulk-write states using HA's set_state API.

Each item must contain entity_id and state, plus optional attributes dict. Returns a list of per-update result dicts ({entity_id, ok, error?}). Note: this writes to /api/states which only sets a virtual state — for real device control use bulk_control instead.

entities_set_entity_exposureA

Expose or hide an entity to a voice assistant.

assistant must be one of: "conversation", "cloud.alexa", "cloud.google_assistant". Uses WS homeassistant/expose_entity.

entities_get_entity_exposureB

Get exposure flags for an entity across all voice assistants.

entities_list_exposed_entitiesA

List all entities exposed to a given voice assistant.

assistant must be one of: "conversation", "cloud.alexa", "cloud.google_assistant".

services_call_serviceB

Call any Home Assistant service. E.g. domain='light', service='turn_on', data={'entity_id':'light.living_room','brightness':200}.

services_list_servicesB

List all available services, optionally filtered by domain.

services_fire_eventC

Fire a Home Assistant event.

services_render_templateB

Render a Jinja2 template string using HA template engine. Useful for testing templates before saving.

services_reload_configC

Reload configuration for a domain (automation, script, scene, input_boolean, etc.).

services_press_buttonC

Press a button entity.

services_set_cover_positionB

Set cover/blind/shutter position (0=closed, 100=open).

services_set_cover_tiltB

Set cover tilt position (0=closed, 100=open).

services_set_climate_modeB

Set climate HVAC mode (heat, cool, auto, off, fan_only, dry).

services_set_light_colorA

Set light color, color temperature and/or brightness.

services_media_play_pauseB

Toggle play/pause on a media player.

services_media_seekC

Seek media player to position (seconds).

services_set_volumeB

Set media player volume (0.0 to 1.0).

services_send_notificationC

Send a Home Assistant notification. target = notify service name (default: notify).

services_camera_snapshotA

Take a still snapshot from a camera entity.

filename is a path inside the HA config dir, typically under /config/www/snapshots/... so it can be served by HA. The directory must exist and be allow-listed via allowlist_external_dirs.

services_camera_recordB

Record a short clip from a camera entity to filename for duration seconds.

filename is a path inside the HA config dir (e.g. /config/www/snapshots/clip.mp4).

services_notify_persistent_createA

Create or replace a persistent notification in the HA UI.

Provide notification_id to allow the notification to be dismissed/updated later via notify_persistent_dismiss.

services_notify_persistent_dismissC

Dismiss a persistent notification by its notification_id.

services_notify_persistent_dismiss_allA

Dismiss all persistent notifications.

automations_list_automationsA

List all automations with their current state.

automations_trigger_automationC

Manually trigger an automation.

automations_enable_automationC

Enable a disabled automation.

automations_disable_automationB

Disable an automation.

automations_reload_automationsA

Reload all automations from YAML.

automations_list_scriptsA

List all scripts.

automations_run_scriptC

Run a script, optionally with variables.

automations_reload_scriptsA

Reload all scripts from YAML.

automations_list_scenesB

List all scenes.

automations_activate_sceneC

Activate a scene.

automations_reload_scenesA

Reload scenes from YAML.

automations_get_automation_configA

Get an automation's YAML config as a dict. Accepts bare id or 'automation.'. Returns None if not found.

automations_set_automation_configA

Create or overwrite an automation YAML config (alias, trigger, action, condition, ...). Auto-reloads automations.

automations_delete_automationA

Delete an automation by id. Auto-reloads automations afterwards.

automations_get_script_configA

Get a script's YAML config as a dict. Accepts bare id or 'script.'. Returns None if not found.

automations_set_script_configA

Create or overwrite a script YAML config (sequence, fields, ...). Auto-reloads scripts.

automations_delete_scriptA

Delete a script by id. Auto-reloads scripts afterwards.

automations_list_automation_tracesA

List trace summaries (recent runs) for an automation. Accepts bare id or 'automation.'.

automations_get_automation_traceB

Get a full automation trace (steps, timing, condition results) for a specific run.

automations_list_script_tracesA

List trace summaries (recent runs) for a script. Accepts bare id or 'script.'.

automations_get_script_traceC

Get a full script trace (steps, timing, action results) for a specific run.

areas_list_areasA

List all areas (rooms) in Home Assistant.

areas_create_areaC

Create a new area.

areas_delete_areaB

Delete an area by its area_id.

areas_list_floorsB

List all floors.

areas_list_devicesC

List all devices in the device registry.

areas_get_area_entitiesB

Get all entities belonging to an area.

areas_get_area_statesC

Get current states of all entities in an area.

areas_control_areaB

Turn on/off/toggle all entities of a domain in an area. action: 'turn_on' | 'turn_off' | 'toggle'

history_get_state_historyB

Get state history for an entity over the last N hours.

history_get_logbookC

Get logbook entries, optionally filtered by entity_id.

history_get_error_logB

Fetch the Home Assistant error log.

history_get_system_infoA

Get Home Assistant system/version info.

history_get_ha_configA

Get current Home Assistant configuration (location, units, version, components).

helpers_list_helpersA

List all helper entities (input_boolean, input_number, input_select, counter, timer…).

helpers_set_input_booleanC

Set input_boolean to true or false.

helpers_set_input_numberC

Set an input_number value.

helpers_set_input_textC

Set an input_text value.

helpers_set_input_selectC

Set an input_select to a specific option.

helpers_set_input_datetimeB

Set input_datetime. Provide date (YYYY-MM-DD), time (HH:MM:SS) or datetime (YYYY-MM-DD HH:MM:SS).

helpers_increment_counterC

Increment a counter helper.

helpers_reset_counterB

Reset a counter helper to 0.

helpers_start_timerA

Start a timer. duration format: HH:MM:SS or number of seconds.

helpers_cancel_timerC

Cancel a running timer.

helpers_reload_helpersA

Reload all helper entities from configuration.

system_check_configA

Validate Home Assistant configuration before restart.

system_restart_haA

Restart Home Assistant. WARNING: causes ~30s downtime.

system_stop_haA

Stop Home Assistant. WARNING: requires manual restart.

system_reload_allA

Reload core configuration (automations, scripts, scenes, groups, etc.).

system_create_backupB

Create a full Home Assistant backup.

system_list_integrationsA

List all loaded integrations (config entries).

system_reload_integrationC

Reload a specific integration config entry.

system_ping_haA

Check if Home Assistant is reachable.

system_get_all_integrationsB

Get all active config entries (integrations, their state and domain).

dashboards_list_dashboardsA

List all Lovelace dashboards.

dashboards_get_dashboard_configA

Get Lovelace dashboard config. url_path can be a dashboard (e.g. 'map') or a view path inside the default dashboard (e.g. 'lukasz' from /lovelace/lukasz). Omit for the full default dashboard.

dashboards_save_dashboard_configA

Save Lovelace dashboard config. Overwrites existing config. Use get_dashboard_config first, then modify and save.

dashboards_get_dashboard_resourcesA

Get Lovelace resources (custom cards, CSS).

dashboards_add_card_to_viewB

Add a card to a specific view in a dashboard. Example card_config: {'type': 'entities', 'entities': ['light.living_room']}

dashboards_add_view_to_dashboardC

Add a new view to a dashboard. Example view_config: {'title': 'Bedroom', 'icon': 'mdi:bed', 'cards': []}

files_read_config_fileA

Read a config file relative to HA config dir. E.g. 'automations.yaml' or 'packages/lights.yaml'.

files_write_config_fileB

Write content to a config file. Validates YAML syntax before saving (set validate_yaml=False to skip). Creates parent directories as needed.

files_list_config_filesB

List files in the HA config directory (or a subdirectory).

files_validate_yaml_contentA

Validate YAML content without saving. Returns parsed result or error.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

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/Fistacho/ha-nexus-agent'

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