Enables access to historical device data and trends stored in InfluxDB, allowing queries of past device states and analysis of usage patterns over time.
Uses OpenAI's API for semantic search capabilities by generating embeddings to power vector search functionality, enabling natural language understanding of home automation queries.
Indigo MCP Server Plugin
A Model Context Protocol (MCP) server plugin that enables AI assistants like Claude to interact with your Indigo home automation system through natural language queries.
What It Does
Search, analyize, and control your Indigo devices using natural language:
- "Find all light switches in the bedroom"
- "Show me temperature sensors"
- "Turn on the garage lights"
- "What devices are currently on?"
- "Execute the bedtime scene"
Requirements
- Indigo Domotics: 2024.2 or later
- macOS: 10.15 (Catalina) or later
- Claude Desktop: Primary MCP client (ChatGPT support coming to Plus plan)
- OpenAI API Key: Required for semantic search (Get API key)
- Sends device metadata to OpenAI for embeddings (minimal cost)
- Only device names, types, descriptions sent - no sensitive data
Installation
- Install Plugin: Add MCP Server plugin to Indigo via Plugin Manager
- Configure Plugin: Enter OpenAI API key in plugin preferences
- Create MCP Server Device: Add new "MCP Server" device in Indigo
- Wait for Indexing: Plugin will index your Indigo database (takes time on first run)
- Configure Claude Desktop: Add configuration to
claude_desktop_config.json
Optional Features
- InfluxDB Connection information: Required for historical data analysis queries
- LangSmith: Optional debugging and tracing of AI prompts. Not needed for most people.
MCP Server Device Setup
The MCP Server Indigo device is what creates the actual MCP Server.
- Server Access: Local Only or Remote Access
- Single Server: Plugin enforces one MCP Server device per installation
A note on security: Do not expose the MCP Server to internet. It was not designed for this purpose. In the future I may implement the required security features, but will likely require collaboration with the Indigo devs.
Claude Desktop Configuration
Add to ~/Library/Application Support/Claude/claude_desktop_config.json
:
Replace localhost
with your server IP for remote access, and 8080
with your configured port.
Available Tools
Search and Query
- search_entities: Natural language search across devices, variables, action groups
- list_devices: Get all devices with optional state filtering
- list_variables: Get all variables with current values
- list_action_groups: Get all action groups/scenes
- get_devices_by_state: Find devices by state conditions
- get_devices_by_type: Get devices by type (dimmer, relay, sensor, etc.)
Control
- device_turn_on/off: Control device power state
- device_set_brightness: Set dimmer brightness (0-100 or 0-1)
- variable_update: Update variable values
- action_execute_group: Execute action groups/scenes
Analysis
- analyze_historical_data: AI-powered historical analysis (requires InfluxDB)
Improving Results
- Be Specific: Use location and device type in queries
- Device Notes: Add descriptions to device Notes field - included in AI context
- State vs Search: Use
list_devices({"onState": true})
for state queries vssearch_entities("lights")
Privacy & Security
Data Sent to OpenAI
When you first install the plugin and when devices are added or modified, the following device information is sent to OpenAI to create semantic search capabilities:
For Devices:
- Device name
- Device description (Notes field)
- Device model
- Device type (dimmer, sensor, etc.)
- Device address
For Variables:
- Variable name
- Variable description
For Action Groups:
- Action group name
- Action group description
What is NOT sent:
- Device states or current values
- URLs, passwords, or authentication credentials
- IP addresses or network configuration
- Historical data or usage patterns
This data is used only to generate embeddings (mathematical representations) that enable natural language search. The embeddings are stored locally on your Indigo server.
Network Security
- Local Server: Binds to localhost by default (configurable via MCP Server device)
- No Internet Exposure: Never expose the HTTP server to internet - it lacks authentication
Support
- Issues: Submit on project repository
- Questions: Indigo Domotics Forum
This server cannot be installed
hybrid server
The server is able to function both locally and remotely, depending on the configuration or use case.
A Model Context Protocol server that enables AI assistants like Claude to interact with Indigo home automation systems through natural language queries for searching and controlling devices, variables, and actions.
Related MCP Servers
- -securityFlicense-qualityA versatile Model Context Protocol server that enables AI assistants to manage calendars, track tasks, handle emails, search the web, and control smart home devices.Last updated -14Python
- -securityAlicense-qualityA Model Context Protocol server that integrates with Home Assistant to provide smart home control capabilities through natural language, supporting devices like lights, climate systems, locks, alarms, and humidifiers.Last updated -2PythonMIT License
- AsecurityAlicenseAqualityA Model Context Protocol server that enables AI assistants like Claude to interact with Google Cloud Platform environments through natural language, allowing users to query and manage GCP resources during conversations.Last updated -9187140TypeScriptMIT License
- -securityFlicense-qualityA Model Context Protocol server that enables AI assistants like Claude to perform Python development tasks through file operations, code analysis, project management, and safe code execution.Last updated -5Python