@coffeerunhobby/mcp-ha-connect
Smart home MCP server for Home Assistant plus Local AI integration
Versions
1.7.1latest1.7.01.6.01.5.61.5.5+ show 17 moreshow less
1.5.41.5.31.5.21.5.11.5.01.4.01.3.41.3.11.3.01.2.01.1.01.0.00.9.00.8.00.7.00.6.00.5.0Tools 67
invokeAction Invoke a pre-registered REST action by name. Actions are fixed, operator-configured HTTP calls
activateScene Activate a Home Assistant scene.
runScript Run a Home Assistant script with optional variables.
createAutomation Create a new Home Assistant automation. Requires specifying triggers, conditions (optional), and actions.
searchEntities Search for entities by name or entity_id. Returns paginated lightweight entities by default (50 per page). Use includeAttributes=true for full entity data. Note: For queries about people, family members, or "who's home?", use the listPersons tool instead.
listPersons List all household members (person entities) in Home Assistant. Returns each person's name, location state (home/away/unknown), and linked device trackers. Use this tool when the user asks: - "Who's home?" - "Where is everyone?" - "List family members" - "Is anyone home?" - "Where is Dad/Mom/etc?"
controlFan Control a fan with speed, oscillation, and direction settings.
controlClimate Control a climate/thermostat device with temperature and mode settings.
listEntities List entities with optional filtering by domain, state, or search query. Returns lightweight entities by default (limit 50). Use includeAttributes=true for full entity data.
getHistory Get historical data for an entity.
restartHomeAssistant Restart the Home Assistant server. Use with caution.
getSystemLog Get system log entries from the Home Assistant logbook. Shows recent events and state changes. Default: last 24h, 100 entries.
checkUpdates Check for available updates for Home Assistant Core, Supervisor, and OS. Requires Home Assistant OS or Supervised installation.
triggerAutomation Manually trigger a Home Assistant automation. Can optionally pass variables to the automation.
getEntitiesByDomain Get all entities for a specific domain (e.g., all lights, all sensors). Returns paginated lightweight entities by default (50 per page). Use includeAttributes=true for full entity data.
entityAction Perform a simple action on an entity (turn_on, turn_off, toggle). Automatically detects the domain.
sendNotification Send a notification through Home Assistant Mobile App or persistent notifications. Features for mobile app notifications: - Actionable notifications with up to 3 buttons - Images and videos - Custom sounds and vibration patterns - Notification grouping and replacement (via tag) - Priority and importance settings - Sticky/persistent notifications - iOS interruption levels (passive, active, time-sensitive, critical) To clear a notification, send message "clear_notification" with the same tag. Examples: - Simple: { message: "Hello!", target: "mobile_app_phone" } - With actions: { message: "Doorbell", target: "mobile_app_phone", actions: [{ action: "OPEN", title: "Open Door" }] } - With image: { message: "Camera alert", target: "mobile_app_phone", image: "/api/camera_proxy/camera.front" }
listNotificationTargets List available notification targets (mobile apps and other notify services). Use this to discover which devices can receive notifications.
getVersion Get Home Assistant version and configuration information.
getAllSensors Get all sensor states from Home Assistant (sensor.* and binary_sensor.* entities). Returns paginated lightweight entities by default (50 per page). Use includeAttributes=true for full entity data.
getDomainSummary Get a summary of entities in a domain, including counts and state breakdown.
enableAutomation Enable a disabled Home Assistant automation.
disableAutomation Disable a Home Assistant automation.
toggleAutomation Toggle a Home Assistant automation (enable if disabled, disable if enabled).
reloadAutomations Reload all automations from the Home Assistant configuration. Useful after editing automation YAML files.
getState Get the state of a specific entity by entity_id.
listCalendars List all calendar entities in Home Assistant. Returns calendar names and their current state.
getCalendarEvents Get events from one or all Home Assistant calendars. Examples: - All calendars, next 30 days: {} - Specific calendar: { entity_id: "calendar.family" } - Next 7 days: { days: 7 } - Date range: { start_date: "2026-01-01", end_date: "2026-01-31" } - Specific calendar + date range: { entity_id: "calendar.work", start_date: "2026-02-01", days: 14 }
controlLight Control a light with advanced options like brightness, color, and color temperature.
deleteAutomation Delete a Home Assistant automation. Only works for automations created via the UI/API.
controlMediaPlayer Control a media player with playback, volume, and media selection.
controlCover Control a cover/blind with position and tilt settings.
listAutomations List all Home Assistant automations with their status and last triggered time.
getAutomationTrace Get the execution trace (history) of an automation. Shows when it was triggered and what actions were executed.
getStates Get all entity states from Home Assistant. Returns paginated lightweight entities by default (50 per page). Use includeAttributes=true for full entity data.
callService Call a Home Assistant service (e.g., turn on a light, set temperature).
analyzeSensors Analyze sensor data using AI (Ollama) to detect issues and provide recommendations.
omada_listSites List all sites configured on the Omada controller
omada_setClientRateLimit Set custom bandwidth limits for a client (download/upload in Kbps)
omada_setClientRateLimitProfile Apply a rate limit profile to a client
omada_setSsidEnabled Turn an SSID (WiFi network, e.g. the guest network) on or off by name or ssidId.
omada_listDevices List all network devices (APs, switches, gateways) in a site
omada_getLanProfileList Get LAN profile configuration list
omada_getFirewallSetting Get firewall configuration for a site
omada_cyclePoePort Power-cycle PoE on one or more switch ports — a remote hard-reboot for whatever the ports power
omada_blockClient Block a client from the network by MAC address. The client is denied all network access until unblocked.
omada_getRateLimitProfiles Get available rate limit profiles for a site
omada_listDevicesStats Get statistics for global adopted devices with filtering
omada_getInternetInfo Get internet connection configuration for a site
omada_unblockClient Unblock a previously blocked client by MAC address, restoring its network access.
omada_getThreatList Get security threat management list
omada_getSwitchStackDetail Get detailed information about a switch stack
omada_browse Discover the Omada network resource graph. Returns the children and metadata at a path (resource TYPES, not
omada_read Read data from an Omada resource path discovered via omada_browse. Handles single resources (e.g. "/gateway/wan"),
omada_listClients List all connected clients (devices/users) in a site
omada_disableClientRateLimit Remove bandwidth limits from a client
omada_getSsidList Get SSID list for a WLAN group
omada_getLanNetworkList Get LAN network configuration list
omada_getClient Get detailed information about a specific connected client
omada_getPortForwardingStatus Get port forwarding rules (User or UPnP)
omada_searchDevices Search for devices globally across all sites
omada_listClientsActivity Get client activity statistics over time
omada_listClientsPastConnections Get historical client connection data
omada_listMostActiveClients Get the most active clients sorted by total traffic
omada_getDevice Get detailed information about a specific network device
omada_getSsidDetail Get detailed SSID configuration
omada_getWlanGroupList Get WLAN group configuration list
Permissions 4
network medium filesystem low shell high env_vars low