ha-mcp-tools
Simplifies interaction with Home Assistant MCP tools.
Install
mkdir -p .claude/skills/ha-mcp-tools && curl -L -o skill.zip "https://agentskills.codes/api/skills/download/14745" && unzip -o skill.zip -d .claude/skills/ha-mcp-tools && rm skill.zipInstalls to .claude/skills/ha-mcp-tools
Activation
This is the description your AI agent reads to decide when to run this skill — the better it matches your request, the more reliably it fires.
Use when choosing which ha-mcp tool or action to call. Examples: \"How do I list entities?\", \"create a helper\", \"turn on a light\", \"find devices in kitchen\", \"which action should I use?\".Key capabilities
- →Control devices by turning them on, off, or toggling
- →Retrieve the current state of a single entity
- →List entities by area, domain, or state
- →Manage automations by creating, editing, or deleting them
- →Create various types of helpers like input or timer
- →Rename entities in the registry
How it works
This skill maps user intents to specific ha-mcp tools and actions, providing a reference for controlling Home Assistant devices and managing its configuration.
Inputs & outputs
When to use ha-mcp-tools
- →List home entities
- →Find kitchen devices
- →Turn on lights
About this skill
ha-mcp Tool Discovery
Intent → Tool
| User intent | Tool + Action |
|---|---|
| Turn on / off / toggle a device | call_service (domain=light/switch, service=turn_on/turn_off/toggle) |
| Get a single entity's current state | get_state |
| List entities in an area / by domain / by state | query_entities mode=current |
| Find unavailable / stale / disabled entities | query_entities mode=health |
| Person / device tracker presence (home/away) | query_entities mode=presence |
| Historical state for a sensor over time | query_entities mode=history |
| Aggregated stats (min/max/mean) for a sensor | query_entities mode=statistics |
| Which entity domains exist in this HA instance? | query_entities mode=domains |
| Device health (orphaned / config errors) | query_devices mode=health |
| Where is entity X used? (automations, scripts, scenes, dashboards, template helpers) | analyze_entity — returns RFC 6901 paths to each reference location; scanned_sources lists what was actually searched |
| Which entities does automation X depend on? | get_entity_dependencies |
| Find a string/entity_id across ALL config types in one call | find_references — automations/scripts/scenes/dashboards/helper templates, match_mode substring/exact |
| Create / edit / delete an automation | manage_automation action=create/update/delete |
| Toggle / enable / disable an automation | manage_automation action=toggle |
| See automation trigger/condition/service coverage | manage_automation action=coverage |
| Add/remove a trigger or condition (surgical edit) | manage_automation action=patch (semantic op) |
| Run a script | manage_script action=execute |
| Activate a scene | manage_scene action=activate |
| Create a helper (input, timer, counter, etc.) | manage_helper action=create |
| Set / toggle / start a helper value at runtime | helper_action |
| Rename an entity in the registry | manage_entity action=update (new_entity_id field) |
| Assign an entity to an area | manage_entity action=update (area_id field) |
| Add / remove labels on entity or device | manage_entity / manage_device action=update + label_mode |
| List / create / rename an area | manage_area action=list/create/update |
| Check what config entries exist for an integration | manage_config_entry action=list (domain filter) |
| Browse available services | list_services |
| Render a Jinja2 template | render_template |
| Get logbook entries / cause-effect correlation | get_logbook mode=entries/correlation |
| Check HA version / timezone | get_system_info |
| Validate configuration.yaml | validate_config |
| Manage a dashboard (create / edit / view) | manage_dashboard |
| Locate content in a large dashboard (avoid size-limit errors) | manage_dashboard action=find search=<string/entity_id> |
| Install / uninstall a HACS add-on | manage_hacs action=download/uninstall |
| View automation / script execution trace | manage_trace action=list/get |
| Import a blueprint | manage_blueprint action=import |
| Check for HA / add-on updates | manage_update action=list (pending_only=true) |
| Manage todo list items | manage_todo |
| Manage calendar events | manage_calendar |
| Read HA error/warning logs | manage_system_log action=list |
| Clear the HA system log buffer | manage_system_log action=clear |
| Get ha-mcp guidance on a topic | get_skill action=list / action=read skill=<slug> |
Consolidated Tool Action Reference
| Tool | Read Actions | Write Actions |
|---|---|---|
manage_automation | list, get, coverage | create, update, delete, toggle, patch |
manage_script | list, get | create, update, delete, execute, patch |
manage_scene | list, get | create, update, delete, activate, patch |
manage_helper | list, get_details | create, update, delete |
manage_dashboard | list, get, find | create, update, delete, patch |
manage_area | list, get | create, update, delete |
manage_entity | get | update, delete |
manage_device | get | update, delete |
manage_label | list, get | create, update, delete |
manage_floor | list, get | create, update, delete |
manage_zone | list, get | create, update, delete |
manage_person | list, get | create, update, delete |
manage_tag | list, get | create, update, delete |
manage_config_entry | list, get | delete (removes entry + its devices/entities) |
manage_hacs | info, list, get, releases, release_notes, critical | download, uninstall, add_repository, remove_repository, refresh, toggle_beta |
manage_trace | list, get, debug | (none — read-only) |
manage_blueprint | list | import |
manage_update | list, release_notes | install, skip |
manage_todo | list, get_items | add_item, update_item, remove_item |
manage_calendar | list, get_events | create_event, delete_event |
manage_system_log | list | clear |
get_skill | list, read | (none — read-only) |
query_entities | current, history, statistics, domains, presence, health | (none) |
query_devices | health | (none) |
analyze_target | all, triggers, conditions, services, entities | (none) |
get_logbook | entries, correlation | (none) |
helper_action | (contextual) | toggle, set, increment, decrement, reset, calibrate, start, pause, cancel, finish, change, press, select, set_options, reload, add_entities, remove_entities |
manage_helper's update action documents exactly which fields each of the
26 helper types accepts, generated from the helperTypes metadata table
(internal/handlers/helpers_consolidated.go) so it can't drift from the
code — read the tool's own Description for the per-type field list rather
than guessing.
manage_automation / manage_script — create/update Parameters
Content truncated.
When not to use it
- →When the task is not related to Home Assistant management
- →When the user wants to perform actions outside the scope of ha-mcp tools
- →When the user wants to manage Home Assistant without using ha-mcp
Limitations
- →The skill is a guide for choosing tools, not an execution engine
- →It does not perform the Home Assistant actions directly
- →It does not provide guidance on all possible Home Assistant operations
How it compares
This skill acts as a guide to identify the correct ha-mcp tool for a given intent, simplifying the process compared to manually searching through available tools.
Compared to similar skills
ha-mcp-tools side by side with the closest alternatives in the catalog.
| Skill | Installs | Updated | Safety | Difficulty |
|---|---|---|---|---|
| ha-mcp-tools (this skill) | 0 | 2mo | No flags | Beginner |
| zendesk | 15 | 4mo | Review | Intermediate |
| zapier-workflows | 11 | 8mo | Review | Beginner |
| controlling-spotify | 7 | 4mo | Review | Intermediate |
Try saying
Example prompts that trigger this skill in your AI assistant.
You might also like
zendesk
vm0-ai
Zendesk Support REST API for managing tickets, users, organizations, and support operations. Use this skill to create tickets, manage users, search, and automate customer support workflows.
zapier-workflows
davila7
Manage and trigger pre-built Zapier workflows and MCP tool orchestration. Use when user mentions workflows, Zaps, automations, daily digest, research, search, lead tracking, expenses, or asks to "run" any process. Also handles Perplexity-based research and Google Sheets data tracking.
controlling-spotify
oaustegard
Control Spotify playback and manage playlists via MCP server. Use when user requests playing music, controlling Spotify, creating playlists, searching songs, or managing their Spotify library.
smithery-ai-cli
smithery-ai
Find, connect, and use MCP tools and skills via the Smithery CLI. Use when the user searches for new tools or skills, wants to discover integrations, connect to an MCP, install a skill, or wants to interact with an external service (email, Slack, Discord, GitHub, Jira, Notion, databases, cloud APIs, monitoring, etc.).
connect-apps
ComposioHQ
Connect Claude to external apps like Gmail, Slack, GitHub. Use this skill when the user wants to send emails, create issues, post messages, or take actions in external services.
freshdesk-automation
sickn33
Automate Freshdesk helpdesk operations including tickets, contacts, companies, notes, and replies via Rube MCP (Composio). Always search tools first for current schemas.