Back to MCP Servers

Server Home Assistant

Expose all Home Assistant voice intents through a Model Context Protocol Server allowing home control.

other-tools-and-integrations
By allenporter
6811Updated 1 year agoPythonApache-2.0

Installation

npx -y mcp-server-home-assistant

Configuration

{
  "mcpServers": {
    "mcp-server-home-assistant": {
      "command": "npx",
      "args": ["-y", "mcp-server-home-assistant"]
    }
  }
}

How to use

  1. Run the installation command above (if needed)
  2. Open your Claude Code settings file (~/.claude/settings.json)
  3. Add the configuration to the mcpServers section
  4. Restart Claude Code to apply changes

mcp-server-home-assistant

A Model Context Protocol Server for Home Assistant. See Model Context Protocol for context.

The custom component required by this integration is moving to Home Assistant Core in https://github.com/home-assistant/core/pull/134122

Usage in Claude Desktop

  1. Install the home-assistant-model-context-protocol custom component in your Home Assistant instance

  2. Create a Long Lived Access Token

  3. Clone this git repo to a path like /Users/allen/Development/mcp-server-home-assistant

  4. Edit your claude_desktop_config.json with something like this and include your home assistant url and api token:

    {
        "mcpServers": {
            "Home-assistant": {
                "command": "uv",
                "args": [
                    "--directory",
                    "/Users/allen/Development/mcp-server-home-assistant",
                    "run",
                    "mcp-server-home-assistant",
                    "-v",
                    "-v"
                ],
                "env": {
                    "HOME_ASSISTANT_WEB_SOCKET_URL": "http://localhost:8123/api/websocket",
                    "HOME_ASSISTANT_API_TOKEN": "byJhbVci0iJIUzI1ii1sInR5cCI6IkpXVCJ9.....
                }
            }
        }
    }
  5. You can view the logs e.g. ~Library/Logs/Claude/mcp-server-Home-assistant.log to understand what is happening

View source on GitHub