Token导航 LogoToken导航

MCP Server · AI代理

WeMo MCP Server

通过自然语言控制WeMo智能家居设备的AI助手服务,支持设备发现、状态查询和远程控制。

stdio官方级别未说明来源级核验工具 9
智能家居设备管理PythonClaude物联网Claude DesktopCursorWindsurfClineVS Code

快速开始

作者 / 组织
apiarya
提供方
apiarya
运行时
Python

工具数量

9

来源目录标注

资源数量

0

来源目录标注

提示词数量

0

来源目录标注

GitHub Star

0

仓库热度

收录来源

2 个

MCP World

选型结论

WeMo MCP Server 属于AI代理类 MCP Server,公开资料标注 9 个工具,通过stdio 本地进程接入,适配 Claude Desktop、Claude、Cursor,有可以直接复制的安装命令;接入前先确认权限范围。

分类

AI代理

传输方式

stdio

认证方式

无需认证

部署方式

仅本地运行

安装与配置

安装命令

uvx --version

客户端配置示例

{
  "mcpServers": {
    "wemo-mcp-server": {
      "command": "uvx",
      "args": [
        "--version"
      ]
    }
  }
}

按公开安装命令拼出来的示例,字段名和参数以仓库 README 为准;带 YOUR_API_KEY 这类占位符的位置记得换成自己的值。

上手步骤

  1. 1

    准备运行环境

    stdio 服务在本地起进程,需要先装好 Python,再按安装命令拉取依赖。

  2. 2

    安装服务

    复制下面的安装命令执行;命令里带占位符的位置换成自己的密钥或路径。

  3. 3

    写入客户端配置

    在客户端的 MCP 配置里填启动命令和参数,保存后完全退出客户端再打开,让新配置生效。

  4. 4

    验证是否可用

    连接成功后客户端会列出 9 个工具,随便调一个只读工具确认能返回结果。

接入前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

详细介绍

WeMo MCP服务器

使用自然语言通过AI助手控制WeMo智能家居设备。

mcp-name: io.github.apiarya/wemo

目录

- 扫描网络 - 列表_设备 - get_device_status - 控制装置 - 重命名_设备 - get_homekit_code - get_ache_info - clear_cache - getconfig配置

- 资源 - 提示 - 精英

- 本地控制信号流

概述

通过模型上下文协议将WeMo智能家居设备与AI助手无缝集成。建立在 皮韦莫,该服务器通过智能多阶段发现实现了对WeMo设备的自然语言控制。

示例用法

*通过自然语言的人工智能助手控制WeMo设备——只需用简单的英语提问!*

*“晚安”——一个命令关闭房子里的所有设备*

主要特点

  • 🔍 智能发现 -具有100%可靠性的多相扫描(UPnP/SSDP+网络端口)
  • ⚡ 快速扫描 -具有60个并发工作者的并行探测器(全子网约23-30s)
  • 🎛️ 完全控制 -所有设备类型的开/关/切换/亮度控制
  • ✏️ 设备管理 -重命名设备并提取HomeKit设置代码
  • 📊 实时状态 -查询设备状态和亮度
  • 💾 智能缓存 -具有1小时TTL的持久设备缓存在重启后仍然有效
  • 🔧 可配置的 -所有设置的YAML配置文件+环境变量
  • 🔄 自动重试 -网络错误的指数回退自动重试
  • 🛡️ 错误处理 -带有可操作建议的详细错误消息
  • 🔌 通用 -适用于任何MCP客户端(Claude、VS Code、Cursor等)
  • 📡 MCP资源 -通过实时设备状态 devices:// 和 device://{id} URI
  • 💬 MCP提示 -内置引导提示:发现、状态报告、场景控制、故障排除
  • 🗣️ MCP精英 -子网或设备名称不明确时的交互式澄清

______________________________________________________________________

先决条件

所有配置都使用 uvx (从 uv Python包管理器)来运行服务器。安装 紫外线 第一:

# macOS/Linux
curl -LsSf https://astral.sh/uv/install.sh | sh

# macOS with Homebrew
brew install uv

# Windows
powershell -c "irm https://astral.sh/uv/install.ps1 | iex"

安装后,重新启动终端并验证:

uvx --version

快速开始

在几秒钟内开始使用Claude Code CLI:

claude mcp add wemo -- uvx wemo-mcp-server

______________________________________________________________________

连接

一键安装

单击您的客户端立即安装:

客户端安装
克劳德桌面版
Claude 代码命令行界面运行: claude mcp add wemo -- uvx wemo-mcp-server
VS Code
光标
克莱恩手动配置 (VS代码扩展)
帆板运动手动配置
泽德手动配置
继续手动配置 (VS代码扩展)

