Control WeMo smart home devices - discover, toggle, adjust brightness, and manage HomeKit codes
Control WeMo smart home devices - discover, toggle, adjust brightness, and manage HomeKit codes. That is what the wemo mcp server brings to an AI assistant: the same capability, reachable through the Model Context Protocol rather than a separate app or dashboard.
Control WeMo smart home devices through AI assistants using natural language.
Seamlessly integrate WeMo smart home devices with AI assistants through the Model Context Protocol. Built on pywemo, this server enables natural language control of your WeMo devices with intelligent multi-phase discovery.
Installation goes through your MCP client rather than a global install: point it at wemo-mcp-server on PyPI and it is fetched when the client starts. The copy-paste blocks for Claude Desktop, Claude Code and Cursor are further down this page.
The server publishes 8 tools. What each one is for:
Cursor — The Cursor tool exposed by this serverCline — Cline is a VS Code extension. Add to VS Code's settings.json:Windsurf — The Windsurf tool exposed by this serverContinue — Continue is a VS Code extension. Edit ~/.continue/config.json:Resources — Clients that support MCP Resources (VS Code, MCP Inspector) can read these directlyPrompts — Four built-in guided prompts available via / slash commands in supporting clients:Elicitations — The server proactively asks for missing information rather than failing silently:Setup — The Setup tool exposed by this serverConfiguration is passed through the environment: WEMO_MCP_DEFAULT_SUBNET, PYTHONPATH, WEMO_MCP_CACHE_TTL, WEMO_MCP_LOG_LEVEL, WEMO_MCP_SCAN_TIMEOUT, WEMO_MCP_MAX_WORKERS, WEMO_MCP_CACHE_ENABLED. Treat anything key-shaped as a real credential — scope it to the minimum the server needs, and rotate it if it ever lands in a shared config.
All configurations use uvx (from the uv Python package manager) to run the server. Install uv first: ```bash
Plenty of developer tooling servers cover similar ground. The differences that matter in practice are scope of access and how much setup stands between you and a working tool call. Wemo's toolset — Cursor, Cline, Windsurf and 5 more — is a fair guide to whether it matches your workflow. It is maintained by apiarya; worth a glance at recent repository activity before you build anything load-bearing on it.
SyncDev reviews every entry in this directory against the project's own documentation before publishing, and revisits them as servers change.
| Tool | What it does |
|---|---|
| Cursor | The Cursor tool exposed by this server. |
| Cline | Cline is a VS Code extension. Add to VS Code's settings.json: |
| Windsurf | The Windsurf tool exposed by this server. |
| Continue | Continue is a VS Code extension. Edit ~/.continue/config.json: |
| Resources | Clients that support MCP Resources (VS Code, MCP Inspector) can read these directly. |
| Prompts | Four built-in guided prompts available via / slash commands in supporting clients: |
| Elicitations | The server proactively asks for missing information rather than failing silently: |
| Setup | The Setup tool exposed by this server. |
{
"mcpServers": {
"wemo": {
"command": "uvx",
"args": ["wemo-mcp-server"],
"env": {
"WEMO_MCP_DEFAULT_SUBNET": "your-value",
"PYTHONPATH": "your-value",
"WEMO_MCP_CACHE_TTL": "your-value",
"WEMO_MCP_LOG_LEVEL": "your-value",
"WEMO_MCP_SCAN_TIMEOUT": "your-value",
"WEMO_MCP_MAX_WORKERS": "your-value",
"WEMO_MCP_CACHE_ENABLED": "your-value"
}
}
}
}Add to claude_desktop_config.json, then restart Claude Desktop.
All configurations use uvx (from the uv Python package manager) to run the server. Install uv first: ```bash
| Variable | Description | Required |
|---|---|---|
| WEMO_MCP_DEFAULT_SUBNET | Configuration value read at startup. | Optional |
| PYTHONPATH | Filesystem location the server is allowed to use. | Optional |
| WEMO_MCP_CACHE_TTL | Configuration value read at startup. | Optional |
| WEMO_MCP_LOG_LEVEL | Configuration value read at startup. | Optional |
| WEMO_MCP_SCAN_TIMEOUT | Configuration value read at startup. | Optional |
| WEMO_MCP_MAX_WORKERS | Configuration value read at startup. | Optional |
| WEMO_MCP_CACHE_ENABLED | Configuration value read at startup. | Optional |
Kill hallucinated APIs — version-accurate, up-to-date library documentation injected straight into context.
Microsoft's official browser automation server — drive a real browser through the accessibility tree, no screenshots needed.
GitHub's official server — repos, issues, pull requests, Actions and code security, straight from your assistant.
Issue tracking at the speed of conversation — Linear's official hosted server with OAuth and zero install.
Local repository surgery — status, diffs, commits, branches and history for any repo on disk.
Timezone sanity for AI — current time anywhere and correct conversions, without the model doing date math.