nickol-knx MCP server
io.github.NickoScope/nickol-knx-mcp·v0.8.2·25 starsRead-only KNX/ETS project auditor: validates a .knxproj and generates Home Assistant YAML
25 stars46 downloads/wk
Reviews
Write oneNobody has reviewed nickol-knx yet.
If you have run it, two minutes of your experience saves the next person an afternoon.
nickol-knx tools (32, 1 write)
write = sends, deletes, buys or postsRead from the package source without running it. The installed server may list more.
analyze_allwrite actionRun every check and return the report summary plus all findings.
check_device_parametersFind the device whose ETS **parameter** settings differ from its N identical siblings — the odd thermostat/sensor out (e.g. one thermostat with a different setpoint/hysteresis, one presence detector with a different detection time).
check_dptDetect missing, inconsistent or mismatched DPTs.
check_energyCheck the metering/energy domain (energy DPTs 13.x / 14.056) and suggest a per-circuit / PV / battery / EVSE structure for the HA energy dashboard.
check_matterMatter-readiness lint: which controllable functions round-trip to a Matter cluster (have command + status + a decodable DPT) and which won't.
check_missing_statusDetect controllable GAs lacking a status/feedback counterpart.
check_namingValidate naming conventions and 3-level structure.
check_policyValidate the loaded project against a **Project Policy Profile** — *your* agreed rules (main-group taxonomy, naming regex, command/status exemptions), not one universal "standard". Flags GAs whose domain doesn't match the main group your policy assigns, and names that don't match your pattern. Pass `profile_path` to a YAML profile (omit to validate against the taxonomy inferred from the project it
check_secureSummarise KNX Data Secure posture + the keyring handover checklist.
check_topologyCheck topology capacity and individual-address validity (KNX Handbook).
compose_roomsCompose a **new** KNX project from a list of room templates (constructor).
decompose_deviceExpand a device into its group-address decomposition recipe.
diff_projectsSemantic diff between two .knxproj files (path_a = base/old, path_b = new): added / removed GAs, DPT changes, renames, security-flag changes. Read-only.
explain_ga**Provenance** for one group address — why the tool classified it the way it did. Replays the classification and shows, per decision (category / kind / status pairing), the signals that fired with a **confidence tier**: authoritative (an ETS Function role) > structural (the KNX DPT) > heuristic (a name keyword). Flags **conflicts** (e.g. a GA the DPT calls `lighting` while its name says "AC") — th
generate_ets_group_addressesGenerate an ETS-importable Group Address export.
generate_ha_packageGenerate a Home Assistant KNX package YAML.
generate_handover_packGenerate a project handover pack (as-built deliverable for commissioning).
generate_knx_iotExport a KNX IoT semantic view (Turtle/RDF) of the project's functional datapoints — a pragmatic skeleton for the IP-native model, for review.
generate_test_protocolDraft a functional acceptance protocol (per function: command → expected status, pass/fail/sign-off) as Markdown. Execution is manual/on-site; this only drafts it.
get_devicesList devices (individual address, name, order number, manufacturer), sorted by individual address (area/line/device numerically). Same paging contract as `list_group_addresses`: `next_cursor` / `total_matched` / `returned`.
get_topologyReturn the area/line/device topology tree.
grade_completenessGrade the project: bare functional skeleton vs as-built grade — by the presence of the professional patterns (central macros, device tuning, astro/meteo, monitoring, deep metering, scenes, reserves, a debug main).
list_device_recipesList the device decomposition recipes in the built-in device library.
list_group_addressesList parsed group addresses with classification, in a **stable order**.
load_ga_exportLoad an ETS group-address export (ga-export/01 XML) instead of a full .knxproj.
load_projectParse a .knxproj file (read-only) and cache it for the session.
parse_devices_from_projectExtract exact device object models from a .knxproj / .knxprod application programs.
project_reportProduce the human-readable Markdown report (review before any import).
suggest_namesNaming hygiene suggestions (empty names, status GAs missing a status keyword).
suggest_repairsPropose concrete fixes for the project's findings — repair, don't just flag.
validate_room_templateValidate a Room Library template against the R1 schema (report-only).
workspace_infoShow the confined output workspace and the safety guarantees.
Public scan report
scanner v0.1.10 · 2026-10-03 · same rubric, same numbers if you re-run it
- Code scan32 source files scanned25/25
- –Live reliabilityno gateway calls yet and no remote to proben/a
- –Tool poisoningtools not inspected (local package is not executed); not countedn/a
- Auth qualitylocal package, no credentials required12/15
- Maintenancelast push 17 days ago15/15
- Maintainer identityregistry namespace matches repository owner6/10
How nickol-knx compares
Against every graded MCP server, from our own scans and uptime checks. Updated after each scan run.
- Safety score
- 89/100
- higher than 80% of 48,255 servers
- Tools
- 32
- the typical server has 7
- Tools that change things
- 3%
- typical: 0%. Fewer write tools means less an agent can break
- GitHub stars
- 25
- more than 91% of 28,688 servers
- Downloads a week
- 46
- more than 38% of 12,191 servers with a package
What its tools let an agent do: 26 read · 5 create · 1 change
Install nickol-knx in Claude Code, Cursor or VS Code
claude mcp add nickol-knx-mcp -- uvx nickol-knx-mcp
What the publisher says
From the nickol-knx repository's README, as published. We do not edit it. Read it on GitHub
nickol-knx-mcp
<!-- mcp-name: io.github.NickoScope/nickol-knx-mcp -->
A design-time KNX / ETS6 assistant exposed as an MCP server.
Four things you can do with it — all without ever touching the live KNX bus:
- Design a project from a spec — turn an equipment list / project specification into a complete, validated group-address structure plus the full implementation document set (ETS-importable XML/CSV, human-readable report, Home Assistant YAML, acceptance test protocol, as-built handover pack).
- Audit, repair & finish an existing project — validate naming · DPT & sub-DPT · command↔status · KNX Secure · Matter-readiness, get concrete fix proposals (inferred DPTs, synthesised status GAs), grade completeness, and diff two project versions.
- Generate the smart-home layer — assembled Home Assistant entities (colour lights, climate, covers, sensors) that read real device state, with everything ambiguous deferred to human review.
- Compose a new project from parametrised room templates — from a list of rooms (with a basic/comfort preset per slot) assemble a new, validated project → an allocation manifest + ETS GA XML/CSV + a device BOM proposal. Dry-run, new projects only (R1).
Under the hood: a device library that expands each actuator into its real communication objects — from generic recipes up to the exact vendor object model parsed straight from ETS application programs.
-0b3d2e)
🇷🇺 Русская версия: README.ru.md
🎬 Explore the live interactive demo & dashboard →
New — a whole demo house. examples/demo-home ships a synthetic
239-GA / 47-Function project, the tool's generated report + Home Assistant config + ETS export, and a
full smart-home “brain” — circadian lighting, an 8-factor climate setpoint, a presence/season/time
state machine and statistics — driving a 5-view dashboard. See it all on the
live site ↗.
🖥️ The dashboard — live in Home Assistant
Real screenshots from a live Home Assistant running the demo house. They show the tool's assembled entities at work: RGBW / RGB / CCT colour lights, six floor-heating climate zones (target, mode and valve %), a circadian lighting curve and a computed climate setpoint — not set by hand.
Shortened. The full README is on GitHub.
Nothing above is checked by us. What we check is on the safety report.
nickol-knx: common questions
- Is nickol-knx MCP server safe?
- Yes, by our scan: it is graded A (89/100). Read the nickol-knx safety report
- How do I install nickol-knx?
- It runs on your machine. Copy the Claude Code, Cursor, VS Code or Claude Desktop config from the install section.
- Does nickol-knx need an API key?
- No secret keys are declared. It reads 2 settings from the environment.
- Is nickol-knx maintained?
- The last commit was 49 days ago (2026-09-16). The latest release is v0.8.2.
- How does nickol-knx compare with other MCP servers?
- safety score 89/100 (higher than 80% of 48,255 servers); tools 32 (the typical server has 7); tools that change things 3% (typical: 0%. Fewer write tools means less an agent can break). Full comparison.