Homebridge
Overview
Description from the maker (original English)
Control Homebridge accessories and scenes, manage plugins and config.json, and read logs
PopNx MCP’s three pillars
These three are never merged into one score: opinions, measurements and popularity are different things.
- User voiceiNo reviews yetReviews open together with accounts in a later step
- Our basic checksi2 of 2 passedChecked from public information; code not scanned yet
- UsageiEarly↓ 147/wk · ★ 10
What you can do with it
We have not written a plain-language summary for this one yet. Below are the facts we read from the registry.
- Connection: Runs on your computer
- Transport: stdio
- Category: Developer tools
- You need to fill in: HOMEBRIDGE_URL, HOMEBRIDGE_TOKEN, HOMEBRIDGE_PASSWORD
Install
Pick the AI app you use, then copy the settings.
Before you install
- Basic checks: 2 of 2 passed
- Runs on your computer with your user’s permissions (files, network, apps).
- You fill in yourself:
HOMEBRIDGE_URL,HOMEBRIDGE_TOKEN,HOMEBRIDGE_USERNAME,HOMEBRIDGE_PASSWORD,HOMEBRIDGE_READ_ONLY
Values marked secret are keys to your account. Never share them or paste them into a chat.
You need
Which app do you use?
Pick your app above. We remember it, so next time the button says “Install in …”.
Download the maker’s .mcpb file
The link goes to the maker’s own file; we do not host or repackage it. Open the file and Claude Desktop installs it.
Run this in your terminal
claude mcp add homebridge-ai-kit --env HOMEBRIDGE_URL=your-value --env HOMEBRIDGE_TOKEN=your-value --env HOMEBRIDGE_USERNAME=your-value --env HOMEBRIDGE_PASSWORD=your-value --env HOMEBRIDGE_READ_ONLY=your-value -- npx -y @mp-consulting/homebridge-ai-kit mcpFill in the empty values before running it.
Or copy the settings yourself
Paste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json
{
"mcpServers": {
"homebridge-ai-kit": {
"command": "npx",
"args": [
"-y",
"@mp-consulting/homebridge-ai-kit",
"mcp"
],
"env": {
"HOMEBRIDGE_URL": "your-value",
"HOMEBRIDGE_TOKEN": "your-value",
"HOMEBRIDGE_USERNAME": "your-value",
"HOMEBRIDGE_PASSWORD": "your-value",
"HOMEBRIDGE_READ_ONLY": "your-value"
}
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
Or copy the settings yourself
Paste into .vscode/mcp.json in your project
{
"servers": {
"homebridge-ai-kit": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@mp-consulting/homebridge-ai-kit",
"mcp"
],
"env": {
"HOMEBRIDGE_URL": "your-value",
"HOMEBRIDGE_TOKEN": "your-value",
"HOMEBRIDGE_USERNAME": "your-value",
"HOMEBRIDGE_PASSWORD": "your-value",
"HOMEBRIDGE_READ_ONLY": "your-value"
}
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
This one runs on your computer, and ChatGPT can only connect to servers on the internet. Pick another app.
Your choice stays on this device in a cookie; no account needed.
Values you fill in
- Homebridge UI URL, e.g. http://192.168.1.100:8581
HOMEBRIDGE_USERNAMEenvHomebridge UI username, when no token is set- Homebridge UI password, when no token is set
HOMEBRIDGE_READ_ONLYenvtrue registers only read-only tools
These settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.
Which apps can use it
Based on how this server connects and on each app’s own docs, checked Nov 10, 2026.
Run on your computer in
ClaudeGooseLM StudioMsty StudioCherry StudioCursorVS Code + GitHub CopilotVisual StudioWindsurf (Devin Desktop)ZedKiroClineContinueJetBrains AI AssistantClaude CodeCodex CLIGemini CLIOpenCodenodecodeWarpLibreChatRaycast
What it can do
Runs on your computer; the tool list appears in your AI app after you install it.
Basic checksi
We check information anyone can see; we have not read the code. Checks that do not apply are left out of the count. · Checked Nov 10, 2026
- ✓ Pass
Maker matches the repo
The registry name was verified with the GitHub account mp-consulting, which owns the repo
- ✓ Pass
Still maintained
Code last changed 3 days ago
- … Not checked yet
Has a licence
We have not read this repo from GitHub yet
- – Not applicable
Endpoint responds
This one runs on your computer; there is no internet endpoint
- – Not applicable
Sign-in with OAuth
Runs on your computer and uses local settings instead
- … Not checked yet
No hidden instructions in tool descriptions
Runs on your computer; we can only read tool lists from internet endpoints
Compared with others in Developer toolsi
- More stars than 89% of the other 5724 servers in this category
- Published to the registry more recently than 60% of the other 5724 servers in this category
- Basic checks equal to or better than 100% of the other 5724 servers in this category
Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.
Common questions
Is Homebridge safe?
It passed 2 of 2 applicable basic checks. We have not read the code. Before adding a key or token, see what access the server asks for and use a key with only the permissions you need.
What keys or codes does it need?
You need to fill in: HOMEBRIDGE_URL, HOMEBRIDGE_TOKEN, HOMEBRIDGE_PASSWORD
Does it run on my computer or in the cloud?
It runs on your computer. Your AI app starts it when needed, and data does not pass through the maker’s servers (unless it calls an online service itself).
Is it still maintained?
The GitHub repo last changed 3 days ago, and the latest version (3.1.3) reached the registry 19 days ago.
Which apps can use it?
Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. You also need Node.js, MCPB on your computer.
What can I use instead?
In the same category: REA, Netdata, Front-End Checklist
Alternatives
Servers in the same category from other makers, sorted by stars.
Reading a card:↓ Downloads per weeki★ GitHub starsiThree pillars: reviews · checks · usageiUpdated = latest version published to the registryi
Netdata
Real-time infrastructure monitoring with metrics, logs, alerts, and ML-based anomaly detection.
Front-End Checklist
Review frontend code and live pages against 386 quality-gated web development rules.
README from the maker
Open the README
Copied from the maker’s repo as written. PopNx MCP has not reviewed or endorsed it. HTML, images and scripts are removed. Links lead off this site.
@mp-consulting/homebridge-ai-kit
AI toolkit for Homebridge, in one package:
- An MCP server that lets AI assistants (Claude Desktop, Claude Code, Cursor) control accessories, manage plugins, edit configuration and read logs, over stdio or Streamable HTTP.
- The Assistant: provider adapters (Claude, OpenAI, Gemini, any OpenAI-compatible server), an agent loop wired to the MCP tools, and ready-made features (log doctor, config copilot, device-error explainer, update-risk briefing, organiser, daily digest). Homebridge Glass UI and the MP Consulting plugins use these.
- A Homebridge plugin (
HomebridgeAiKitplatform) with a settings page to pick the provider and model, test the connection, serve MCP over HTTP and generate client configs.
The AI building blocks that don't need MCP also ship on their own as @mp-consulting/homebridge-ai-core — see Packages.
Renamed from `@mp-consulting/homebridge-mcp-server`. The old
homebridge-mcp-servercommand still works, so existing MCP client configs don't need to change. See Migrating from homebridge-mcp-server.
Contents
- Packages
- Features
- Providers
- Homebridge plugin · MCP tokens
- MCP server
- Library API
- Security
- Migrating from homebridge-mcp-server
- Development
Packages
This repository is an npm workspace that publishes two packages, both at version 2.0.0:
| Package | Use it for | Runtime dependencies |
|---|---|---|
@mp-consulting/homebridge-ai-core | Homebridge plugins. The plugin-UI Assistant routes (registerAiRoutes from ./plugin), providers, redaction, prompts, config and the Assistant features (everything except runAgent). | ajv only |
@mp-consulting/homebridge-ai-kit (this package) | Homebridge Glass UI and MCP. Everything in ai-core (re-exported) plus the MCP server, runAgent, the HomebridgeAiKit Homebridge plugin and mcpClientSnippets. | ai-core, @modelcontextprotocol/sdk, socket.io-client, zod, undici, @homebridge/plugin-ui-utils |
Plugins should depend on ai-core, so installing them doesn't pull in the MCP SDK, socket.io or zod. ai-kit stays backward compatible: its . and ./plugin exports re-export everything ai-core has under the same names, so code that imports from ai-kit keeps working.
Features
MCP tools (43): accessories (list, get, control with value checks, bulk control with dryRun, locks / garage doors / alarms behind confirmation, room layout, sensor history), scenes (list, run, save), server (status, restart, pairing, cached accessories), child bridges (list, health, restart, stop, start), config (read with secrets redacted, full write, partial patch_config, dryRun diffs, backups and restore), instance backups, test notifications, plugins (list, search, versions, schema, changelog, install, update, uninstall), system info and logs (recent lines, filtered regex search).
MCP resources you can subscribe to: homebridge://accessories, homebridge://logs/recent, homebridge://status. Changes arrive over the Homebridge UI's socket.io namespaces, or by polling when the socket can't be used.
MCP resource templates (listed in resources/list, with completion): homebridge://accessory/{uniqueId} (one accessory with every characteristic), homebridge://plugin/{name} (one installed plugin and its child bridges; URL-encode scoped names), homebridge://child-bridge/{id} (one child bridge by username, with its health on Glass UI).
MCP prompts: diagnose-logs, plan-upgrade, audit-config, troubleshoot-device (device, symptom?), nightly-health-check (hours?), scene-builder (description, room?).
Assistant features (library): diagnoseLogs, generatePluginConfig, explainDeviceError, assessPluginUpdate, suggestOrganization, dailyDigest, ask, and runAgent for anything that needs the tools. Every input is redacted before it reaches a provider and trimmed to fit its context window; JSON outputs are checked against a schema with one automatic repair attempt; token usage and Claude costs are tracked.
Providers
All providers use plain fetch (no SDKs). Each declares what it can do, and features without tool calling fall back to prompt-only answers.
provider | Default model | API key | Tools | Streaming | Context |
|---|---|---|---|---|---|
anthropic | claude-sonnet-5-5 | required | yes | yes | 1M (200K for Haiku) |
openai | gpt-6.1-sol | required | yes | yes | 128K (set contextTokens for more) |
gemini | gemini-3.8-flash | required | yes | yes | 1M |
openai-compatible | llama3.1 | optional | yes | yes | 8K (set contextTokens) |
- Claude models:
claude-sonnet-5-5(default),claude-haiku-4-5-20251001(cheapest),claude-opus-5-5(most capable). - OpenAI models:
gpt-6.1-sol(default),gpt-6-luna(cheapest),gpt-6-astra(most capable). Requests use the Responses API withstore: false(nothing is kept on OpenAI's side); newer models only call tools through it. Set"openaiApi": "chat"to use Chat Completions instead, e.g. for a proxy that only speaks it. openai-compatibleworks with Ollama (http://127.0.0.1:11434/v1, the default), LM Studio (http://127.0.0.1:1234/v1), vLLM and similar. SetcontextTokensto your model's context window so inputs are trimmed correctly.- An on-device Apple Foundation Models provider is planned.
Homebridge plugin
Install it like any plugin (Homebridge 1.8+ or 2.x):
npm install -g @mp-consulting/homebridge-ai-kit
Then open its settings in the Homebridge UI. The settings page edits the HomebridgeAiKit platform block, tests the connection with the values in the form, and shows ready-to-paste configs for Claude Desktop, Claude Code and Cursor.
{
"platform": "HomebridgeAiKit", "name": "AI Kit", "enabled": true, "provider": "anthropic", // anthropic | openai | gemini | openai-compatible "model": "claude-sonnet-5-5", // optional, defaults per provider "apiKey": "sk-ant-…", // secret, redacted wherever config is shown to a model "baseUrl": "http://127.0.0.1:11434/v1", // openai-compatible only (or a proxy) "contextTokens": 32768, // optional override, mainly for local models "maxOutputTokens": 2048, "effort": "medium", // Claude and OpenAI: low | medium | high | xhigh | max (unset = model default) "openaiApi": "responses", // openai / openai-compatible: responses | chat (default responses for OpenAI, chat for local servers) "maxRetries": 2, // retries on 408/429/5xx/529 and network errors (backoff, honours retry-after); 0 = off "mcp": { "http": { "enabled": false, "host": "127.0.0.1", "port": 8582, "token": "…", // bearer token MCP clients must send "homebridgeUrl": "http://127.0.0.1:8581", "homebridgeToken": "hbg_…", // Glass UI API token the tools act with "homebridgeTokenId": "…", // written by Glass UI so it can revoke that token; leave as is "homebridgeCertFingerprint": "AB:CD:…", // https UI with a self-signed certificate: its SHA-256 fingerprint "homebridgeCertPath": "/path/to/certificate.pem", // or a PEM with the UI's certificate or its CA "readOnly": false, // true caps every client token at read-only "clients": [ // more client tokens, each with a scope: read | control | admin { "name": "Dashboard", "token": "…", "scope": "read" } ], "allowedOrigins": ["https://my-dashboard.local"], // browser pages allowed besides localhost / this server's IP "auditLog": true, // log every write tool call (JSONL) "auditLogPath": "/var/lib/homebridge/homebridge-ai-kit-audit.jsonl" // default: Homebridge storage path } } }
With mcp.http.enabled, the plugin serves MCP at http:// : /mcp while Homebridge runs. It needs a client token (mcp.http.token, HOMEBRIDGE_AI_MCP_TOKEN, or at least one scoped token in mcp.http.clients) and Homebridge credentials: a Glass UI API token in homebridgeToken, or the HOMEBRIDGE_* environment variables. A read-only API token gives clients read-only access.
MCP tokens
The MCP server uses two different tokens:
| Token | What it is for | Stored in |
|---|---|---|
| Client token | What Claude, Cursor or another MCP client must send (Authorization: Bearer …) to reach the HTTP MCP server. Full access (admin), or read-only with mcp.http.readOnly | mcp.http.token (or HOMEBRIDGE_AI_MCP_TOKEN for the CLI) |
| Scoped client tokens | Optional extra client tokens with less access, e.g. a read-only token for a dashboard | mcp.http.clients (or HOMEBRIDGE_AI_MCP_TOKENS for the CLI) |
| Homebridge API token | What the MCP server sends to the Homebridge UI to run its tools. Its scope decides what clients can do: read gives read-only tools, admin gives all of them | mcp.http.homebridgeToken (or HOMEBRIDGE_TOKEN for the CLI) |
Where to set or generate them:
- Homebridge Glass UI 2.0.0-beta.6 or later: *Settings → Assistant → MCP server* generates the client token, creates the Homebridge API token in one click (read-only or admin, revoked again when you replace or remove it), and shows the client configs. Each secret is shown once; after that the page only says whether one is set.
- This plugin's settings page: *Generate* creates a client token. Paste a Homebridge API token created in Glass UI under *Users → API Tokens*.
- The CLI: set
HOMEBRIDGE_AI_MCP_TOKENandHOMEBRIDGE_TOKEN(see MCP server), e.g.HOMEBRIDGE_AI_MCP_TOKEN=$(openssl rand -base64 24).
Client token scopes (each includes the ones before it):
| Scope | Tools |
|---|---|
read | Every read-only tool |
control | Plus device control: set_accessory, set_security_accessory (locks still need the user's confirmation), set_accessories, run_scene |
admin | Plus everything else: config writes and restores, backups, save_scene, test notifications, plugin installs and updates, restarts, cached accessories, child bridges |
The main client token is admin (as before), or read when readOnly is on; readOnly caps the scoped tokens too. A session belongs to the token that opened it. The client token decides which tools a client sees; the Homebridge API token still limits what the server itself can do, so a read API token keeps everything read-only.
Every write tool call is appended to an audit log ( /homebridge-ai-kit-audit.jsonl by default; mcp.http.auditLog / auditLogPath, or HOMEBRIDGE_AI_AUDIT_LOG for the CLI): one JSON object per line with ts, tool, args (secrets redacted), ok, error, session, client, principal (the token's name: default for the main token, agent for runAgent) and scope; notConfirmed: true marks a destructive call the user declined (MCP elicitation, or runAgent's confirm), which did not run. Dry runs are logged too, with dryRun: true in args. runAgent takes the same audit option. It rotates at 5 MB and keeps three old files.
Glass UI also stores homebridgeTokenId, the id of the API token it created, so it can revoke the token when you replace or remove it. The settings page keeps it (and any other field it doesn't show) when it saves.
Homebridge UI over HTTPS with a self-signed certificate
Node refuses a self-signed certificate, so the MCP server can't reach a Homebridge UI served that way until you tell it which certificate to trust. Verification is never turned off: the setting only appli