Homey-Wan-Kenobi MCP
OCI · DOCKER.IO/RINGOSYSTEMS/HOMEY-WAN-KENOBI:2.2.0 · SCANNED SEP 20
MCP server for Homey Pro: 60 tools for devices, flows, energy, and Z-Wave/Zigbee diagnostics.
Available components
How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. How we score → Why this is hard to score →
Supply Chain Security0
- Malware scan not yet available for this package.Unverified
- Known CVEs could not be checked: this artifact ships no SBOM, so there is no dependency list to read. Publishing one would let us assess it.Unverified
- Install-script risk not yet assessed.Unverified
- Dependency health could not be checked: this artifact ships no SBOM, so there is no dependency list to read. Publishing one would let us assess it.Unverified
Provenance & Transparency48
- Source repository is publicly reachable at the declared URL. View diagnostics → Pass
- Provenance check failed: no build-provenance attestation is published. See how to fix → View diagnostics → Fail
- Clear OSI-approved license (MIT).Pass
- Actively maintained (last published 81 days ago).Pass
- Publishes a security disclosure policy (SECURITY.md).Pass
Schema Quality & AI Usability88
- 100% of prompts and resources have a non-trivial description (not blank, and not just the item's name).Pass
- AI-judged instruction clarity (excellent).Pass
- Tool/resource definitions use about 3286 tokens (~54/item across 60 items; 60 tools + 0 resources), lean.Pass
- Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management83
- Stability observed for 25 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage97
- 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
- 92% of tool parameters carry a description.Partial
Tool Safety100
- No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
- All 5 tool(s) whose name or description implies an irreversible operation declare an MCP destructiveHint annotation.Pass
- An AI judge read all 60 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
- Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
Unverified: 1 category
A category scored 0 because we could not verify it: a data source with nothing on this package, evidence we could not reach, or a check we could not run. We only credit what we can confirm.
How do I install the Homey-Wan-Kenobi MCP server?
Homey-Wan-Kenobi MCP runs locally as a container image, launched with docker run --rm -i docker.io/ringosystems/homey-wan-kenobi:2.2.0. Ready-made configuration for Claude, Cursor, VS Code, Codex and 3 more is on this page, copied from each client's own documentation.
oci · docker.io/ringosystems/homey-wan-kenobi:2.2.0
claude mcp add ringosystems-homey-wan-kenobi-mcp -- docker run --rm -i docker.io/ringosystems/homey-wan-kenobi:2.2.0
{
"mcpServers": {
"ringosystems-homey-wan-kenobi-mcp": {
"command": "docker",
"args": [
"run",
"--rm",
"-i",
"docker.io/ringosystems/homey-wan-kenobi:2.2.0"
]
}
}
} {
"servers": {
"ringosystems-homey-wan-kenobi-mcp": {
"command": "docker",
"args": [
"run",
"--rm",
"-i",
"docker.io/ringosystems/homey-wan-kenobi:2.2.0"
]
}
}
} codex mcp add ringosystems-homey-wan-kenobi-mcp -- docker run --rm -i docker.io/ringosystems/homey-wan-kenobi:2.2.0
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"ringosystems-homey-wan-kenobi-mcp": {
"type": "local",
"command": [
"docker",
"run",
"--rm",
"-i",
"docker.io/ringosystems/homey-wan-kenobi:2.2.0"
],
"enabled": true
}
}
} mcp_servers:
ringosystems-homey-wan-kenobi-mcp:
command: "docker"
args: ["run", "--rm", "-i", "docker.io/ringosystems/homey-wan-kenobi:2.2.0"] {
"McpServers": {
"ringosystems-homey-wan-kenobi-mcp": {
"Transport": "stdio",
"Command": "docker",
"Arguments": [
"run",
"--rm",
"-i",
"docker.io/ringosystems/homey-wan-kenobi:2.2.0"
]
}
}
} {
"mcpServers": {
"ringosystems-homey-wan-kenobi-mcp": {
"command": "docker",
"args": [
"run",
"--rm",
"-i",
"docker.io/ringosystems/homey-wan-kenobi:2.2.0"
]
}
}
} Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.
- 20 Sept 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 80 to 83. That category is still filling its 30-day observation window: 24 days of observed history at the previous scan, 25 at this one. The score rises as the window fills, whether or not the server changes.
- 19 Sept 26 −3
- Stability: pass → 0.80 functional
- 18 Sept 26 0
- Stability: 0.97 → pass security
- 17 Sept 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 93 to 97. That category is still filling its 30-day observation window: 28 days of observed history at the previous scan, 29 at this one. The score rises as the window fills, whether or not the server changes.
- 15 Sept 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 87 to 90. That category is still filling its 30-day observation window: 26 days of observed history at the previous scan, 27 at this one. The score rises as the window fills, whether or not the server changes.
- 13 Sept 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 80 to 83. That category is still filling its 30-day observation window: 24 days of observed history at the previous scan, 25 at this one. The score rises as the window fills, whether or not the server changes.
- 12 Sept 26 −3
- Stability: pass → 0.80 functional
- 11 Sept 26 0
- Stability: 0.97 → pass security
Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.
Captured 20 Sept 2026 · Analysed oci/docker.io/ringosystems/homey-wan-kenobi:2.2.0
Provenance No attestation
The registry publishes no build provenance for this version, so there is nothing to verify.
| Result | No attestation |
|---|---|
| Ecosystem | oci |
| Reason | No attestation published |
Background: How many MCP packages publish verified provenance →
The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →
analyze_app_usage Analyze App Usage & Memory ~128
Cross-references installed apps against RAM usage (from the memory report), how many devices each provides, and whether each app is referenced by any flow (full flow definitions are scanned, not just metadata). Flags removal candidates (apps with 0 devices and no flow references, largest RAM first), reports potential RAM savings, and groups possible duplicate/overlapping app categories (e.g. multiple MQTT apps). Read-only and advisory; it does NOT uninstall anything. Caveat: a few apps run background logic (schedules, exports, tokens) without devices or flow cards, so verify before removing.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
create_advanced_flow Create Advanced Flow ~137
Create a new Advanced Flow. Provide a name and a 'cards' object keyed by UUID; each card has type (trigger/condition/action/note/start/delay/all/any), id (flow card id), optional args, x/y coordinates, and outputSuccess/outputError arrays linking to other card UUIDs. Returns the new flow id and broken status (broken=false means all cards resolved).
| Name | Type | Req | Description |
|---|---|---|---|
| cards | object | yes | Advanced-flow cards map keyed by UUID |
| enabled | boolean | – | Enable on creation (default true) |
| folder | string|null | – | Folder ID (optional) |
| name | string | yes | Flow name |
No output schema declared.
No examples provided.
create_backup Create Backup ~24
Schedule a new backup of the Homey configuration. Backup runs in the background.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
create_flow Create Standard Flow ~82
Create a standard WHEN/AND/THEN Flow. Provide a name and a 'flow' object containing trigger (card object) and optional conditions[]/actions[] arrays. Use get_flow on a similar flow to learn the exact card shape.
| Name | Type | Req | Description |
|---|---|---|---|
| flow | object | yes | Flow definition (trigger, conditions, actions, ...) |
| name | string | yes | Flow name |
No output schema declared.
No examples provided.
create_notification Send Notification ~38
Send a notification to the Homey timeline. Visible in the Homey app for all household members.
| Name | Type | Req | Description |
|---|---|---|---|
| excerpt | string | yes | Notification message text |
No output schema declared.
No examples provided.
create_zone Create Zone ~47
Create a new zone (room/area). Optionally nest it under a parent zone.
| Name | Type | Req | Description |
|---|---|---|---|
| name | string | yes | Zone name |
| parent | string | – | Parent zone ID (optional) |
No output schema declared.
No examples provided.
delete_advanced_flow Delete Advanced Flow ~33
Permanently delete an Advanced Flow by ID. Cannot be undone.
| Name | Type | Req | Description |
|---|---|---|---|
| id | string | yes | Advanced Flow ID |
No output schema declared.
No examples provided.
delete_alarm Delete Alarm ~34
Permanently delete an alarm. Use list_alarms to find the alarm ID.
| Name | Type | Req | Description |
|---|---|---|---|
| id | string | yes | Alarm ID |
No output schema declared.
No examples provided.
delete_flow Delete Standard Flow ~28
Permanently delete a standard Flow by ID. Cannot be undone.
| Name | Type | Req | Description |
|---|---|---|---|
| id | string | yes | – |
No output schema declared.
No examples provided.
diagnose_zigbee_network Diagnose Zigbee Network ~65
Read the Zigbee mesh state and report health: controller status, node count, per-node last-seen age, and detected issues with recommended remediations. Note: battery Zigbee devices sleep, so a stale last-seen on a battery node can be normal.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
diagnose_zwave_network Diagnose Z-Wave Network ~50
Read the Z-Wave controller state plus recent network log and report health: controller readiness/version, transmit failures grouped by node, currently-unavailable devices, and detected issues with recommended remediations.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
enable_app Enable/Disable App ~49
Enable or disable a Homey app. Disabled apps won't run and their devices become unavailable.
| Name | Type | Req | Description |
|---|---|---|---|
| enabled | boolean | yes | true to enable, false to disable |
| id | string | yes | App ID |
No output schema declared.
No examples provided.
get_advanced_flow Get Advanced Flow ~65
Get the full definition of an Advanced Flow by ID, including all cards (triggers/logic/actions) with their args, coordinates and outputSuccess/outputError connections. Use before update_advanced_flow to see the current structure.
| Name | Type | Req | Description |
|---|---|---|---|
| id | string | yes | Advanced Flow ID |
No output schema declared.
No examples provided.
get_backup_status Backup Status ~18
Get backup configuration and last successful backup timestamp.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
get_device Get Device Details ~54
Get detailed information about a specific device by ID, including all capability values, settings, and availability status. Use list_devices or search_devices first to find the device ID.
| Name | Type | Req | Description |
|---|---|---|---|
| id | string | yes | Device ID (UUID format) |
No output schema declared.
No examples provided.
get_energy_live Live Energy Report ~42
Get real-time power consumption broken down by zone and device. Returns watts (W) currently being consumed. Useful for answering 'what is using power right now?'
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
get_energy_report Energy Report ~69
Get energy consumption report for a specific period. Returns kWh consumed per device. Useful for 'how much energy did I use today/this week/this month?'
| Name | Type | Req | Description |
|---|---|---|---|
| date | string | – | Date in YYYY-MM-DD format (default: today) |
| period | string | yes | Report period |
No output schema declared.
No examples provided.
get_flow Get Standard Flow ~45
Get the full definition of a standard (WHEN/AND/THEN) Flow by ID, including its trigger, conditions and actions cards.
| Name | Type | Req | Description |
|---|---|---|---|
| id | string | yes | Flow ID |
No output schema declared.
No examples provided.
get_flow_card Get Flow Card ~83
Get the full definition of one flow card (by type + id), including its arguments (names, types, dropdown values, ranges). Use this to learn exactly what args a card needs when building a flow.
| Name | Type | Req | Description |
|---|---|---|---|
| id | string | yes | Flow card id (e.g. homey:device:<uuid>:windowcoverings_set) |
| type | string | yes | – |
No output schema declared.
No examples provided.
get_insight_entries Get Insight History ~73
Get historical data points for an insight log. Returns timestamped values (e.g. temperature readings over time). Use list_insights first to find the log ID.
| Name | Type | Req | Description |
|---|---|---|---|
| id | string | yes | Insight log ID (from list_insights) |
| resolution | string | – | Time range (default: last24Hours) |
No output schema declared.
No examples provided.
get_ledring LED Ring Status ~19
Get LED ring screensaver options and current setting.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
get_location Get Location ~29
Get Homey's configured geographic location (address and GPS coordinates). Used for sunrise/sunset calculations and weather.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
get_memory_info Memory Usage ~30
Get Homey memory usage breakdown by app and system component. Useful for identifying memory-hungry apps.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
get_presence Get Presence Status ~36
Get home/away and awake/asleep status for all household members. Useful for 'is anyone home?' or 'who is home?'
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
get_session Session Info ~23
Get current API session details including authenticated user, role, and permission scopes.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
get_storage_info Storage Usage ~31
Get Homey storage usage breakdown. Shows how much disk space is used by apps, insights, and system.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
get_system_info System Information ~28
Get Homey system information including software version, hostname, Wi-Fi network, and hardware details.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
get_updates Check Updates ~25
Check for available Homey system updates and current update settings (channel, auto-update).
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
get_weather Current Weather ~42
Get current weather conditions at Homey's location. Returns temperature, humidity, pressure, wind, and weather state (e.g. 'clear sky', 'overcast clouds').
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
get_weather_hourly Hourly Weather Forecast ~28
Get hourly weather forecast at Homey's location. Returns temperature and weather conditions for upcoming hours.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
get_zwave_log Z-Wave Log ~41
Get recent Z-Wave network log entries. Shows transmit failures, routing issues, and network events. Essential for diagnosing Z-Wave device connectivity problems.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
homey_api_call Raw Homey API Call ~123
Advanced escape hatch: call any Homey Web API endpoint directly. method is GET/POST/PUT/DELETE; path is the API path (e.g. /manager/zwave/state); body is an optional JSON object. Use to reach endpoints not yet wrapped by a dedicated tool, including new firmware capabilities. Prefer the dedicated tools when one exists.
| Name | Type | Req | Description |
|---|---|---|---|
| body | object | – | Optional JSON body for POST/PUT |
| method | string | yes | HTTP method |
| path | string | yes | API path, e.g. /manager/zwave/state |
No output schema declared.
No examples provided.
list_alarms List Alarms ~22
List all alarms and timers with their schedule and repetition days.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
list_apps List Installed Apps ~40
List all installed Homey apps with version, enabled status, and origin (appstore or devkit). Apps provide device drivers, flow cards, and integrations.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
list_devices List Devices ~122
List all Homey devices with current capability values. Returns device ID, name, class, zone, availability, capabilities, and live sensor/state values. Use 'zone' to filter by room name (partial match) or 'class' to filter by device type (light, sensor, thermostat, speaker, lock, socket, etc).
| Name | Type | Req | Description |
|---|---|---|---|
| class | string | – | Filter by device class (e.g. light, sensor, thermostat, speaker, lock, socket) |
| zone | string | – | Filter by zone name (partial match, e.g. 'kitchen') |
No output schema declared.
No examples provided.
list_drivers List Drivers ~28
List all available device drivers (protocol integrations). Useful for troubleshooting — shows which drivers are ready.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
list_flow_cards List Flow Cards ~118
List available flow cards of a given type (trigger/condition/action). There are hundreds, so filter by a substring matched against the card id/title/uri (e.g. a device UUID to find that device's cards, or 'windowcoverings', 'dim', 'button'). Returns id + title. Use get_flow_card for full args.
| Name | Type | Req | Description |
|---|---|---|---|
| filter | string | – | Substring matched against card id, title and uri |
| limit | number | – | Max results (default 60) |
| type | string | yes | Card type |
No output schema declared.
No examples provided.
list_flows List Flows ~48
List all automation flows (simple and advanced). Returns flow ID, name, enabled/broken status, and type. Flows are Homey's automations with WHEN/AND/THEN logic.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
list_insights List Insight Logs ~49
List all available insight logs (sensor history, energy meters, etc). Returns log ID, title, data type, and units. Use the log ID with get_insight_entries to retrieve historical data.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
list_moods List Moods ~46
List all moods (scenes/presets) per zone. Moods save device states that can be activated together (e.g. 'Movie Mode' dims lights and closes blinds).
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
list_notifications List Notifications ~30
List the 50 most recent Homey notifications (app updates, alerts, system messages). Sorted newest first.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
list_variables List Logic Variables ~38
List all logic variables with their current values. Logic variables store state (boolean, number, string) that can be used in flow conditions and actions.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
list_zones List Zones ~49
List all zones (rooms/areas) in the home with their hierarchy. Returns zone ID, name, parent zone, and icon. Zones are organized in a tree: Home → Floors → Rooms.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
move_device_to_zone Move Device to Zone ~56
Move a device to a different zone (room). Use list_zones for the zone ID and list_devices for the device ID.
| Name | Type | Req | Description |
|---|---|---|---|
| id | string | yes | Device ID |
| zoneId | string | yes | Target zone ID |
No output schema declared.
No examples provided.
reboot_homey Reboot Homey ~46
Reboot the Homey Pro. Takes 2-3 minutes to come back online. Use this to resolve stale devices or Z-Wave/Zigbee mesh issues after firmware updates.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
rename_device Rename Device ~39
Rename a device. Use list_devices to find the device ID.
| Name | Type | Req | Description |
|---|---|---|---|
| id | string | yes | Device ID |
| name | string | yes | New name |
No output schema declared.
No examples provided.
restart_app Restart App ~66
Restart a Homey app. Useful when devices from that app are unresponsive. Use list_apps to find the app ID (e.g. 'com.fibaro').
| Name | Type | Req | Description |
|---|---|---|---|
| id | string | yes | App ID (e.g. com.fibaro, nl.philips.hue) |
No output schema declared.
No examples provided.
search_devices Search Devices ~87
Search devices by name, device class, or capability name. Returns matching devices with their current values. Useful for finding devices when you don't know the exact ID — e.g. search 'temperature' to find all temperature sensors, or 'kitchen' to find devices with kitchen in the name.
| Name | Type | Req | Description |
|---|---|---|---|
| query | string | yes | Search text (matches against device name, class, and capability names) |
No output schema declared.
No examples provided.
set_alarm Create/Update Alarm ~95
Create a new alarm or update an existing one. Specify time in HH:MM format and optionally which days to repeat.
| Name | Type | Req | Description |
|---|---|---|---|
| enabled | boolean | – | Enable/disable (default: true) |
| id | string | – | Alarm ID (omit to create new) |
| name | string | yes | Alarm name |
| repetition | object | – | Days to repeat |
| time | string | yes | Time in HH:MM format (24h) |
No output schema declared.
No examples provided.
set_device_capability Control Device ~131
Control a device by setting a capability value. Common capabilities: 'onoff' (boolean — turn on/off), 'dim' (number 0-1 — brightness), 'target_temperature' (number — thermostat setpoint), 'volume_set' (number 0-1). Use get_device first to see available capabilities and their current values.
| Name | Type | Req | Description |
|---|---|---|---|
| capability | string | yes | Capability ID (e.g. onoff, dim, target_temperature, volume_set) |
| deviceId | string | yes | Device ID |
| value | boolean|number|string | yes | Value to set (type depends on capability) |
No output schema declared.
No examples provided.
What is the Homey-Wan-Kenobi MCP server?
Homey-Wan-Kenobi MCP is listed in the public MCP registry as io.github.Ringosystems/homey-wan-kenobi-mcp. MCP server for Homey Pro: 60 tools for devices, flows, energy, and Z-Wave/Zigbee diagnostics. This page covers its container image (docker.io/ringosystems/homey-wan-kenobi:2.2.0).
Is the Homey-Wan-Kenobi MCP server safe to use?
Homey-Wan-Kenobi MCP scores 55 out of 100 on VerifyMCP. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.
What tools does the Homey-Wan-Kenobi MCP server expose?
Homey-Wan-Kenobi MCP exposes 60 tools: list_devices, get_device, search_devices, set_device_capability, list_zones, and 55 more. Their descriptions and schemas cost roughly 3,286 tokens of context every time the server is loaded.
Is the Homey-Wan-Kenobi MCP server still maintained?
Homey-Wan-Kenobi MCP is still listed as active in the MCP registry. We last reached this channel on 20 September 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.
What licence is the Homey-Wan-Kenobi MCP server under?
Homey-Wan-Kenobi MCP declares the MIT licence, which is OSI-approved. That covers the source only, and says nothing about the cost of any service it calls.