手动配置

克劳德桌面版

编辑 ~/Library/Application Support/Claude/claude_desktop_config.json:

{
  "mcpServers": {
    "wemo": {
      "command": "uvx",
      "args": ["wemo-mcp-server"],
      "env": {
        "WEMO_MCP_DEFAULT_SUBNET": "192.168.1.0/24"
      }
    }
  }
}

保存后重新启动Claude Desktop。

VS Code

编辑 ~/.vscode/mcp.json:

{
  "servers": {
    "wemo": {
      "type": "stdio",
      "command": "uvx",
      "args": ["wemo-mcp-server"],
      "env": {
        "WEMO_MCP_DEFAULT_SUBNET": "192.168.1.0/24"
      }
    }
  }
}

保存后重新加载VS代码。

光标

编辑 ~/.cursor/mcp.json:

{
  "servers": {
    "wemo": {
      "type": "stdio",
      "command": "uvx",
      "args": ["wemo-mcp-server"]
    }
  }
}

保存后重新启动Cursor。

克莱恩

Cline是一个VS Code扩展。添加到VS代码 settings.json:

{
  "mcp.servers": {
    "wemo": {
      "command": "uvx",
      "args": ["wemo-mcp-server"]
    }
  }
}

保存后重新加载VS代码。

帆板运动

编辑 ~/.windsurf/mcp.json:

{
  "mcpServers": {
    "wemo": {
      "command": "uvx",
      "args": ["wemo-mcp-server"]
    }
  }
}

保存后重新启动Windsurf。

泽德

编辑 ~/.config/zed/settings.json:

{
  "context_servers": {
    "wemo": {
      "command": "uvx",
      "args": ["wemo-mcp-server"]
    }
  }
}

保存后重新启动Zed。

继续

Continue是一个VS代码扩展名。编辑 ~/.continue/config.json:

{
  "mcpServers": [
    {
      "name": "wemo",
      "command": "uvx",
      "args": ["wemo-mcp-server"]
    }
  ]
}

保存后重新加载VS代码。

______________________________________________________________________

配置

WeMo MCP服务器支持通过YAML文件和环境变量进行灵活配置。

快速配置

最重要的设置是你的 网络子网 --服务器默认为 192.168.1.0/24 但您的设备可能位于不同的子网上(例如。 192.168.86.0/24).

使用以下命令直接在MCP客户端配置中设置它 env:

"env": {
  "WEMO_MCP_DEFAULT_SUBNET": "192.168.86.0/24"
}

或者在启动服务器之前导出它:

使用环境变量 (最简单):

export WEMO_MCP_DEFAULT_SUBNET="192.168.1.0/24"
export WEMO_MCP_CACHE_TTL=7200
export WEMO_MCP_LOG_LEVEL=DEBUG

使用YAML配置文件:

# Copy example config and customize
cp config.example.yaml config.yaml
# Edit config.yaml with your settings

配置选项

设置环境变量默认值说明
网络
默认子网WEMO_MCP_DEFAULT_SUBNET192.168.1.0/24用于扫描设备的网络
扫描超时WEMO_MCP_SCAN_TIMEOUT0.6端口探测超时(秒)
最大工人数WEMO_MCP_MAX_WORKERS60并发扫描线程
缓存
启用缓存WEMO_MCP_CACHE_ENABLEDtrue持久设备缓存
缓存文件WEMO_MCP_CACHE_FILE~/.wemo_mcp_cache.json缓存文件位置
缓存TTLWEMO_MCP_CACHE_TTL3600缓存寿命(秒)
日志记录
日志级别WEMO_MCP_LOG_LEVELINFO调试、信息、警告、错误

示例配置

大型网络 (多个子网):

export WEMO_MCP_DEFAULT_SUBNET="10.0.0.0/16"
export WEMO_MCP_SCAN_TIMEOUT=1.0
export WEMO_MCP_MAX_WORKERS=100

调试模式:

export WEMO_MCP_LOG_LEVEL=DEBUG
export WEMO_MCP_CACHE_TTL=300  # 5 minutes

禁用缓存:

export WEMO_MCP_CACHE_ENABLED=false

看 config.example.yaml 和 .env.示例 获取完整的配置模板。

有关详细的配置指南,请参阅 配置.md.

______________________________________________________________________

MCP工具

1.扫描网络

使用智能多相位扫描在您的网络上发现WeMo设备。

示例提示:

  • “在我的网络上扫描WeMo设备”
  • “查找所有WeMo设备”
  • “发现192.168.1.0/24上的设备”

