A design-time KNX/ETS6 assistant exposed as an MCP server. It reads your
.knxproj, validates DPTs / naming / status pairs, generates Home Assistant YAML and
ETS-importable exports, and produces human-readable reports — without ever touching the live bus.
As of 2026 there is no off-the-shelf ETS6 ↔ AI tool. This fills exactly the design-time gap — and the architecture keeps the dangerous part impossible by design.
Zero networking/bus libraries in the dependency tree. bus_access: false — structural, not a promise.
load · analyze (naming/DPT/status) · generate HA YAML · generate ETS XML/CSV · report. All read-only on your project.
Classifies by DPT + multilingual name keywords. Tested across ETS 4.2 / 5.0 / 5.5 / 6 fixtures.
A complete worked example ships in the repo (examples/demo-home): a synthetic 2-storey
home — living room with fireplace, kitchen, master + 2 kids bedrooms each with ensuite, guest WC, laundry,
2 corridors, staircase. Lighting (switch/dim/CCT/RGBW), underfloor heating + AC, sensors, scenes.
| # | Planted mistake | Caught? |
|---|---|---|
| 1 | Group address with no DPT (Living room CO₂) | ✅ check_dpt |
| 2 | Two GAs, same name, different DPT (Kitchen temperature) | ✅ check_dpt |
| 3 | Dimmer with on/off status but no brightness status | ⚠️ not yet — honest limit |
| 4 | Switch with no status (Guest WC) | ✅ check_missing_status |
| 5 | Group address with an empty name | ✅ check_naming |
The tool surfaced its own limitation (#3): the missing-status check asks “does this control have a status?”, not “each expected status type”. Tracked for a future release — found by this very demo.
The KNX I/O drives a 5-view Home Assistant dashboard. These are real screenshots from a live Home Assistant running the demo (simulated sensors that drift over time) — note how Summer flipped the whole house to Cooling at 92% comfort. Below them, an interactive preview lets you click through the views.
Overview — at a glance · scenes · climate snapshot (Summer · Cooling · 92% comfort)
Climate — zones & the computed “brain”, targets & valve
Lighting — circadian 71% @ 3750K · dimmers · blinds 41/59%
Energy & stats — gauges · runtime · air quality
Presence — mode machine · occupancy · schedules
↑ Interactive preview with mock data · the screenshots above are the real thing, live in Home Assistant.
On top of the KNX I/O sits a 5-layer Home Assistant control system — built on native helpers (utility_meter, history_stats, statistics, derivative, trend, threshold, schedule), 22 automations and 3 scripts.
A single template folds everything into one number:
daypart profile → weekend hold → occupancy setback → home-mode override (Away −3°, Vacation→frost 12°)
→ seasonal trim / cooling target → window interlock → clamp 12–28 °C.
.knxprojIt's read-only and never touches a bus, so testing is safe. Run it from Claude, point it at your project, and tell us what the report got right — and wrong.