2,500+ MCP servers ready to use
Vinkius

Home Assistant MCP Server for CrewAI 15 tools — connect in under 2 minutes

Built by Vinkius GDPR 15 Tools Framework

Connect your CrewAI agents to Home Assistant through the Vinkius — pass the Edge URL in the `mcps` parameter and every Home Assistant tool is auto-discovered at runtime. No credentials to manage, no infrastructure to maintain.

Vinkius supports streamable HTTP and SSE.

python
from crewai import Agent, Task, Crew

agent = Agent(
    role="Home Assistant Specialist",
    goal="Help users interact with Home Assistant effectively",
    backstory=(
        "You are an expert at leveraging Home Assistant tools "
        "for automation and data analysis."
    ),
    # Your Vinkius token — get it at cloud.vinkius.com
    mcps=["https://edge.vinkius.com/[YOUR_TOKEN_HERE]/mcp"],
)

task = Task(
    description=(
        "Explore all available tools in Home Assistant "
        "and summarize their capabilities."
    ),
    agent=agent,
    expected_output=(
        "A detailed summary of 15 available tools "
        "and what they can do."
    ),
)

crew = Crew(agents=[agent], tasks=[task])
result = crew.kickoff()
print(result)
Home Assistant
Fully ManagedVinkius Servers
60%Token savings
High SecurityEnterprise-grade
IAMAccess control
EU AI ActCompliant
DLPData protection
V8 IsolateSandboxed
Ed25519Audit chain
<40msKill switch
Stream every event to Splunk, Datadog, or your own webhook in real-time

* Every MCP server runs on Vinkius-managed infrastructure inside AWS - a purpose-built runtime with per-request V8 isolates, Ed25519 signed audit chains, and sub-40ms cold starts optimized for native MCP execution. See our infrastructure

About Home Assistant MCP Server

Connect to your Home Assistant instance (local or Nabu Casa cloud) and control your entire smart home from any AI agent. Manage lights, climate, media players, covers, switches, and trigger automations via the Home Assistant REST API.

When paired with CrewAI, Home Assistant becomes a first-class tool in your multi-agent workflows. Each agent in the crew can call Home Assistant tools autonomously — one agent queries data, another analyzes results, a third compiles reports — all orchestrated through the Vinkius with zero configuration overhead.

What you can do

  • Entity Discovery — List all entities and their current states across all integrations
  • Device Control — Turn lights on/off, adjust brightness, set thermostat temperatures, open/close covers
  • Service Calls — Call any Home Assistant service (light, switch, climate, cover, media_player, automation, script)
  • State Monitoring — Get real-time state of any entity including sensors, binary sensors, and device trackers
  • History & Logbook — Query historical state changes and logbook entries for analysis
  • Calendar Management — List and query calendar events from Home Assistant calendars
  • Event Automation — Fire custom events to trigger Home Assistant automations
  • Template Rendering — Render Jinja2 templates for advanced state access
  • Configuration — View system configuration, loaded components, and validate configuration
  • Local or Cloud — Works with local instances (http://IP:8123) or Nabu Casa cloud (https://INSTANCE.ui.nabu.casa)

The Home Assistant MCP Server exposes 15 tools through the Vinkius. Connect it to CrewAI in under two minutes — no API keys to rotate, no infrastructure to provision, no vendor lock-in. Your configuration, your data, your control.

How to Connect Home Assistant to CrewAI via MCP

Follow these steps to integrate the Home Assistant MCP Server with CrewAI.

01

Install CrewAI

Run pip install crewai

02

Replace the token

Replace [YOUR_TOKEN_HERE] with your Vinkius token from cloud.vinkius.com

03

Customize the agent

Adjust the role, goal, and backstory to fit your use case

04

Run the crew

Run python crew.py — CrewAI auto-discovers 15 tools from Home Assistant

Why Use CrewAI with the Home Assistant MCP Server

CrewAI Multi-Agent Orchestration Framework provides unique advantages when paired with Home Assistant through the Model Context Protocol.

01

Multi-agent collaboration lets you decompose complex workflows into specialized roles — one agent researches, another analyzes, a third generates reports — each with access to MCP tools

02

CrewAI's native MCP integration requires zero adapter code: pass the Vinkius Edge URL directly in the `mcps` parameter and agents auto-discover every available tool at runtime

03

Built-in task delegation and shared memory mean agents can pass context between steps without manual state management, enabling multi-hop reasoning across tool calls

04

Sequential and hierarchical crew patterns map naturally to real-world workflows: enumerate subdomains → analyze DNS history → check WHOIS records → compile findings into actionable reports

Home Assistant + CrewAI Use Cases

Practical scenarios where CrewAI combined with the Home Assistant MCP Server delivers measurable value.

01

Automated multi-step research: a reconnaissance agent queries Home Assistant for raw data, then a second analyst agent cross-references findings and flags anomalies — all without human handoff

02

Scheduled intelligence reports: set up a crew that periodically queries Home Assistant, analyzes trends over time, and generates executive briefings in markdown or PDF format

03

Multi-source enrichment pipelines: chain Home Assistant tools with other MCP servers in the same crew, letting agents correlate data across multiple providers in a single workflow

04

Compliance and audit automation: a compliance agent queries Home Assistant against predefined policy rules, generates deviation reports, and routes findings to the appropriate team

Home Assistant MCP Tools for CrewAI (15)

These 15 tools become available when you connect Home Assistant to CrewAI via MCP:

01

call_ha_service

This is the primary way to control devices in Home Assistant. COMMON SERVICE CALLS: - light.turn_on: entity_id, brightness (0-255), color_temp, rgb_color - light.turn_off: entity_id - switch.turn_on: entity_id - switch.turn_off: entity_id - climate.set_temperature: entity_id, temperature - climate.set_hvac_mode: entity_id, hvac_mode (heat, cool, auto, off) - cover.open_cover: entity_id - cover.close_cover: entity_id - media_player.turn_on: entity_id - media_player.turn_off: entity_id - media_player.media_play: entity_id - automation.trigger: entity_id - script.turn_on: entity_id DOMAINS: light, switch, climate, cover, fan, lock, media_player, automation, script, scene, input_boolean, input_number, notify PARAMETERS: - domain (REQUIRED): Domain name (e.g. light, switch, climate) - service (REQUIRED): Service name (e.g. turn_on, turn_off, set_temperature) - service_data (OPTIONAL): JSON object with service parameters including entity_id EXAMPLES: - "Turn on living room light" → domain="light", service="turn_on", service_data={"entity_id":"light.living_room"} - "Set bedroom temperature to 20" → domain="climate", service="set_temperature", service_data={"entity_id":"climate.bedroom","temperature":20} Call a Home Assistant service on a domain

02

check_ha_configuration

Check Home Assistant configuration validity

03

fire_ha_event

The event type must match automation triggers configured in Home Assistant. Fire a custom event in Home Assistant

04

get_api_status

Use this as a connectivity test before making other API calls. Check if the Home Assistant API is running

05

get_calendar_events

Get events from a Home Assistant calendar

06

get_entity_history

Useful for analyzing trends and past behavior. Get historical state data for an entity

07

get_entity_state

Use entity IDs from list_entity_states (e.g., light.living_room, climate.bedroom, sensor.temperature). Get the current state of a specific entity

08

get_ha_config

Get the Home Assistant configuration details

09

get_logbook_entries

Can be filtered by entity and time range. Get Home Assistant logbook entries

10

list_available_services

g., light: turn_on, turn_off, toggle; climate: set_temperature, set_hvac_mode). Essential for discovering what actions can be performed. List all available services across all domains

