Homey MCP Server
Click on "Deploy 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., "@Homey MCP Server turn on the living room lights and set brightness to 50%"
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.
UPDATE
Homey now offer their own MCP Server: https://homey.app/en-gb/news/introducing-the-homey-mcp-server/
MCP Server for Homey
Model Context Protocol (MCP) server for interacting with the Homey smart home platform.
Features
Device Management: List and control all Homey devices
Capability Control: Set device capabilities (on/off, brightness, temperature, etc.)
Zone Management: List and organize zones
Flow Automation: List and trigger Homey Flows
Examples
"Show me all lights that are on downstairs"
"Can you turn on the livingroom light and set its brightness to 75%"
"What is the livingrooms temperature?"
Prerequisites
Node.js >= 18
A Homey Pro device with local API access
Homey API token and local IP address
Getting Homey API Credentials
Navigate to Settings → API Keys in the Homey Web App
Tap "New API Key"
Give it a name and select appropriate permissions
Copy the generated API token
Find your Homey's local IP address in Settings → General → Network
Installation
npm install
npm run buildConfiguration
Create a .env file or set environment variables:
HOMEY_API_TOKEN=your_api_token_here
HOMEY_LOCAL_IP=192.168.1.xxxUsage
Running the Server
npm run build
node dist/index.jsClaude Desktop Configuration
Add to your Claude Desktop config file:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"homey": {
"command": "node",
"args": ["/absolute/path/to/demo/dist/index.js"],
"env": {
"HOMEY_API_TOKEN": "your_api_token_here",
"HOMEY_LOCAL_IP": "192.168.1.xxx"
}
}
}
}Available Tools
list_devices
List all devices connected to Homey with their capabilities and status.
get_device
Get detailed information about a specific device.
Parameters:
deviceId(string): The ID of the device
set_capability
Set a capability value for a device.
Parameters:
deviceId(string): The ID of the devicecapability(string): The capability to set (e.g.,onoff,dim,target_temperature)value(any): The value to set
Examples:
Turn on a light:
{ deviceId: "abc123", capability: "onoff", value: true }Set brightness:
{ deviceId: "abc123", capability: "dim", value: 0.5 }Set temperature:
{ deviceId: "abc123", capability: "target_temperature", value: 21 }
list_zones
List all zones in your Homey setup.
list_flows
List all available Flows.
trigger_flow
Trigger a specific Homey Flow.
Parameters:
flowId(string): The ID of the flow to trigger
Development
Watch Mode
npm run watchLint
npm run lintFix Linting Errors
npm run lint:fixProject Structure
.
├── src/
│ └── index.ts # Main MCP server implementation
├── dist/ # Compiled JavaScript output
├── package.json
├── tsconfig.json
└── README.mdCommon Device Capabilities
onoff: Turn device on/off (boolean)dim: Brightness level (0-1)target_temperature: Target temperature (number)measure_temperature: Current temperature (read-only)measure_power: Power consumption (read-only)measure_humidity: Humidity level (read-only)volume_set: Volume level (0-1)speaker_playing: Playback state (boolean)
Troubleshooting
Connection Issues
Verify your Homey's local IP address hasn't changed
Ensure the API token has sufficient permissions
Check that your device is on the same network as Homey
Device Not Found
Use
list_devicesto get the correct device IDVerify the device is available in the Homey app
License
MIT
Available Tools
6 toolsget_deviceC
Get details about a specific device
Inputs: deviceId (required).
list_devicesB
List all devices connected to Homey
Inputs: no named parameters.
list_flowsB
List all flows in Homey
Inputs: no named parameters.
list_zonesB
List all zones in Homey
Inputs: no named parameters.
set_capabilityC
Set a capability value for a device (e.g., turn on/off, set brightness)
Inputs: deviceId (required), capability (required), value (required).
trigger_flowC
Trigger a Homey Flow
Inputs: flowId (required).
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 6 tools
Each tool has a clearly distinct purpose: get_device retrieves details for a specific device, list_devices lists all devices, list_flows lists flows, list_zones lists zones, set_capability modifies device capabilities, and trigger_flow activates flows. There is no overlap or ambiguity between these functions.
All tool names follow a consistent verb_noun pattern with snake_case: get_device, list_devices, list_flows, list_zones, set_capability, and trigger_flow. This uniformity makes the tool set predictable and easy to understand.
With 6 tools, this server is well-scoped for managing a Homey system. The count is appropriate, covering key operations like device management, flow control, and zone listing without being overwhelming or insufficient.
The tool set covers core Homey operations well, including device retrieval, listing, capability setting, and flow management. A minor gap is the lack of tools for creating, updating, or deleting devices, flows, or zones, but agents can still perform essential tasks with the provided tools.
Related MCP Connectors
Control your Tesla from your AI assistant - climate, charging, access, and security.
Control your existing Philips lights, Sonos speakers, Roborock vacuums and other supported devices through Port OS cloud. Give ChatGPT, Claude and other MCP-compatible assistants access to the devices you connect. Turn off the living room lights, play music on your speakers, adjust the thermostat, run a vacuum in a room, check a camera snapshot or find a connected tracker. Available actions depend on your linked provider accounts and each device’s supported capabilities. Port OS runs in the cloud; no local server is required. You choose the account, device and capability permissions each assistant receives. Device operations require user OAuth; public tool discovery does not grant device access. Port OS is in alpha. Setup: https://portoperatingsystem.com/docs/getting-started/ Support: https://portoperatingsystem.com/contact/
Home energy for AI assistants: live Power flow, Energy history, solar forecast, and device control.
Build and run agents and automations across hundreds of apps using natural language.