示例响应:

Found 12 WeMo devices in 23.5 seconds:

1. Office Light (Dimmer) - 192.168.1.100 - OFF
2. Living Room (Switch) - 192.168.1.101 - ON
3. Bedroom Lamp (Dimmer) - 192.168.1.102 - OFF
...

2.设备列表

列出以前扫描中缓存的所有设备。

示例提示:

  • “列出我的所有WeMo设备”
  • “显示所有设备”
  • “你知道什么设备?”

示例响应:

12 devices in cache:

- Office Light (Dimmer) at 192.168.1.100
- Living Room (Switch) at 192.168.1.101
- Bedroom Lamp (Dimmer) at 192.168.1.102
...

3.设备状态

获取特定设备的当前状态和信息。

示例提示:

  • “办公室的灯亮着吗?”
  • “卧室灯的状况如何?”
  • “检查客厅开关”
  • “办公室的灯有多亮?”

示例响应:

Office Light (Dimmer):
- State: OFF
- Brightness: 75%
- IP: 192.168.1.100
- Model: DimmerLongPress

4.控制装置

控制WeMo设备(开/关/切换/亮度)。

示例提示:

  • “打开办公室灯”
  • “关掉客厅”
  • “打开卧室灯”
  • “将办公室照明设置为75%”
  • “将卧室灯调暗至50%”

示例响应:

✓ Office Light turned ON
  Brightness set to 75%
  Current state: ON

5.重命名_设备

重命名WeMo设备(更改其友好名称)。

示例提示:

  • “将Office调光器重命名为Office Light”
  • “将卧室设备的名称更改为卧室灯”
  • “呼叫客厅开关‘主灯’”

示例响应:

✓ Device renamed successfully
  'Office Dimmer' → 'Office Light'
  IP: 192.168.1.100

The new name will appear in the WeMo app and all control interfaces.

6.获取homekit_code

获取WeMo设备的HomeKit设置代码。

示例提示:

  • “获取Office Light的HomeKit代码”
  • “卧室灯的HomeKit设置代码是什么?”
  • “显示所有设备的HomeKit代码”

示例响应:

HomeKit Setup Code for 'Office Light':
  123-45-678

Use this code to add the device to Apple Home.

注: 并非所有WeMo设备都支持HomeKit。如果设备不支持HomeKit,您将收到一条错误消息。

7.获取缓存信息

获取有关持久设备缓存的信息。

示例提示:

  • “显示缓存信息”
  • “设备缓存是否已过期?”
  • “缓存了多少台设备?”

示例响应:

Device Cache Status:
  ✅ Cache exists
  📁 Location: ~/.wemo_mcp_cache.json
  📊 Devices: 12
  ⏰ Age: 1,234 seconds (20.6 minutes)
  💾 TTL: 3,600 seconds (1 hour)
  ✅ Status: Valid (not expired)

8.clear_cache

清除持久设备缓存以强制进行新的扫描。

示例提示:

  • “清除设备缓存”
  • “重置缓存并重新扫描”
  • “删除缓存的设备”

示例响应:

✅ Cache cleared successfully
Next scan will discover devices fresh.
Run scan_network to rebuild the cache.

注: 这将清除持久缓存文件和内存缓存。清除后,运行 scan_network 重新发现设备。

9.获取配置

查看当前服务器配置设置。

示例提示:

  • “显示服务器配置”
  • “当前设置是什么?”
  • “显示配置”

示例响应:

Current Configuration:
  Network:
    • Default subnet: 192.168.1.0/24
    • Scan timeout: 0.6 seconds
    • Max workers: 60
  Cache:
    • Enabled: true
    • File: ~/.wemo_mcp_cache.json
    • TTL: 3600 seconds (1 hour)
  Logging:
    • Level: INFO

注: 显示所有配置,包括默认值和环境变量覆盖。使用环境变量 WEMO_MCP_ 要自定义的前缀。

______________________________________________________________________

MCP能力

除了工具,此服务器还公开了全套MCP原语。

资源

无需调用工具即可订阅实时设备数据:

URI描述
devices://所有缓存设备的JSON索引
device://{name-or-ip}特定设备的实时状态(支持URL编码名称)

支持MCP资源(VS代码、MCP检查器)的客户端可以直接读取这些资源。

提示

通过以下方式提供四个内置引导提示 / 支持客户端的斜线命令:

提示描述
discover-devices带子网选择的引导式网络扫描
device-status-report所有设备状态的总结报告
activate-scene将多个设备作为一个场景进行控制
troubleshoot-device逐步排除设备故障

