Skip to content

Releases: Highsteads/ClaudeBridge

v2.9.0 — timed device actions, ten new tools, and a plain-English README

11 Jun 16:34

Choose a tag to compare

The headline: timed device actions. "Turn the fan on for ten minutes" or "switch that off in half an hour" is now a single request — device_turn_on and device_turn_off take optional delay and duration values and hand the timing to Indigo's own delayed-action engine, so it keeps working long after the conversation has ended. A companion tool cancels a pending timed action on one device without disturbing anything else.

Nine more tools round out the batch, all found by walking Indigo's live API and comparing it against what the plugin already offered: reset the lifetime kWh count on an energy-metering plug, make a device beep so you can find it on the shelf, ping a device to check it still answers, Indigo's native all-lights-on / all-lights-off / all-devices-off broadcasts (clearly labelled — they reach Z-Wave and similar directly-connected devices, not plugin-owned ones), folder deletion for devices and variables (a non-empty folder is politely refused unless you say otherwise), and audit_api_coverage, which checks after an Indigo upgrade whether the API has gained anything this plugin hasn't bridged yet. That brings the total to 149 tools.

The README has been rewritten in plain English — including, importantly, an honest "What this costs" section: you need a Claude Pro or Max subscription for Claude Code itself, and the plugin's own API key is optional (it powers one niche feature — most people can skip it entirely).

For anyone arriving from the last release (2.6.6, late May): a great deal happened in between — outbound event webhooks with a default-deny safety firewall, a thorough security review that made per-token read/write/admin scoping properly fail-closed, much lighter installs (the dependency list went from twenty packages to four), transport reliability fixes that made the bridge self-heal across plugin reloads, and a 283-test suite that now runs on every change. The full story is in the README's changelog.

Install: download Claude.Bridge.indigoPlugin.zip below, unzip it, double-click Claude Bridge.indigoPlugin and Indigo installs it. Upgrading from any earlier version: same thing — your settings are kept.

v2.6.6 — fix check_plugin_updates

29 May 15:30

Choose a tag to compare

Fixed the check_plugin_updates MCP tool. It walked the plugin list with
getPluginList() (which returns PluginInfo objects) and then passed each one
back into getPlugin(), which expects an id string — so every plugin errored
with a getPlugin(PluginInfo) signature mismatch and the tool reported a
misleading zero. It now uses the PluginInfo objects directly and reads
compatibleUpdateAvailable straight off them. No other changes.

v2.6.2 — 50 new MCP tools + plugin-dev helpers

27 May 13:58

Choose a tag to compare

v2.6.2 — 50 new MCP tools, plugin-dev helpers, lint refinement

Tool count: 86 → 136. Three feature batches in one release plus a security cleanup.

What's new

43 new IOM-wrapping tools (v2.5.0)

Previously only reachable via execute_indigo_python. Now first-class MCP tools:

  • Device CRUD: delete_device, duplicate_device, move_device_to_folder, enable_device, rename_device, device_toggle, dimmer_brighten_by, dimmer_dim_by
  • Variable gaps: variable_delete, variable_move_to_folder
  • Schedule CRUD: delete_schedule, duplicate_schedule, execute_schedule_now, schedule_remove_delayed_actions, schedule_get_dependencies
  • Trigger CRUD: delete_trigger, move_trigger_to_folder
  • Action group CRUD: delete_action_group, duplicate_action_group, enable_action_group, disable_action_group, action_group_get_dependencies
  • Sprinkler suite: sprinkler_set_zone, sprinkler_run/stop/pause/resume/next_zone/previous_zone
  • Thermostat: set_fan_mode
  • Speed control: speedcontrol_set_index/increase/decrease
  • Server tools: server_speak, calculate_sunrise/sunset, get_latitude_longitude, get_web_server_url, get_deprecated_elements, remove_all_delayed_actions
  • Control pages: list_control_pages, get_control_page
  • Cross-plugin: check_plugin_updates

7 plugin-development helpers (v2.6.0)

