three.ws Home MCP Server
by nirholasio.github.nirholas/home-mcpv0.1.0
Read and safely act on a real Home Assistant house: rooms, live state, scenes, gated actions.
context tax
queued
security
queued
cold start
queued
freshness
Active2d ago
Install three.ws Home MCP server
Install in Claude Code
claude mcp add home -e HOME_ASSISTANT_URL='<home-assistant-url>' -e HOME_ASSISTANT_TOKEN='<home-assistant-token>' -- npx -y @three-ws/home-mcpInstall in Cursor
{
"mcpServers": {
"home": {
"command": "npx",
"args": [
"-y",
"@three-ws/home-mcp"
],
"env": {
"HOME_ASSISTANT_URL": "<home-assistant-url>",
"HOME_ASSISTANT_TOKEN": "<home-assistant-token>"
}
}
}
}Add to ~/.cursor/mcp.json (global) or .cursor/mcp.json (project).
Install in Claude Desktop
{
"mcpServers": {
"home": {
"command": "npx",
"args": [
"-y",
"@three-ws/home-mcp"
],
"env": {
"HOME_ASSISTANT_URL": "<home-assistant-url>",
"HOME_ASSISTANT_TOKEN": "<home-assistant-token>"
}
}
}
}Settings → Developer → Edit Config (claude_desktop_config.json), then restart.
Install in VS Code
{
"servers": {
"home": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@three-ws/home-mcp"
],
"env": {
"HOME_ASSISTANT_URL": "<home-assistant-url>",
"HOME_ASSISTANT_TOKEN": "<home-assistant-token>"
}
}
}
}Add to .vscode/mcp.json in your workspace.
Install in Windsurf
{
"mcpServers": {
"home": {
"command": "npx",
"args": [
"-y",
"@three-ws/home-mcp"
],
"env": {
"HOME_ASSISTANT_URL": "<home-assistant-url>",
"HOME_ASSISTANT_TOKEN": "<home-assistant-token>"
}
}
}
}Add to ~/.codeium/windsurf/mcp_config.json.
Configuration
| Variable | Required | Secret | Description |
|---|---|---|---|
| HOME_ASSISTANT_URL | yes | — | Base URL of the Home Assistant instance, e.g. https://abc123.ui.nabu.casa. It has to be a URL this process can actually reach: a server outside the house cannot route to 192.168.x.x, so a LAN-only home needs Home Assistant Cloud or the household's own reverse proxy. |
| HOME_ASSISTANT_TOKEN | yes | yes | A Home Assistant long-lived access token (Home Assistant, your profile, Security, Long-lived access tokens, Create token). It carries the full rights of the account that minted it, so mint it from an account with only the access this agent should have. |
| HOME_ALLOWED_ENTITIES | — | — | Comma-separated entity ids the person running this server has pre-approved for guarded actions, e.g. lock.office_door. This is the ONLY way an action that opens the house runs over stdio, and it is deliberately a human, out-of-band decision: no tool can add to it. Per entity, never per domain. Leave unset to refuse every such action. |
Freshness
Active — last maintenance signal 2d ago. The newest of the signals below sets the band.
Last commit (default branch)
2026-10-08 · 2d ago · GitHub
Latest release
2026-09-30 · 10d ago · GitHub · v1.5.2
Package published
no data · npm/PyPI
Registry entry updated
2026-09-30 · 10d ago · official registry · v0.1.0
FAQ
›How do I install the three.ws Home MCP server in Claude Code?
Run: claude mcp add home -e HOME_ASSISTANT_URL='<home-assistant-url>' -e HOME_ASSISTANT_TOKEN='<home-assistant-token>' -- npx -y @three-ws/home-mcp. For Cursor, VS Code, Claude Desktop and Windsurf, use the install tabs above.
›Does three.ws Home require an API key?
Yes. It expects HOME_ASSISTANT_URL, HOME_ASSISTANT_TOKEN, of which 1 is a secret.
›Can I use three.ws Home as a remote (hosted) MCP server?
No hosted endpoint is published; it runs locally over stdio.
›Is three.ws Home in the official MCP registry?
Yes, as io.github.nirholas/home-mcp.
Alternatives to three.ws Home
Other iot & home automation MCP servers.