About mcp-hass
mcp-hass is a skill for connecting to Home Assistant through its MCP server to query states and control smart-home devices.
Key features
- 01Query live Home Assistant context
- 02Turn devices on or off
- 03Configure the server URL and access token
- 04Inspect available tool parameters
Use cases
- 01Check current Home Assistant states
- 02Control a named light or an area's devices
- 03Review tool usage parameters
MCP support
It connects to Home Assistant's MCP server over HTTP, configured with a base URL and bearer access token. It invokes tools such as GetLiveContext and HassTurnOn.
Install
Copy the command and run it in a terminal.
npx skills add https:/ / github.com/ aahl/ skills --skill mcp-hassAfter installing, type/mcp-hassin Claude Code to confirm it loaded.
Details
From the project READMEHome Assistant
Control Home Assistant smart home and query states using MCP protocol.
Prerequisites
Enable MCP server in Home Assistant:
- Browse to your Home Assistant instance.
- Go to Settings > Devices & services.
- In the bottom right corner, select the + Add Integration button.
- From the list, select Model Context Protocol.
- Follow the instructions on screen to complete the setup.
Config
When prompted that the MCP server does not exist, remind the user to configure the HASS_BASE_URL and HASS_ACCESS_TOKEN environment variables by executing the following command to add the configuration:
npx -y mcporter config add home-assistant \
--transport http \
--url "${HASS_BASE_URL:-http://homeassistant.local:8123}/api/mcp" \
--header "Authorization=Bearer \${HASS_ACCESS_TOKEN}"
Usage
# Get states
npx -y mcporter call home-assistant.GetLiveContext
# Turn on the device
npx -y mcporter call home-assistant.HassTurnOn(name: "Bedroom Light")
npx -y mcporter call home-assistant.HassTurnOn(name: "Light", area: "Bedroom")
# Turn off the device
npx -y mcporter call home-assistant.HassTurnOff(name: "Bedroom Light")
npx -y mcporter call home-assistant.HassTurnOff(area: "Bedroom", domain: ["light"])
# Control light
# brightness: The percentage of the light, where 0 is off and 100 is fully lit.
# color: Name of color
npx -y mcporter call home-assistant.HassLightSet(name: "Bedroom Light", brightness: 50)
# Control fan
# percentage: The percentage of the fan, where 0 is off and 100 is full speed.
npx -y mcporter call home-assistant.HassFanSetSpeed(name: "Fan", area: "Bedroom", percentage: 80)
Execute the following command to learn about specific usage methods:
npx -y mcporter list home-assistant --schema --all-parameters
About mcporter
- To improve compatibility, use
npx -y mcporterinstead ofmcporterwhen executing commands. - https://github.com/steipete/mcporter/raw/refs/heads/main/docs/call-syntax.md
- https://github.com/steipete/mcporter/raw/refs/heads/main/docs/cli-reference.md