homekit-cli
Provides tools for inspecting and operating Apple HomeKit accessories, rooms, scenes, automations, zones, and more via the HomeClaw app.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@homekit-cliturn on the living room light"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
homekit-cli
homekit-cli is a TypeScript CLI and MCP server for inspecting and operating Apple HomeKit through the installed HomeClaw app.
HomeClaw owns Apple’s HomeKit entitlement, HomeKit permission prompt, and native HMHomeManager access. This package owns the agent-facing surface: Incur command groups, schemas, MCP tools, safety gates, docs, and npx skills workflow guidance.
Why the CLI?
Apple HomeKit access is entitlement-gated. A normal Node process cannot directly use HMHomeManager, prompt for HomeKit permission, or read the Home database. homekit-cli keeps Node on the agent/tooling side and talks to HomeClaw over its local Unix socket.
That means a signed App Store or TestFlight app is a hard prerequisite. Install HomeClaw from the Mac App Store, launch it once, and approve HomeKit access before running homekit-cli.
HomeClaw also bundles its own CLI and MCP server. Skip setup for those bundled surfaces; this repo provides the documented homekit CLI, MCP server, schemas, and external npx skills workflow.
Related MCP server: hass-mcp
Architecture
flowchart LR
User["User or agent"] --> CLI["homekit CLI"]
CLI --> Commands["Incur command tree"]
Commands --> Socket["HomeClaw Unix socket"]
Socket --> HomeClaw["HomeClaw.app"]
HomeClaw --> HomeKit["Apple HomeKit"]
Commands --> MCP["MCP server"]Quick Start
Install and launch HomeClaw first, then approve HomeKit permission in HomeClaw. Do not configure HomeClaw's bundled CLI or MCP server.
Run without installing:
npx homekit-cli bridge setup --format json
npx homekit-cli status --format jsonOr install globally:
npm i -g homekit-cli
homekit bridge setup --format json
homekit status --format jsonRun as MCP without a global install:
npx -y homekit-cli --mcpInstall the published workflow skill:
npx skills add l3wi/homekit-cli --skill homekitDevelopment
Run from a local checkout:
bun install
bun run build
node dist/bin.js bridge setup --format json
node dist/bin.js status --format jsonRun locally:
bun run dev -- --helpRun as MCP:
node dist/bin.js --mcpInstall the repo-local skill during development:
npx skills add ./skills --skill homekit --copy -yCLI/MCP Surface
Area | Commands | Write gate |
Status |
| read-only |
Homes |
| read-only |
Rooms |
|
|
Accessories |
|
|
Scenes |
|
|
Automations |
|
|
Zones |
|
|
Rename |
|
|
Events |
| read-only |
Device map |
| read-only |
Webhooks |
| setup/reset/purge require mutation |
Triggers |
| mutations require |
Provider |
| provider-specific |
control/set style operations remain intentionally explicit. No wildcard writes are supported.
Configuration
Variable | Purpose |
| Optional HomeClaw socket override. |
| Use |
| Operator label for read/write MCP profiles. Safety gates still apply. |
Default socket path:
~/Library/Group Containers/group.com.shahine.homeclaw/homeclaw.sockSigning, notarization, provisioning profiles, app groups, and native release scripts do not live on main.
If HomeClaw is not installed or not running, the CLI exits with install guidance, the expected socket path, and the App Store link.
Project Structure
Project structure:
src/ CLI, command groups, HomeClaw socket client helpers
test/ Vitest tests
docs/ architecture, command, MCP, safety, and runbook docs
examples/ MCP/config examples
skills/homekit/ external npx-skills packageUseful commands:
bun install
bun run typecheck
bun run test
bun run lint
bun run buildLicense
MIT
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/l3wi/homekit-cli'
If you have feedback or need assistance with the MCP directory API, please join our Discord server