*所有四个提示都显示为 /mcp.wemo.* VS代码中的斜线命令*

精英

服务器主动请求缺少的信息,而不是默默地失败:

  • scan_network --如果未配置自定义子网(默认 192.168.1.0/24),询问在继续之前要扫描哪个子网
  • control_device --如果在缓存中找不到设备名称,则显示最接近的匹配项并询问预期的设备

*激发作用——服务器请求子网,而不是默默地扫描错误的网络*

客户支持矩阵

功能克劳德桌面VS代码光标MCP检查器
工具✅✅✅✅
资源⚠️ 仅协议✅✅✅
提示⚠️ 无斜线UI✅ / 命令✅✅
精英✅ v1.1+❌❌✅ v0.20+

______________________________________________________________________

运作原理

多阶段发现

服务器使用针对可靠性优化的三阶段发现过程:

  1. 阶段1-UPnP/SSDP发现(主要)

- 多播发现找到所有响应设备(~12秒) - 最可靠的方法,发现对端口探测没有响应的设备 - 使用pywemo的内置发现机制

  1. 第2阶段-网络端口扫描(备份)

- 跨子网并行探测WeMo端口(49152-49155) - 60个并发工作者用于快速扫描(254个IP约10秒) - 捕获UPnP错过的设备

  1. 第3阶段-设备验证(备份)

- 通过/setup.xml对活动IP进行HTTP验证 - 与60名工人进行平行验证 - 验证并提取设备信息

这种方法实现了 100%设备发现可靠性 同时保持快速扫描时间(完整网络为23-30秒)。

本地控制信号流

所有设备命令仅在您的 本地网络 --在任何阶段都不需要云跳跃。

语音路径(谷歌主页+WeMo):

sequenceDiagram
    participant U as User
    participant GH as Google Home Hub
    participant GC as Google Cloud (ASR only)
    participant WD as WeMo Device

    U->>GH: "Hey Google, turn on chandelier"
    GH->>GC: Audio stream for speech-to-text
    GC-->>GH: Intent: {action: ON, device: chandelier}
    GH->>WD: Matter OnOff.On (UDP 5540, LAN)
    WD-->>GH: ACK
    GH-->>U: "OK, turning on chandelier"

MCP路径(AI助手+此服务器):

sequenceDiagram
    participant U as User
    participant AI as AI Assistant
    participant MS as MCP Server
    participant WD as WeMo Device

    U->>AI: "Turn on the desk light"
    AI->>MS: tools/call control_device("desk light", "on")
    MS->>WD: UPnP/SOAP BinaryState=1 (TCP 49153, LAN)
    WD-->>MS: HTTP 200 OK
    MS-->>AI: {success: true, state: "on"}
    AI-->>U: "Desk light is now on!"

两条路径都使用 仅限本地协议 在最初的语音识别之后(谷歌云处理语音转文本;贝尔金的云从未参与其中)。

功能对比

MCP服务器与wemo运营中心

此MCP服务器与主MCP服务器的功能比较 韦莫行动中心 项目:

功能wemo运营中心MCP服务器备注
设备发现✅ UPnP+端口扫描✅ 已实施具有100%可靠性的多阶段发现
设备控制✅ 开/关/切换✅ 已实现包括调光器的亮度控制
设备状态✅ 实时✅ 已实现按名称或IP地址查询
设备重命名✅ 友好名称✅ 已实现自动更新设备缓存
HomeKit代码✅ 提取代码✅ 已实施适用于HomeKit兼容设备
多网段传输✅ VLAN支持❌ 计划目前每次扫描只有一个子网
WiFi配置✅ 智能设置❌ 未计划需要更改PC WiFi连接
调度✅ 时间+太阳能❌ 未计划需要持久守护进程(与MCP模型不兼容)
维护工具✅ 重置❌ 未计划恢复出厂设置,清除WiFi,清除数据
配置文件管理✅ 保存/加载❌ 未计划用于批量设置的WiFi凭据配置文件
用户界面✅ GUI+Web❌ N/AMCP使用AI助手界面

传说:

  • ✅ 实现 -功能可用
  • ❌ 未计划的 -功能与MCP架构或用例冲突
  • ❌ 计划的 -将来可能会添加功能

为什么MCP没有计划一些功能:

  • 调度:需要24/7后台守护进程轮询。MCP服务器通常由AI助手按需调用,而不是作为持久服务运行。
  • WiFi配置:需要将主机PC的WiFi连接更改为设备设置网络,这会造成中断,并且特定于平台。
  • 维护工具:破坏性操作(出厂重置等)更适合带有确认对话框的专用GUI。

