HomeClaw MCP工具 是 AI Skill Hub 本期精选MCP工具之一。综合评分 8.0 分,整体质量较高。我们强烈推荐将其纳入你的 AI 工具库,帮助提升工作效率。
HomeClaw MCP工具 是一款遵循 MCP(Model Context Protocol)标准协议的 AI 工具扩展。通过 MCP 协议,它可以让 Claude、Cursor 等主流 AI 客户端直接访问和操作外部工具、数据源和服务,实现 AI 能力的无缝扩展。无论是文件操作、数据库查询还是 API 调用,都可以通过自然语言在 AI 对话中直接触发,极大提升生产效率。
HomeClaw MCP工具 是一款遵循 MCP(Model Context Protocol)标准协议的 AI 工具扩展。通过 MCP 协议,它可以让 Claude、Cursor 等主流 AI 客户端直接访问和操作外部工具、数据源和服务,实现 AI 能力的无缝扩展。无论是文件操作、数据库查询还是 API 调用,都可以通过自然语言在 AI 对话中直接触发,极大提升生产效率。
# 方式一:通过 Claude Code CLI 一键安装
claude skill install https://github.com/omarshahine/HomeClaw
# 方式二:手动配置 claude_desktop_config.json
{
"mcpServers": {
"homeclaw-mcp--": {
"command": "npx",
"args": ["-y", "homeclaw"]
}
}
}
# 配置文件位置
# macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
# Windows: %APPDATA%/Claude/claude_desktop_config.json
# 安装后在 Claude 对话中直接使用 # 示例: 用户: 请帮我用 HomeClaw MCP工具 执行以下任务... Claude: [自动调用 HomeClaw MCP工具 MCP 工具处理请求] # 查看可用工具列表 # 在 Claude 中输入:"列出所有可用的 MCP 工具"
// claude_desktop_config.json 配置示例
{
"mcpServers": {
"homeclaw_mcp__": {
"command": "npx",
"args": ["-y", "homeclaw"],
"env": {
// "API_KEY": "your-api-key-here"
}
}
}
}
// 保存后重启 Claude Desktop 生效
<p align="center"> Control your Apple HomeKit smart home from AI assistants, the terminal, and automation tools. </p>
<p align="center"> <a href="https://apps.apple.com/us/app/homeclaw/id6759682551?mt=12"><img src="https://img.shields.io/badge/Mac%20App%20Store-Download-0d8b8b?logo=apple&logoColor=white&style=for-the-badge" alt="Download on the Mac App Store"></a> <a href="https://homeclaw.omarknows.app/"><img src="https://img.shields.io/badge/Site-homeclaw.omarknows.app-2c3e50?style=for-the-badge" alt="Website"></a> <a href="LICENSE"><img src="https://img.shields.io/badge/license-MIT-blue.svg?style=for-the-badge" alt="MIT License"></a> </p>
HomeClaw exposes your HomeKit accessories through a command-line tool, a stdio MCP server, and plugins for Claude Code and OpenClaw. It runs as a lightweight macOS menu bar app.
```bash
npm install
Marketing site with screenshots and full pitch: homeclaw.omarknows.app.
Set up your AI integrations:
<details> <summary>Prerequisites and setup for building from source</summary>
brew install xcodegenWhy is a developer account required? Apple does not provide a public HomeKit API for macOS. The only way to access HomeKit is throughHMHomeManager, which requires thecom.apple.developer.homekitentitlement and a provisioning profile that covers your Mac's hardware UDID. Apple restricts this entitlement to development signing and App Store distribution -- it cannot be included in Developer ID (notarized) builds. This means every Mac that runs HomeClaw must be registered as a development device in your Apple Developer portal, and the app must be built with your team's signing identity. There is no way around this; it's an Apple platform restriction, not a HomeClaw limitation.
```bash git clone https://github.com/omarshahine/HomeClaw.git cd HomeClaw
echo "HOMEKIT_TEAM_ID=YOUR_TEAM_ID" > .env.local
scripts/build.sh --release --install ```
Find your Team ID at developer.apple.com/account under Membership Details.
Launch from /Applications or: open "/Applications/HomeClaw.app"
On first launch, grant HomeKit access when prompted. The menu bar icon appears -- click it to see your connected homes.
Note: Apple restricts the HomeKit entitlement to development signing and App Store distribution. Developer ID builds cannot access HomeKit. See Why Development Signing? for details.
</details>
Install from a local clone or directly from GitHub.
From a local clone:
```bash
/plugin marketplace add ~/GitHub/HomeClaw /plugin install homeclaw@homeclaw
**From GitHub (no local clone needed):**
bash
/plugin install homeclaw@homeclaw ```
After installing, restart Claude Code. Then just ask:
"Turn on the kitchen lights and set them to 50% brightness" "Lock all the doors" "What's the thermostat set to?" "Run the movie time scene" "Which lights are on in the living room?"
If HomeClaw and OpenClaw run on the same Mac, use the one-click installer:
This handles all four steps automatically: installs the plugin, enables it, symlinks homeclaw-cli into your PATH, and restarts the gateway.
Or from the terminal:
```bash
openclaw plugins install "/Applications/HomeClaw.app/Contents/Resources/openclaw/" openclaw plugins enable homeclaw
openclaw plugins install ~/GitHub/HomeClaw/openclaw openclaw plugins enable homeclaw
Paste this prompt into OpenClaw or Claude Code to configure webhooks end-to-end. The prompt is idempotent -- it verifies each step and skips anything already configured:
Prerequisites: HomeClaw must be installed and running (menu bar icon visible). If using Claude Code, thehomeclawplugin must be registered (/plugin install homeclaw@homeclaw). Thehomeclaw-clibinary must be in your PATH. Set up HomeClaw mapped webhooks with a dedicated HomeClaw agent. Verify each step first -- skip any that are already configured. 1. HomeClaw agent workspace: - Check ifhomeclawagent exists:openclaw agents list- If missing, install from the bundled app:openclaw agents install homeclaw /Applications/HomeClaw.app/Contents/Resources/openclaw/agents/homeclaw- Copy agent docs (IDENTITY/SOUL/AGENTS/TOOLS.md) from the app bundle to the local agent dir if newer - Configure agent: modelclaude-sonnet-4, restricted tools (memory, sessions/a2a, read/write only -- no exec, no browser, no external services) 2. OpenClaw gateway hooks config: - Check~/.openclaw/openclaw.jsonfor ahooks.mappings.homeclawentry - If missing, add:- Create a transform at> "hooks": { > "enabled": true, > "token": "${HOMECLAW_WEBHOOK_TOKEN}", > "mappings": { > "homeclaw": { > "agentId": "homeclaw", > "sessionKey": "hook:homeclaw", > "deliver": true, > "channel": "last", > "allowUnsafeExternalContent": true > } > } > } >~/.openclaw/hooks/transforms/homeclaw-transform.jsto convert HomeClaw state-change payloads into agent messages - Check~/.openclaw/.envforHOMECLAW_WEBHOOK_TOKEN. If missing, generate one:openssl rand -base64 24 | tr '+/' '-_' | tr -d '='and add it - Remove any legacydefaultSessionKeyentries that are no longer needed with dedicated mapping - Restart gateway only if config changed:openclaw gateway restart3. HomeClaw webhook config: - Check current config:homeclaw-cli config --json- Verify:webhook.enabledis true,webhook.urlishttp://127.0.0.1:18789,webhook.tokenmatches theHOMECLAW_WEBHOOK_TOKENfrom step 2, andwebhook_endpointis/hooks/homeclaw- Fix any mismatches via HomeClaw Settings UI or CLI - If circuit breaker shows old failures, reset it 4. End-to-end test: - Runhomeclaw-cli config --webhook-test-- expect HTTP 200 - Verify circuit state isclosedandlast_successis recent Report what was already configured, what was changed, and the test result.
<details> <summary>Step-by-step without an AI assistant</summary>
The agent docs are bundled inside the HomeClaw app. Because the app bundle is read-only, you need a local copy for OpenClaw to use as the agent directory:
```bash
The build script uses XcodeGen to generate the Xcode project and xcodebuild to compile all targets (HomeClaw Catalyst app, macOSBridge bundle, homeclaw-cli tool):
```bash
scripts/build.sh --release --install
scripts/build.sh --debug
scripts/build.sh --clean ```
Your Apple Developer Team ID is required, provided via .env.local, --team-id, or the HOMEKIT_TEAM_ID environment variable.
Development-signed builds are tied to registered devices. To run HomeClaw on another Mac:
1. Get the target Mac's Provisioning UDID -- on that Mac, run:
system_profiler SPHardwareDataType | grep "Provisioning UDID"
2. Register the device at developer.apple.com/account/resources/devices/add: - Platform: macOS - Device Name: a descriptive name (e.g. "Living Room MacBook Air") - Device ID: the Provisioning UDID from step 1
3. Rebuild on your development machine (Xcode regenerates the provisioning profile to include the new device):
scripts/build.sh --release --install --clean
/Applications/HomeClaw.app to the target Mac (AirDrop, USB, network share, etc.)Note: The target Mac must be signed into iCloud with an account that has HomeKit home data. HomeKit homes are tied to iCloud accounts, not to the app.
codesign -d --entitlements :- "/Applications/HomeClaw.app"
Development-signed apps are tied to registered devices. See Installing on Additional Macs for the full walkthrough.
<p align="center"> <img src="docs/images/framed-settings.png" width="700" alt="Settings — HomeKit homes and accessories overview"> <br><em>Settings — every preference in one place</em> </p>
<p align="center"> <img src="docs/images/framed-cli-list.png" width="700" alt="CLI — list every accessory in one command"> <br><em>CLI — every accessory, one command away</em> </p>
<p align="center"> <img src="docs/images/framed-tui.png" width="700" alt="Terminal UI — accessory tree with live status"> <br><em>Terminal UI — for power users</em> </p>
homeclaw-cli status homeclaw-cli config --default-home "Main House" homeclaw-cli config --filter-mode allowlist homeclaw-cli config --list-devices
homeclaw-cli config --webhook-url "http://127.0.0.1:18789" homeclaw-cli config --webhook-token "your-secret-token" homeclaw-cli config --webhook-enabled true homeclaw-cli config --webhook-test # Send test event, show HTTP response homeclaw-cli config --webhook-reset # Reset circuit breaker without toggling
homeclaw-cli status | jq . # Auto-detects non-TTY OUTPUT_FORMAT=json homeclaw-cli list # Force JSON via env var ```
Five configuration tabs accessible from the menu bar:
| Tab | Features |
|---|---|
| **HomeKit** | Connection status, home list with accessory and room counts, active home selector |
| **Devices** | Filter mode (all/allowlist), per-device toggles with category icons and state badges, grouped by room, search, bulk select/deselect |
| **Event Log** | Enable/disable event logging, configure file rotation (size limit + backup count), view storage stats, purge logs, reveal in Finder |
| **Webhook** | Configure webhook base URL + bearer token, select which scenes and accessories trigger webhooks with category icons and state badges. Accessories with multiple characteristics (e.g., a sensor with both contact and motion) show individual toggles per characteristic; battery characteristics are excluded. Per-trigger delivery mode (Batched/Immediate). Circuit breaker banners with Reset button, delivery stats, and last HTTP status. Test webhook connectivity from CLI or manage triggers via homeclaw-cli triggers. |
| **Integrations** | One-click install for Claude Desktop, Claude Code plugin detection, OpenClaw gateway setup |
Open Settings > Event Log to configure:
Or configure via CLI:
homeclaw-cli events # Show recent events
homeclaw-cli events --since 1h # Last hour
homeclaw-cli events --type characteristic_change # Filter by type
homeclaw-cli events --limit 200 --json # JSON output
Event types: characteristic_change, scene_triggered, accessory_controlled, homes_updated
The --since flag accepts ISO 8601 timestamps or duration shorthand: 1h, 30m, 2d.
echo 'HOMECLAW_WEBHOOK_TOKEN=<your-generated-token>' >> ~/.openclaw/.env
Restart the gateway: `openclaw gateway restart`
> **Warning:** The gateway rewrites `openclaw.json` on restart. Verify your mapping and transform entries survived by checking the file after restart. If a newly-added mapping is stripped, restart a second time -- there may be a race condition with first-time mappings.
#### 3. Configure HomeClaw
**Option A -- GUI:** Open Settings > Webhook. Toggle Enable, enter `http://127.0.0.1:18789` as the base URL, paste the same token from step 2.
**Option B -- CLI** (note: the CLI updates the running daemon only -- it does not persist to `config.json`. Use the Settings UI or edit the config file directly for persistent changes):
bash homeclaw-cli config --webhook-url "http://127.0.0.1:18789" \ --webhook-token "your-token" \ --webhook-enabled true
#### 4. Test the Pipe
bash homeclaw-cli config --webhook-test
You should see an HTTP 200 response. If it fails, check the token matches and the OpenClaw gateway is running.
> **Note:** Test events update `total_delivered` and `last_http_status` in the circuit breaker stats. After running `--webhook-test`, check `homeclaw-cli config --json` to confirm the values were updated.
#### 5. Create Triggers
In **Settings > Webhook**, check the accessories and scenes you want to fire webhooks. Only checked items generate events. Accessories with multiple characteristics (e.g., a sensor with both contact state and motion) show individual toggles so you can choose exactly which state changes fire webhooks. Battery-related characteristics are automatically excluded.
> **Note:** Trigger creation is GUI-only. The CLI can list and manage existing triggers (`homeclaw-cli triggers list`, `triggers remove`), but new triggers must be created in the HomeClaw app's Settings > Webhook tab.
#### 6. Test End-to-End
bash
ln -sf /path/to/homeclaw-cli /opt/homebrew/bin/homeclaw-cli
openclaw gateway restart ```
Install and manage connections to AI assistants. The app detects existing configurations and guides you through setup:
homeclaw@homeclaw)<p align="center"><img src="docs/images/settings-integrations.png" width="500" alt="Integrations settings tab"></p>
fastlane screenshots # Run HomeClawUITests in demo mode, extract PNGs to fastlane/screenshots/en-US/ fastlane upload_screenshots # Push screenshots to App Store Connect
The screenshot pipeline uses **demo mode** — `HomeKitManager.isDemoMode` (gated on `--ui-test-demo` launch arg or `HOMECLAW_DEMO=1`) bypasses HomeKit and serves synthetic data from `Sources/homeclaw/HomeKit/DemoFixtures.swift`. Real HomeKit data is never read or shown. Requires `xcparse` (`brew install chargepoint/xcparse/xcparse`).
Known follow-up: the menu-bar dropdown is `NSMenu` (AppKit), so it can't be auto-rendered via SwiftUI `ImageRenderer`. Capture it manually with `screencapture -x` of the running demo-mode app, or build a SwiftUI mockup of the dropdown.
Auth uses an App Store Connect API key from `~/.secrets.env` (`ASC_KEY_ID`, `ASC_ISSUER_ID`, `ASC_KEY_PATH`). Team ID comes from `.env.local` (`HOMEKIT_TEAM_ID`).
To open the archive in Xcode Organizer instead of uploading:
bash fastlane archive open '.build/archives/HomeClaw.xcarchive' ```
HomeClaw 是一款强大的智能家居控制工具,旨在打破传统边界,让你可以通过 AI 助手、终端命令行以及各类自动化工具来直接操控你的 Apple HomeKit 设备。无论是通过对话式 AI 还是脚本化指令,HomeClaw 都能为你提供灵活、智能的家居管理体验。
HomeClaw 支持通过命令行界面实时查看家庭设备状态。通过集成先进的 AI 能力,用户可以实现自然语言驱动的家居控制,并支持通过 Webhook 实现高度自定义的自动化工作流,让智能家居的交互不再局限于手机 App。
在开始之前,请确保你的开发环境已安装 Node.js。若需从源码构建项目,则需要 macOS 26 (Tahoe) 或更高版本系统、Xcode 26+ (支持 Swift 6.2)、XcodeGen 以及 Node.js 20+。此外,由于涉及 HomeKit 权限,你必须拥有启用了 HomeKit 能力的 Apple Developer account。
你可以通过 Mac App Store 直接下载安装 HomeClaw 应用。对于开发者,可以通过 npm 安装依赖进行本地构建。安装完成后,可以通过 Settings > Integrations 界面一键配置 Claude Desktop 或 OpenClaw 的 MCP 服务,也可以手动添加 MCP server 配置或通过 GitHub 安装 Claude Code 插件。
HomeClaw 提供强大的 CLI 配置能力。你可以使用 `homeclaw-cli config` 命令来设置默认家庭、过滤模式及设备列表。系统支持 Webhook 配置,允许你通过设置 URL 和 Token 来触发自动化事件,并支持通过 `homeclaw-cli config --webhook-test` 进行测试。此外,所有命令在管道传输或设置环境变量时会自动输出 JSON 格式,方便与 jq 等工具集成。
为了方便集成,建议将 CLI 工具创建软链接并加入到系统的 PATH 中(例如:`ln -sf /path/to/homeclaw-cli /opt/homebrew/bin/homeclaw-cli`),这样 AI Skill 或其他自动化脚本即可直接通过调用 `homeclaw-cli` 来执行指令。
HomeClaw 拥有完善的集成工作流。应用能够自动检测已安装的 Claude Code 插件,并引导用户完成 Claude Desktop 的 stdio MCP server 配置。对于自动化测试,项目内置了基于 XCUITest 的 App Store 截图流水线,支持通过 fastlane 在 demo mode 下自动运行测试并上传截图至 App Store Connect。
关于 HomeClaw 的常见问题解答,涵盖了从安装配置到 AI 集成过程中的各类技术细节,帮助开发者快速解决在连接 MCP 客户端或配置环境时可能遇到的障碍。
专业的HomeKit-MCP集成工具,填补了Claude控制Apple智能家居的空白。代码质量优秀,社区活跃度中等,适合苹果生态用户。
AI Skill Hub 为第三方内容聚合平台,本页面信息基于公开数据整理,不对工具功能和质量作任何法律背书。
建议在沙箱或测试环境中充分验证后,再部署至生产环境,并做好必要的安全评估。
✅ MIT 协议 — 最宽松的开源协议之一,可自由商用、修改、分发,仅需保留版权声明。
经综合评估,HomeClaw MCP工具 在MCP工具赛道中表现稳健,质量优秀。如果你已有明确的使用需求,可以直接上手体验;如果还在评估阶段,建议对比同类工具后再做决策。
| 原始名称 | HomeClaw |
| 原始描述 | 开源MCP工具:HomeKit smart home control via MCP — lights, locks, thermostats, and scenes for 。⭐108 · Swift |
| Topics | HomeKit智能家居MCP工具Swift开发苹果生态 |
| GitHub | https://github.com/omarshahine/HomeClaw |
| License | MIT |
| 语言 | Swift |
收录时间:2026-05-16 · 更新时间:2026-05-19 · License:MIT · AI Skill Hub 不对第三方内容的准确性作法律背书。
选择 Agent 类型,复制安装指令后粘贴到对应客户端