π¦ ClawHub
π Home Assistant via MCP protocol
by @al-one
The skill for control Home Assistant smart home devices and query states using MCP protocol.
TERMINAL
clawhub install mcp-hassπ About This Skill
name: mcp-hass description: The skill for control Home Assistant smart home devices and query states using MCP protocol. homepage: https://home-assistant.io/integrations/mcp metadata: { "openclaw": { "emoji": "π ", "requires": { "anyBins": ["mcporter", "npx"], "env": ["HASS_ACCESS_TOKEN", "HASS_BASE_URL"] }, "primaryEnv": "HASS_ACCESS_TOKEN", "install": [ { "id": "node", "kind": "node", "package": "mcporter", "bins": ["mcporter"], "label": "Install mcporter (node)", }, ], }, }
Home Assistant
Control Home Assistant smart home and query states using MCP protocol.Prerequisites
Enable MCP server in Home Assistant:Usage
# Get states
mcporter call home-assistant.GetLiveContextTurn on the device
mcporter call home-assistant.HassTurnOn(name: "Bedroom Light")
mcporter call home-assistant.HassTurnOn(name: "Light", area: "Bedroom")Turn off the device
mcporter call home-assistant.HassTurnOff(name: "Bedroom Light")
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
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.
mcporter call home-assistant.HassFanSetSpeed(name: "Fan", area: "Bedroom", percentage: 80)
Execute the following command to learn about specific usage methods:
mcporter list home-assistant --schema --all-parametersConfig
When prompted that the MCP server does not exist, remind the user to configure theHASS_BASE_URL and HASS_ACCESS_TOKEN environment variables by executing the following command to add the configuration:
mcporter config add home-assistant \
--transport http \
--url "${HASS_BASE_URL:-http://homeassistant.local:8123}/api/mcp" \
--header "Authorization=Bearer \${HASS_ACCESS_TOKEN}"
About mcporter
mcporter does not exist, use npx -y mcporter instead.π‘ Examples
# Get states
mcporter call home-assistant.GetLiveContextTurn on the device
mcporter call home-assistant.HassTurnOn(name: "Bedroom Light")
mcporter call home-assistant.HassTurnOn(name: "Light", area: "Bedroom")Turn off the device
mcporter call home-assistant.HassTurnOff(name: "Bedroom Light")
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
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.
mcporter call home-assistant.HassFanSetSpeed(name: "Fan", area: "Bedroom", percentage: 80)
Execute the following command to learn about specific usage methods:
mcporter list home-assistant --schema --all-parametersβοΈ Configuration
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:
mcporter config add home-assistant \
--transport http \
--url "${HASS_BASE_URL:-http://homeassistant.local:8123}/api/mcp" \
--header "Authorization=Bearer \${HASS_ACCESS_TOKEN}"