Config is the same across clients — only the file and path differ.
{
"mcpServers": {
"mcp-homeassistant-server-for-n8n-in-golang": {
"command": "<see-readme>",
"args": []
}
}
}Are you the author?
Add this badge to your README to show your security score and help users find safe servers.
MCP (Model Context Protocol) server for Home Assistant integration. Allows AI assistants like Claude to control lights and switches in your Home Assistant installation.
No automated test available for this server. Check the GitHub README for setup instructions.
Five weighted categories — click any category to see the underlying evidence.
No known CVEs.
No package registry to scan.
Be the first to review
Have you used this server?
Share your experience — it helps other developers decide.
Sign in to write a review.
Others in other
Pi Coding Agent extension (CLI-first) — routes bash/read/grep/find/ls through lean-ctx CLI for strong token savings. Optional MCP bridge can register advanced tools.
Apify MCP Server
97% token reduction for AI coding sessions — zero deps, 21 languages, MCP server
MCP proxy that compresses prose fields (tool descriptions, etc.) using caveman rules. Same accuracy, fewer context tokens.
MCP Security Weekly
Get CVE alerts and security updates for MCP HomeAssistant Server For N8N In Golang and similar servers.
Start a conversation
Ask a question, share a tip, or report an issue.
Sign in to join the discussion.
MCP (Model Context Protocol) server for Home Assistant integration. Allows AI assistants like Claude to control lights and switches in your Home Assistant installation.
git clone <repository-url>
cd MCPServerHAS-SDK
# Simple build for current platform
go build -o ha-mcp-server main.go
# Or use the build script for multiple platforms
bash ./build.sh all
export HA_TOKEN="your_home_assistant_long_lived_access_token"
export HA_URL="http://192.168.1.100:8123"
# Optional: Entity filtering
export HA_ENTITY_FILTER="light\\.*,switch\\.kitchen.*"
export HA_ENTITY_BLACKLIST="switch\\.dangerous.*"
cp config.json.example config.json
# Edit config.json with your credentials
Example config.json:
{
"ha_token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",
"ha_url": "http://192.168.1.100:8123",
"entity_filter": ["light\\..*", "switch\\.kitchen.*"],
"entity_blacklist": ["switch\\.dangerous.*"]
}
# With environment variables
./ha-mcp-server
# With config file
CONFIG_FILE=config.json ./ha-mcp-server
# Monitor logs
tail -f ha-mcp.log
Get current states of all lights and switches.
Control individual entities:
entity_id: Entity ID (e.g., "light.living_room")state: "on" or "off"Control multiple entities at once. Supports two modes:
Area-based control:
{
"area": "living room",
"action": "on"
}
Entity list control:
{
"entities": ["light.lamp1", "light.lamp2"],
"action": "off"
}
List all areas/rooms defined in Home Assistant.
Add to your Claude desktop config file (claude_desktop_config.json):
{
"mcpServers": {
"home-assistant": {
"command": "/path/to/ha-mcp-server",
"env": {
"HA_TOKEN": "your_token_here",
"HA_URL": "http://192.168.1.100:8123"
}
}
}
}
The server supports n8n AI agent format for batch operations:
{
"entities": ["light.living_room", "light.kitchen"],
"action": "on"
}
You can filter which entities are exposed:
Only expose entities matching these regex patterns:
export HA_ENTITY_FILTER="light\\.living_room.*,switch\\.kitchen.*"
Hide entities matching these regex patterns:
export HA_ENTITY_BLACKLIST="switch\\.dangerous.*,light\\..*_backup"
tail -f ha-mcp.log
# Test environment variables
echo $HA_TOKEN
echo $HA_URL
# Test Home Assistant connection
curl -H "Authorization: Bearer $HA_TOKEN" $HA_URL/api
... [View full README on GitHub](https://github.com/jrydval/MCP-HomeAssistant-Server-for-N8N-in-Golang#readme)