Connect Home Assistant to Your AI Agent

Read an entity’s state or recorded history, then request a specific service call with the intended target.

28 tools API key

Try a Home Assistant Task

Copy a prompt into your agent with the oo Skill installed. Add your page links and source notes before running it.

oo Skill Home Assistant

Explain an Entity’s Changes

Compare recorded state history with logbook events over a chosen period.

/oo Home Assistant: For Home Assistant entity [entity ID], read history and logbook entries from [start date and time] to [end date and time]. Summarize state changes and the available event context.

Call a Device Service

Check available services and apply an instructed action to a chosen entity.

/oo Home Assistant: List Home Assistant services, then turn on light [entity ID] using its light service with [desired brightness]. Show the result.

Start Working with Home Assistant

  1. Install OOMOL

    Set up oo CLI and the oo Skill in your agent.

    Install OOMOL →
  2. Connect Home Assistant

    Connect a long-lived Home Assistant access token and public instance root URL.

    Connect Home Assistant →
  3. Give Your Agent a Task

    Use /oo with the pages to read, the changes to make, and where to save the result.

    Connection Guide →

Choose Your Agent

  • A publicly reachable instance and a token with the permissions needed for your tasks.
  • Hosted access excludes private or local addresses and IPv6. Stored configuration changes require an admin token and apply only to UI-editable entries; saving replaces that entry.

Home Assistant Tools

Home Assistant connects states, history, logbook entries, calendars, registries, device services, scripts, and editable automation, script, or scene configuration.

States, History, and Device Context

Read entity states, history, logbook entries, and device or area registries.

Services, Events, and Scripts

Call device services, fire events, render templates, and execute script sequences.

Editable Configuration

Read, save, or delete UI-editable automation, script, and scene configurations, and validate configuration.

28 tools

Get Config

Fetch the Home Assistant instance configuration.

home_assistant.get_config

List States

List all current Home Assistant entity states.

home_assistant.list_states

Get State

Fetch the current state for one Home Assistant entity.

home_assistant.get_state

List Services

List Home Assistant service domains and their available services.

home_assistant.list_services

Call Service

Call a Home Assistant service to control entities, such as light.turn_on or switch.turn_off.

home_assistant.call_service

List Events

List Home Assistant event types currently known by the instance.

home_assistant.list_events

Fire Event

Fire one Home Assistant event with optional event data.

home_assistant.fire_event

Render Template

Render a Home Assistant template against the connected instance.

home_assistant.render_template

Get History

Fetch recorded state history for one or more Home Assistant entities over a time period, for answering questions about how a value changed.

home_assistant.get_history

Get Logbook

Fetch the Home Assistant logbook: the human-readable timeline of what happened and what triggered it, for diagnosing why something changed.

home_assistant.get_logbook

List Calendars

List the calendar entities exposed by Home Assistant.

home_assistant.list_calendars

List Calendar Events

List the events on one Home Assistant calendar between a start and end time.

home_assistant.list_calendar_events

Get Error Log

Fetch the Home Assistant error log for the current session as plain text. Home Assistant serves this only when the instance runs with file logging enabled, so it can report not found on an otherwise healthy instance.

home_assistant.get_error_log

Get Registries

List Home Assistant entity, device, area, floor, and label registries over the WebSocket API.

home_assistant.get_registries

Search Related

Find Home Assistant items related to an entity, device, area, automation, or configuration entry.

home_assistant.search_related

List Device Automations

List the triggers, conditions, and actions supported by one Home Assistant device.

home_assistant.list_device_automations

Execute Script

Run a Home Assistant script sequence containing service calls, delays, and conditions.

home_assistant.execute_script

Validate Config

Validate Home Assistant trigger, condition, and action configurations before storing an automation.

home_assistant.validate_config

Get Automation Config

Fetch the stored configuration for one Home Assistant automation. Requires an admin access token, and only covers entries stored in the Home Assistant UI-editable config; entries defined in other YAML files return not found.

home_assistant.get_automation_config

Save Automation Config

Create or replace one Home Assistant automation. Posting to an unused id creates the automation. Requires an admin access token, and only covers entries stored in the Home Assistant UI-editable config; entries defined in other YAML files return not found.

home_assistant.save_automation_config

Delete Automation Config

Delete one Home Assistant automation. Requires an admin access token, and only covers entries stored in the Home Assistant UI-editable config; entries defined in other YAML files return not found.

home_assistant.delete_automation_config

Get Script Config

Fetch the stored configuration for one Home Assistant script. Requires an admin access token, and only covers entries stored in the Home Assistant UI-editable config; entries defined in other YAML files return not found.

home_assistant.get_script_config

Save Script Config

Create or replace one Home Assistant script. Posting to an unused key creates the script. Requires an admin access token, and only covers entries stored in the Home Assistant UI-editable config; entries defined in other YAML files return not found.

home_assistant.save_script_config

Delete Script Config

Delete one Home Assistant script. Requires an admin access token, and only covers entries stored in the Home Assistant UI-editable config; entries defined in other YAML files return not found.

home_assistant.delete_script_config

Get Scene Config

Fetch the stored configuration for one Home Assistant scene. Requires an admin access token, and only covers entries stored in the Home Assistant UI-editable config; entries defined in other YAML files return not found.

home_assistant.get_scene_config

Save Scene Config

Create or replace one Home Assistant scene. Posting to an unused id creates the scene. Requires an admin access token, and only covers entries stored in the Home Assistant UI-editable config; entries defined in other YAML files return not found.

home_assistant.save_scene_config

Delete Scene Config

Delete one Home Assistant scene. Requires an admin access token, and only covers entries stored in the Home Assistant UI-editable config; entries defined in other YAML files return not found.

home_assistant.delete_scene_config

Check Config

Ask Home Assistant to validate its own configuration files and report errors and warnings. Requires an admin access token.

home_assistant.check_config

Frequently Asked Questions

Does history show every possible past state?

It reads what the instance has recorded. Provide the entity and period; retention and recording settings determine what is available.

What should I provide to control a device?

Specify the entity ID and requested operation, with settings such as brightness when relevant. The assistant can inspect available services before making the call.

Can I edit an automation defined in another YAML file?

These configuration endpoints only cover UI-editable entries and require admin access. Entries defined in other YAML files may report not found.

Connect Home Assistant

About Home Assistant ↗