For plugin authors building/debugging their own plugins:

  • plugin_diff_source_vs_installed — catches static-asset stale-sync and gutted-Packages drift
  • plugin_refresh_deps — delete pip success marker, optional restart
  • plugin_show_packages_versions — read Contents/Packages/*.dist-info
  • plugin_validate_xml — Devices/Actions/Events/MenuItems naming-rule check
  • plugin_node_check_htmlnode --check on inline <script> blocks (catches stale-paste JS bugs)
  • plugin_lint — convention sweep against plugin.py
  • device_history — focused SQL Logger sqlite query

Lint refinement (v2.6.1)

plugin_lint's missing_loop_guard rule is now param-name agnostic, handles annotated signatures, recognises three guard idioms, and only flags when deviceUpdated actually writes back. False positives gone.

Defensive change (v2.6.2)

VectorStoreManager.start_async() moves vector store warmup to a daemon thread. Harmless improvement.

Security cleanup

indigo_mcp_proxy.py — replaced hardcoded Bearer token literal with REPLACE_AT_INSTALL placeholder.

Known issue (upstream)

Investigation during this release uncovered that Indigo's IWS goes silent for ~4 min 37 sec after EVERY plugin restart (not just Claude Bridge). Reflector client polling localhost holds the IWS event loop until it times out and reschedules. Documented in docs/forum_post_api_gaps.md for upstream report.

Workaround: wait ~5 minutes after a restart, or disable the Reflector temporarily.

Installation

  1. Download Claude.Bridge.indigoPlugin.zip below
  2. Unzip — you'll get Claude Bridge.indigoPlugin
  3. Double-click it — Indigo will install it automatically

Architecture

Two new handler files keep concerns separate:

  • mcp_server/tools/extended_tools/extended_tools_handler.py — all 43 IOM wrappers
  • mcp_server/tools/plugin_dev_tools/plugin_dev_tools_handler.py — all 7 dev helpers

Each follows the established BaseToolHandler shape with structured dict returns and handle_exception error wrapping. Dispatch in mcp_handler.py uses two shared helpers (_ext_call, _pd_call) to keep boilerplate to a minimum — one line per tool.

🤖 Generated with Claude Code

v2.3.3 — run_script auto-injects `indigo`

18 May 21:26

Choose a tag to compare

Fix: run_script auto-injects indigo into globals

Scripts run via the run_script MCP tool no longer need an explicit
import indigo at the top. The indigo module is now pre-injected into
the exec namespace, matching Indigo's own GUI action runner.

Background

Before 2.3.3, scripts dispatched by mcp__indigo-mcp__run_script failed
with NameError: name 'indigo' is not defined because Claude Bridge passed
only {"__file__", "__name__"} to exec() — none of the Indigo namespace
injection that the GUI action runner provides. The docstring claimed
"Indigo globals available" but the implementation did not match.

Fix

mcp_server/tools/script_tools/script_tools_handler.py:run_script
the ns dict passed to exec() now includes "indigo": indigo.

Compatibility

Scripts that already include import indigo continue to work — the
explicit import simply re-binds the name. No client changes required.

Installation

  1. Download Claude.Bridge.indigoPlugin.zip
  2. Unzip — you will get Claude Bridge.indigoPlugin
  3. Double-click — Indigo will install the new version

ClaudeBridge v2.3.2

12 May 14:16

Choose a tag to compare

Indigo plugin release v2.3.2.

Download Claude.Bridge.indigoPlugin.zip below, unzip, and double-click the resulting .indigoPlugin to install.

Per-plugin changelog: see README.md / repo CLAUDE.md for full release notes.

ClaudeBridge v2.3.1

12 May 12:34

Choose a tag to compare

Indigo plugin release v2.3.1.

Download Claude.Bridge.indigoPlugin.zip below, unzip, and double-click the resulting .indigoPlugin to install.

Per-plugin changelog: see README.md / repo CLAUDE.md for full release notes.

ClaudeBridge v2.3.0

10 May 12:12

Choose a tag to compare

Indigo plugin release v2.3.0.

Download Claude.Bridge.indigoPlugin.zip below, unzip, and double-click the resulting .indigoPlugin to install.

Per-plugin changelog: see README.md / repo CLAUDE.md for full release notes.

Claude Bridge v2.0.0

05 Apr 12:52

Choose a tag to compare

Claude Bridge v2.0.0 — Major Capability Expansion

This release doubles the tool count from 34 to 64, adds real-time event subscriptions, persistent cross-session memory, script authoring tools, and full home status reporting.

What's New

64 MCP tools across 12 categories (was 34 in v1.x):

  • Script Tools — read, write, create, delete, scaffold, and backup Indigo Python scripts directly from a Claude conversation
  • Event Subscriptions — real-time device/variable change feed with deduplication; Claude can watch for specific events and respond to them
  • Memory Tools — persistent cross-session memory (100-entry cap, topic-organised); Claude remembers preferences and notes between conversations
  • Home Status Report — prose narrative summary of your home's current state; configurable sections (energy, heating, security, devices, alerts, automation)
  • Audit & Diagnostics — dependency mapping (what breaks if I delete X?) and conflict detection (duplicate names, shared addresses, orphaned script IDs, variable write races)
  • Schedule Control — read and manage Indigo schedules
  • System Tools — system-level Indigo information

Bug fixes:

  • Event queue entity_id normalisation — specific-ID subscriptions now work correctly
  • get_events parameter mismatch fixed — since/limit correctly passed to handler
  • Events now always include timestamp_epoch for reliable time-based filtering

Requirements

  • Indigo 2025.1+
  • Claude Code (requires Claude.ai Pro/Max subscription or Anthropic API key)
  • macOS

Installation

  1. Download Claude.Bridge.indigoPlugin.zip below
  2. Unzip — you will get Claude Bridge.indigoPlugin
  3. Double-click to install — Indigo installs it automatically
  4. Enable in Indigo → Plugins → Manage Plugins
  5. Restart Claude Code — the MCP connection is configured automatically

See CAPABILITY_SUMMARY.md for a full description of all 64 tools, subscription requirements, cost estimates, and timing information.

Claude Bridge v2025.0.2

24 Mar 14:50

Choose a tag to compare

Installation

  1. Download Claude.Bridge.indigoPlugin.zip below
  2. Unzip — you get Claude Bridge.indigoPlugin
  3. Double-click it — Indigo installs and enables the plugin automatically

What's new in v2025.0.2

  • Renamed from "MCP Server" to "Claude Bridge"
  • Replaced OpenAI/Voyage AI with Anthropic Claude API throughout
  • Fixed text search (LLM query expansion was breaking substring matching)
  • Proxy: persistent HTTP keep-alive, auto type coercion, MCP protocol version translation
  • Removed all third-party AI service dependencies

Full changelog

Version Summary
2025.0.2 Renamed Claude Bridge; Claude API; fixed search; proxy improvements
2025.0.1 Initial release with OpenAI + Voyage AI embeddings

Claude Bridge v1.1.1

24 Mar 18:54

Choose a tag to compare

Bug fixes

get_devices_by_state fixed

  • Now correctly searches full device data including top-level thermostat/sensor properties (e.g. heatIsOn, onState, hvacHeaterIsOn)
  • Fixed crash when state_value was coerced to bool by the proxy
  • Schema changed to flat state_key + state_value string parameters — no more object type validation errors

Example usage

Find all heating zones that are on:
get_devices_by_state(state_key="heatIsOn", state_value="true")

Find all devices that are on:
get_devices_by_state(state_key="onState", state_value="true")

Install

  1. Download Claude.Bridge.indigoPlugin.zip below
  2. Unzip — you will get Claude Bridge.indigoPlugin
  3. Double-click Claude Bridge.indigoPlugin — Indigo installs it automatically
  4. No Claude Code restart needed for this update.