MIT License Free & Open Source 8 MCP Tools macOS

HomeKit,
Unboxed

Apple HomeKit has no public API, no CLI, and no way to talk to AI assistants. HomeClaw fixes that with a CLI, MCP server, and plugins for Claude Code and OpenClaw.

homeclaw-cli -- zsh -- 120x48
> homeclaw-cli status

HomeClaw  connected
  Home:     Lake House
  Rooms:    12
  Devices:  47 accessories
  Webhook:  healthy (circuit closed, 142 delivered)

> homeclaw-cli list --room "Kitchen"

Kitchen (6 accessories)

   ON  Kitchen Pendant       lightbulb  brightness: 80%
  OFF  Under Cabinet Lights  lightbulb  brightness: 0%
   ON  Kitchen Outlet        outlet     in use
   --  Kitchen Motion        sensor     no motion
   --  Kitchen Temp          sensor     71.2 F
   --  Fridge Contact        sensor     closed

> homeclaw-cli set "Kitchen Pendant" brightness 50

done Kitchen Pendant brightness 80% -> 50%

> homeclaw-cli trigger "Good Night"

done Scene triggered: Good Night
  14 accessories updated

> |

Everything You Need

A complete toolkit for HomeKit: 8 MCP tools, a full CLI, and plugins for Claude Code and OpenClaw.

🏠

HomeKit Access

The only way to control HomeKit from outside the Home app. HomeClaw bridges Apple's private API with a clean, scriptable interface.

πŸ› οΈ

8 MCP Tools

Accessories, rooms, scenes, device maps, events, webhooks, and config. Everything you need to manage your smart home.

πŸ”Œ

3 Client Options

Use with Claude Code MCP, the OpenClaw plugin, or the CLI directly. Pick what fits your workflow.

πŸ—ΊοΈ

LLM Device Map

Purpose-built device map with semantic types, auto-generated aliases, and state summaries. AI assistants understand your home instantly.

πŸ“‘

Webhooks

Push HomeKit events to OpenClaw with configurable triggers, delivery modes, and a tiered circuit breaker for reliability.

πŸ“‹

Event Log

Full event history of characteristic changes, scene triggers, and control actions. Query by time, type, or accessory.

How It Works

Three layers, one Unix socket

πŸ€–
AI Client
Claude Code, OpenClaw, or CLI
⚑
MCP Server / CLI
Unix socket, JSON protocol
🏠
HomeClaw App
Mac Catalyst, direct HomeKit access

Single-process design. Apple's HMHomeManager requires a UIKit/Catalyst app with the HomeKit entitlement. HomeClaw runs as a lightweight menu bar app.

8 Tools, Full Coverage

Consolidated tools with actions, not a tool per operation

Accessories

homekit_accessories

List, get details, search, or control any HomeKit accessory

list get search control

Rooms

homekit_rooms

Browse rooms and their accessories

Scenes

homekit_scenes

List and trigger HomeKit scenes

list trigger

Device Map

homekit_device_map

LLM-optimized map with semantic types and aliases

Events

homekit_events

Query characteristic changes, scene triggers, control actions

Webhooks

homekit_webhook

Configure, test, and monitor webhook delivery

setup test reset status

Config

homekit_config

Set active home, device filtering, and preferences

get set

Status

homekit_status

Check connectivity, home count, and accessory count

Supported Accessories

Lights Thermostats Locks Doors Garage Doors Fans Window Coverings Switches Outlets Sensors Doorbells Cameras

Quick Start

Install the app, then pick your integration method

1
Install HomeClaw TestFlight
# Join the TestFlight beta
https://testflight.apple.com/join/zjSnz8eK


# Or build from source
git clone https://github.com/omarshahine/HomeClaw.git
cd HomeClaw && scripts/build.sh --release --install
2
Claude Code Plugin
# Register the marketplace and install
/plugin marketplace add ~/GitHub/HomeClaw
/plugin install homeclaw@homeclaw


# Then just ask Claude:
"Turn off all the lights in the kitchen"
"Set the thermostat to 72"
3
OpenClaw Plugin
# Install from the bundled app
openclaw plugins install \
  "/Applications/HomeClaw.app/Contents/Resources/openclaw/"
openclaw plugins enable homeclaw


# Symlink the CLI into PATH (Apple Silicon)
ln -sf "/Applications/HomeClaw.app/Contents/MacOS/homeclaw-cli" \
  /opt/homebrew/bin/homeclaw-cli


# Restart the gateway
openclaw gateway restart
4
CLI Terminal
# List devices by room
homeclaw-cli list --room "Living Room"


# Control a device
homeclaw-cli set "Bedroom Light" brightness 40


# Trigger a scene
homeclaw-cli trigger "Good Night"