11

list_entity_states

Each entity includes entity_id, state, last_changed timestamp, and attributes. Essential for discovering available devices. List all entity states in Home Assistant

12

list_ha_calendars

List all calendars configured in Home Assistant

13

list_ha_components

List all loaded components/integrations in Home Assistant

14

list_ha_events

Useful for understanding what events Home Assistant is tracking. List all event types currently registered in Home Assistant

15

render_ha_template

Useful for accessing HA template functions and state from the API. Render a Jinja2 template in Home Assistant

Example Prompts for Home Assistant in CrewAI

Ready-to-use prompts you can give your CrewAI agent to start working with Home Assistant immediately.

01

"List all my smart home entities and show me the lights."

02

"Turn on the living room light and set it to 50% brightness."

03

"What is the current temperature in the bedroom and what mode is the thermostat?"

Troubleshooting Home Assistant MCP Server with CrewAI

Common issues when connecting Home Assistant to CrewAI through the Vinkius, and how to resolve them.

01

MCP tools not discovered

Ensure the Edge URL is correct. CrewAI connects lazily when the crew starts — check console output.
02

Agent not using tools

Make the task description specific. Instead of "do something", say "Use the available tools to list contacts".
03

Timeout errors

CrewAI has a 10s connection timeout by default. Ensure your network can reach the Edge URL.
04

Rate limiting or 429 errors

The Vinkius enforces per-token rate limits. Check your subscription tier and request quota in the dashboard. Upgrade if you need higher throughput.

Home Assistant + CrewAI FAQ

Common questions about integrating Home Assistant MCP Server with CrewAI.

01

How does CrewAI discover and connect to MCP tools?

CrewAI connects to MCP servers lazily — when the crew starts, each agent resolves its MCP URLs and fetches the tool catalog via the standard tools/list method. This means tools are always fresh and reflect the server's current capabilities. No tool schemas need to be hardcoded.
02

Can different agents in the same crew use different MCP servers?

Yes. Each agent has its own mcps list, so you can assign specific servers to specific roles. For example, a reconnaissance agent might use a domain intelligence server while an analysis agent uses a vulnerability database server.
03

What happens when an MCP tool call fails during a crew run?

CrewAI wraps tool failures as context for the agent. The LLM receives the error message and can decide to retry with different parameters, fall back to a different tool, or mark the task as partially complete. This resilience is critical for production workflows.
04

Can CrewAI agents call multiple MCP tools in parallel?

CrewAI agents execute tool calls sequentially within a single reasoning step. However, you can run multiple agents in parallel using process=Process.parallel, each calling different MCP tools concurrently. This is ideal for workflows where separate data sources need to be queried simultaneously.
05

Can I run CrewAI crews on a schedule (cron)?

Yes. CrewAI crews are standard Python scripts, so you can invoke them via cron, Airflow, Celery, or any task scheduler. The crew.kickoff() method runs synchronously by default, making it straightforward to integrate into existing pipelines.

Connect Home Assistant to CrewAI

Get your token, paste the configuration, and start using 15 tools in under 2 minutes. No API key management needed.