Files
homelable/mcp
Pouzor 87081ac926 fix(mcp): key node properties on key, not name
create_node and update_node advertised a property as {name, value}. The
backend keys properties on `key` — merge_properties unions on it and
apply_view orders the node's view by it — so every property an MCP client
sent arrived keyless, collapsed onto the empty key, and a node given
three of them drew one. The schema also *required* `name`, so a correct
{key, value} payload was rejected outright.

Only MCP clients were affected: the frontend has always sent `key`.

`icon` and `visible` are exposed too, the other two fields of a
NodeProperty, so a property can be created the way the UI creates one.

While here, document that `status` on an update is a live observation
rather than a setting: link_facts keeps the freshest one instead of the
last writer, so it only lands while the device's status is still unknown.
The tool silently no-opped and its schema said nothing about it.

ha-relevant: no
2026-09-04 15:10:05 +02:00
..
2026-03-13 16:45:51 +01:00