当前MCP覆盖范围: 11个核心功能中有5个(45%)侧重于符合MCP模型的设备发现、监控和控制用例。

发展

设置

git clone https://github.com/apiarya/wemo-mcp-server.git
cd wemo-mcp-server
uv venv
source .venv/bin/activate  # On Windows: .venv\Scripts\activate
uv sync --dev

运行测试

# Unit tests (CI-compatible, ~4 seconds, 128 tests)
.venv/bin/python -m pytest tests/test_server.py tests/test_phase2.py tests/test_models.py -v

# With coverage report
pytest tests/test_server.py tests/test_phase2.py tests/test_models.py --cov=wemo_mcp_server --cov-report=html

# E2E tests (requires WeMo devices on network)
python tests/test_e2e.py

使用开发版本

在MCP客户端配置中,使用:

{
  "command": "python",
  "args": ["-m", "wemo_mcp_server"],
  "env": {
    "PYTHONPATH": "/path/to/mcp/src"
  }
}

贡献

欢迎投稿!拜托:

  1. 分叉存储库
  2. 创建要素分支(git checkout -b feature/amazing-feature)
  3. 通过测试进行更改
  4. 运行测试套件(python tests/test_e2e.py)
  5. 提交您的更改(git commit -m 'Add amazing feature')
  6. 推到分支(git push origin feature/amazing-feature)
  7. 打开拉取请求

许可证

MIT许可证-请参阅 许可证 文件以获取详细信息。

致谢

工具与能力

工具数量

9

资源数量

0

提示词数量

0

能力标签

智能家居Python本地部署自然语言控制设备管理物联网AI助手

支持客户端

Claude DesktopClaudeCursorWindsurfClineVS Code

数量来自来源目录的标注,具体工具清单以官方文档为准。

典型使用场景

多步任务编排

把拆解、检索、执行串成一条链,模型按步骤调用工具。

长期上下文

把会话、笔记和知识放到外部存储,换个会话还能接着做。

接自有流程

把内部系统和模型连起来,让助手调用已有的工作流。

选择建议

值得选的地方

  • 只提供 9 个工具,职责集中,接入后不容易误操作。
  • 有现成的安装命令,不用自己找入口,照着跑就能起服务。
  • 已经适配 Claude Desktop、Claude、Cursor,换客户端不用重新研究配置。

先想清楚的地方

  • stdio 方式要求本地装好 Python,换机器要重新装一遍。
  • 公开摘要偏短,具体能力和限制要回到仓库确认。
  • 第三方目录整理,版本更新和行为细节以官方仓库为准。

更适合

  • 需要在AI代理场景里让模型直接调用外部能力的人。
  • 已经在用 Claude Desktop 的用户,接入路径最短。
  • 想先快速试一下、能接受在本地跑服务的人。

不太适合

  • 完全不想在本地装环境的人。
  • 需要厂商级 SLA 和技术支持的生产环境。

同类对比

5 个同类
MCP Server工具数传输方式安装命令收录来源最后核验
WeMo MCP Server

MCP World · 本页

9stdio有2 个2026-05-17
Everything Claude Code

MCP World

0stdio有1 个2026-05-17
Filesystem 560c4363

MCP World

13未说明未标注2 个2026-05-17
Time 7365cb6d

MCP.so

2SSE有2 个2026-05-17
Server Everything (everything)

MCP World

11stdio有1 个2026-05-17

按同分类和工具数量挑出最接近的几条,字段以各自详情页为准。

常见问题

5 条

WeMo MCP Server 怎么安装?

公开资料给出的安装命令是 uvx --version,运行环境为 Python。装完后按客户端要求写进 MCP 配置,重启客户端生效。

WeMo MCP Server 怎么在 Claude Desktop、Cursor 里配置?

它是stdio 本地进程,客户端配置里要写启动命令和参数,运行环境是 Python;保存后完全退出客户端再打开,配置才会生效。

WeMo MCP Server 收费吗?

本站只整理公开资料,不代收费用,也没有标注具体价格。是否收费取决于服务本身和背后的接口额度,正式使用前按官方说明确认。

WeMo MCP Server 需要 API Key 吗?

公开资料标注为无需认证,装好就能连;如果实际调用时报鉴权错误,按官方文档补上凭据。

WeMo MCP Server 支持哪些客户端?

公开资料标注支持 Claude Desktop、Claude、Cursor、Windsurf、Cline、VS Code;其他客户端只要能配置 MCP Server,也能用同样的命令或地址接入。

来源信息

继续浏览同类 MCP