# Mcp-homey

**URL:** <https://community.homey.app/t/mcp-homey/137994>\
**Category:** Developers\
**Tags:** homey-pro\
**Created:** [June 11, 2025, 8:43am UTC](https://community.homey.app/t/mcp-homey/137994 "2025-06-11T08:43:13Z")\
**Posts on this page:** 20\
**Page:** 1

<div class="post-metadata">

**Author:** ![Baddelomeus](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/baddelomeus/32/115133_2.png) [@Baddelomeus](https://community.homey.app/u/Baddelomeus)\
**Post date:** [June 11, 2025, 8:43am UTC](https://community.homey.app/t/mcp-homey/137994/1 "2025-06-11T08:43:13Z")

</div>

# 🤖 Claude AI + Homey Integration via MCP Protocol - Looking for Feedback!

Hey Homey community! 👋

I’ve been working on something exciting that I’d love to share and get your feedback on. I’ve created an **MCP (Model Context Protocol) server** that allows **Claude AI** to directly control your Homey devices through natural language conversations!

## 🚀 What is this?

This integration lets you chat with Claude AI and control your entire Homey setup just by talking to it naturally:

- _“Turn on the kitchen lights at 75%”_
- _“Set the thermostat to 22 degrees”_
- _“Start my evening routine”_
- _“What’s the temperature in the bedroom?”_
- _“Show me my energy usage this month”_

## ✨ Features

**🏠 Complete Device Control (21 tools total):**

- Control lights, thermostats, sensors, and smart appliances
- Zone-based control (“turn off all bedroom lights”)
- Advanced light control (color, brightness, temperature)
- Thermostat management
- Flow/automation triggering

**📊 Smart Analytics:**

- Historical device data and trends
- Energy consumption monitoring
- Real-time dashboard metrics
- Usage pattern detection
- Data export capabilities

**🌍 Cross-Platform:**

- Works on Windows, macOS, and Linux
- Simple setup via Claude Desktop
- Demo mode for testing without real devices

## 🛠 How it works

The integration uses Homey’s local API and runs as an MCP server that connects to Claude Desktop. You configure it once, and then you can have natural conversations with Claude about your smart home.

**Example conversation:**

```auto
You: "What devices do I have in the living room?"
Claude: Shows all your living room devices with current status

You: "Turn on the living room lamp and set it to warm white"
Claude: Executes the command and confirms the action

You: "Show me yesterday's energy usage"
Claude: Displays detailed energy consumption analytics

```

## ⚠ Current Status & Feedback Needed

**This is still experimental!** While the core functionality works, I’m sure there are edge cases and improvements needed. I’d really appreciate feedback on:

1. **Device compatibility** - Does it work with your specific Homey devices?
2. **API reliability** - Any connection issues or timeouts?
3. **Feature requests** - What would you like to see added?
4. **Bugs & issues** - Anything that doesn’t work as expected?
5. **Documentation** - Is the setup process clear enough?

## 🔧 Setup Requirements

- Homey Pro with local API enabled
- Claude Desktop application
- Python 3.11+ with uv package manager
- Personal Access Token from my.homey.app (with all scopes!)

## 📋 Repository

The code is available on GitHub: [GitHub - maerestijnde/mcp-homey](https://github.com/maerestijnde/mcp-homey)

Full documentation, installation guide, and Windows/macOS setup instructions are included in the README.

---

<div class="post-metadata">

**Author:** ![robertklep](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/robertklep/32/160628_2.png) [@robertklep](https://community.homey.app/u/robertklep)\
**Post date:** [June 11, 2025, 9:19am UTC](https://community.homey.app/t/mcp-homey/137994/2 "2025-06-11T09:19:58Z")

</div>

I see that the [macOS/Linux shell script](https://github.com/maerestijnde/mcp-homey/blob/main/start_homey_mcp.sh) uses hardcoded paths to your home directory. You can replace `/Users/sdemaere` in the script with `$HOME` and it should work for others too.

Also, I would replace this:

```auto
export PATH="/Users/sdemaere/.local/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin"

```

With this:

```auto
export PATH="$HOME/.local/bin:$PATH"

```

---

<div class="post-metadata">

**Author:** ![Baddelomeus](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/baddelomeus/32/115133_2.png) [@Baddelomeus](https://community.homey.app/u/Baddelomeus)\
**Post date:** [June 11, 2025, 12:23pm UTC](https://community.homey.app/t/mcp-homey/137994/3 "2025-06-11T12:23:02Z")

</div>

should be fixed, thanks!

---

<div class="post-metadata">

**Author:** ![Jedrzej\_Nowak](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/jedrzej_nowak/32/121159_2.png) [@Jedrzej\_Nowak](https://community.homey.app/u/Jedrzej_Nowak)\
**Post date:** [June 24, 2025, 6:12pm UTC](https://community.homey.app/t/mcp-homey/137994/4 "2025-06-24T18:12:13Z")

</div>

With today’s announced [11.io](http://11.io) and this mcp server you can build assistant better and easier than ever 🙂

---

<div class="post-metadata">

**Author:** ![Givemelove](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/givemelove/32/85370_2.png) [@Givemelove](https://community.homey.app/u/Givemelove)\
**Post date:** [July 1, 2025, 8:56pm UTC](https://community.homey.app/t/mcp-homey/137994/5 "2025-07-01T20:56:41Z")

</div>

I just gave it a try and it works out pretty well. Tried a few basic actions for now. Everything worked like a charm.

Thank you!

---

<div class="post-metadata">

**Author:** ![chup](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/chup/32/34376_2.png) [@chup](https://community.homey.app/u/chup)\
**Post date:** [July 2, 2025, 4:10pm UTC](https://community.homey.app/t/mcp-homey/137994/6 "2025-07-02T16:10:48Z")

</div>

Really cool stuff!

The reason I started playing with this MCP is because I hoped it would solve all the issues with Google Home. We use it for voice control to operate everything in our house. I thought, if Claude interprets commands better, the path to voice control would undoubtedly be less challenging.

I’ve since discovered that Claude, with this MCP, communicates perfectly well with Homey for now, but apparently, “passive listening” and reacting to a pre-set phrase (currently “Hey Google”) doesn’t seem to be something readily available.

A tool that could communicate with the above based on voice would truly be great.

---

<div class="post-metadata">

**Author:** ![Baddelomeus](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/baddelomeus/32/115133_2.png) [@Baddelomeus](https://community.homey.app/u/Baddelomeus)\
**Post date:** [July 2, 2025, 5:30pm UTC](https://community.homey.app/t/mcp-homey/137994/7 "2025-07-02T17:30:22Z")

</div>

still looking on how to achieve this, was my main goal 😉

---

<div class="post-metadata">

**Author:** ![Lorenzo\_Rizzi](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/lorenzo_rizzi/32/125594_2.png) [@Lorenzo\_Rizzi](https://community.homey.app/u/Lorenzo_Rizzi)\
**Post date:** [July 4, 2025, 9:50am UTC](https://community.homey.app/t/mcp-homey/137994/8 "2025-07-04T09:50:35Z")

</div>

(post deleted by author)

---

<div class="post-metadata">

**Author:** ![Jedrzej\_Nowak](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/jedrzej_nowak/32/121159_2.png) [@Jedrzej\_Nowak](https://community.homey.app/u/Jedrzej_Nowak)\
**Post date:** [July 8, 2025, 5:45pm UTC](https://community.homey.app/t/mcp-homey/137994/9 "2025-07-08T17:45:37Z")

</div>

Hey,

I decided to create a separate implementation that better suits my needs.  
[https://github.com/pigmej/python-homey-mcp](https://github.com/pigmej/python-homey-mcp) python-homey itself is located here [https://github.com/pigmej/python-homey](https://github.com/pigmej/python-homey)

Why ?

1. I needed a Python client for another project anyway
2. Wanted to use more modern FastMCP and functionality there
3. Had to adjust a few things to my liking to use with other LLMs.
4. Had to add some more MCP tools and goodies.

There is more to come, for sure. I’m mainly driving the functionality based on my own needs. However, it should also work in generic cases.

I’ll likely extend it over the following days or weeks.

---

<div class="post-metadata">

**Author:** ![markusv](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/markusv/32/34227_2.png) [@markusv](https://community.homey.app/u/markusv)\
**Post date:** [July 18, 2025, 9:51am UTC](https://community.homey.app/t/mcp-homey/137994/10 "2025-07-18T09:51:43Z")

</div>

Hi, does this also mean devices like this can be used?

[](https://www.youtube.com/watch?v=th9ypRw3xBU)

---

<div class="post-metadata">

**Author:** ![Jedrzej\_Nowak](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/jedrzej_nowak/32/121159_2.png) [@Jedrzej\_Nowak](https://community.homey.app/u/Jedrzej_Nowak)\
**Post date:** [July 22, 2025, 3:49pm UTC](https://community.homey.app/t/mcp-homey/137994/11 "2025-07-22T15:49:04Z")

</div>

Yeah, I’m using it on my mobile via simple LiveKIT integration [GitHub - pigmej/homey-assistant-agent](https://github.com/pigmej/homey-assistant-agent) with [https://github.com/pigmej/homey-assistant-nextjs](https://github.com/pigmej/homey-assistant-nextjs) to “talk” to my homey.

Things like EchoEar would require some additional configuration but would work.

---

<div class="post-metadata">

**Author:** ![Xander\_Hoose](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/xander_hoose/32/131829_2.png) [@Xander\_Hoose](https://community.homey.app/u/Xander_Hoose)\
**Post date:** [July 25, 2025, 1:30pm UTC](https://community.homey.app/t/mcp-homey/137994/12 "2025-07-25T13:30:58Z")

</div>

Awesome… but is it me, or is start\_homey\_mcp.sh missing?

---

<div class="post-metadata">

**Author:** ![Jedrzej\_Nowak](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/jedrzej_nowak/32/121159_2.png) [@Jedrzej\_Nowak](https://community.homey.app/u/Jedrzej_Nowak)\
**Post date:** [July 27, 2025, 7:48pm UTC](https://community.homey.app/t/mcp-homey/137994/13 "2025-07-27T19:48:35Z")

</div>

Why would you need it?

---

<div class="post-metadata">

**Author:** ![4x4\_Pete](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/4x4_pete/32/113286_2.png) [@4x4\_Pete](https://community.homey.app/u/4x4_Pete)\
**Post date:** [August 21, 2025, 12:01am UTC](https://community.homey.app/t/mcp-homey/137994/16 "2025-08-21T00:01:33Z")

</div>

Hi.  
MCP is awesome! It will add another dimension to home automation!

Got [GitHub - maerestijnde/mcp-homey](https://github.com/maerestijnde/mcp-homey) from @Baddelomeus running with Claude AI and Google Gemini. The latter has a CLI which makes it suitable for real Homey integration (e.g. via a simple http server / interface initiating CLI runs and returning results). - For now I am interfacing with Gemini using “Desktop Device” ([Desktop Device App für Homey | Homey](https://homey.app/de-de/app/nl.jwienk.desktop-device/Desktop-Device/)).

In “mcp\_homey” there is however no zone handling / interface. I therefore tried “python-homey-mcp” ([https://github.com/pigmej/python-homey-mcp](https://github.com/pigmej/python-homey-mcp)) + “python-homey” ([https://github.com/pigmej/python-homey](https://github.com/pigmej/python-homey)) from @Jedrzej_Nowak. - Unfortunately I can´t get it running…

@Jedrzej_Nowak, it would realy be great if you could give a hint, what I might be missing

Here are the errors I get:

```auto
# Run with uvx
uvx --from . homey-mcp

```

#Error:  
Traceback (most recent call last):  
File “”, line 198, in \_run\_module\_as\_main  
File “”, line 88, in _run\_code  
File "C:\Users\ps\AppData\Local\uv\cache\archive-v0\QpnnVGrUb\_9TBPNHfXIka\Scripts\homey-mcp.exe\_main_.py", line 4, in  
from main import mcp  
File “C:\Users\ps\AppData\Local\uv\cache\archive-v0\QpnnVGrUb\_9TBPNHfXIka\Lib\site-packages\main.py”, line 10, in  
from homey\_mcp.mcp\_instance import mcp  
**ModuleNotFoundError: No module named ‘homey\_mcp’**

```auto
# STDIO transport (for MCP clients)
uvx fastmcp run main.py --transport stdio

```

#Error:  
**[08/21/25 01:44:03] ERROR Failed to run: No module named ‘homey\_mcp’**

```auto
docker run -p 4445:4445 \
  -e HOMEY_API_URL="http://YOUR_HOMEY_IP_ADDRESS" \
  -e HOMEY_API_TOKEN="YOUR_PERSONAL_ACCESS_TOKEN" \
  ghcr.io/pigmej/python-homey-mcp:latest

```

Container runs but shuts down immediately, when startet as MCP extension in/by Claude AI.

---

<div class="post-metadata">

**Author:** ![Jedrzej\_Nowak](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/jedrzej_nowak/32/121159_2.png) [@Jedrzej\_Nowak](https://community.homey.app/u/Jedrzej_Nowak)\
**Post date:** [August 21, 2025, 7:05am UTC](https://community.homey.app/t/mcp-homey/137994/17 "2025-08-21T07:05:56Z")

</div>

Hey, seems that I forgot to add deps correctly when using docker.

I’ll fix it tomorrow. Or you need to install the dep by hand from: [GitHub - pigmej/python-homey: A modern, async Python client library for the Homey v3 Local API.](https://github.com/pigmej/python-homey)

---

<div class="post-metadata">

**Author:** ![4x4\_Pete](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/4x4_pete/32/113286_2.png) [@4x4\_Pete](https://community.homey.app/u/4x4_Pete)\
**Post date:** [August 21, 2025, 8:19am UTC](https://community.homey.app/t/mcp-homey/137994/18 "2025-08-21T08:19:32Z")

</div>

Hi @Jedrzej_Nowak  
thank you for your quick response! Great!

How can I fix the error when running python-homey-mcp with “uvx fastmcp run main.py --transport stdio”? - I guess there is also some dependecy issue.

---

<div class="post-metadata">

**Author:** ![Jedrzej\_Nowak](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/jedrzej_nowak/32/121159_2.png) [@Jedrzej\_Nowak](https://community.homey.app/u/Jedrzej_Nowak)\
**Post date:** [August 21, 2025, 8:39am UTC](https://community.homey.app/t/mcp-homey/137994/19 "2025-08-21T08:39:38Z")

</div>

Im without Access to the pc till tomorrow. I need to check uvx path as I actually never ran it like that.

I’ll fix it early TMRW I think.

Nevertheless it will work when you clone the repo and do uv sync and then normal uv run …

I Need to check uvx way basically…

---

<div class="post-metadata">

**Author:** ![Jedrzej\_Nowak](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/jedrzej_nowak/32/121159_2.png) [@Jedrzej\_Nowak](https://community.homey.app/u/Jedrzej_Nowak)\
**Post date:** [August 22, 2025, 2:46pm UTC](https://community.homey.app/t/mcp-homey/137994/20 "2025-08-22T14:46:45Z")

</div>

Hey, check now it should work. Sorry for not checking the UVX path deeply enough.

I’m mainly using it in my dev environment or Docker, which works for me without an issue.

---

<div class="post-metadata">

**Author:** ![4x4\_Pete](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/4x4_pete/32/113286_2.png) [@4x4\_Pete](https://community.homey.app/u/4x4_Pete)\
**Post date:** [August 26, 2025, 8:40am UTC](https://community.homey.app/t/mcp-homey/137994/21 "2025-08-26T08:40:00Z")

</div>

Thank you @Jedrzej_Nowak!  
I will be travelling the next weeks so it will unfortunately take some time until I can test.

---

<div class="post-metadata">

**Author:** ![Stefan\_1](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/stefan_1/32/128096_2.png) [@Stefan\_1](https://community.homey.app/u/Stefan_1)\
**Post date:** [September 12, 2025, 1:24pm UTC](https://community.homey.app/t/mcp-homey/137994/22 "2025-09-12T13:24:36Z")

</div>

This is so great to have a MCP, **Thanks** ❤❤ Has anybody tried to connect to N8N?

[Next page](https://community.homey.app/t/mcp-homey/137994.md?page=2)
