Added
- Tool list updates live when the active document changes (#24) — the tool set is filtered by document type (writer/calc/draw), but MCP clients only refetch
tools/listwhen told to. Nelson now advertisescapabilities.tools.listChanged: trueand, while any SSE client is connected, watches the active document type and broadcasts anotifications/tools/list_changedframe on every transition (e.g. switching focus Writer→Calc). Clients that honour the notification refetch the now-correct tool set automatically. The poller only runs while a client is listening and re-baselines on reconnect, so idle sessions and reconnects never spuriously notify
Fixed
list_cell_commentsreturned emptytextanddate(#21) — the read path pulled these from theXSheetAnnotationscollection item (getAnnotations().getByIndex(i)), whosegetString()/getDate()come back empty in current LibreOffice, while the write path stores them on the cell's ownCellAnnotation. The read path now resolves each note throughcell.getAnnotation()(mirroring the write path), so the comment body and date round-trip correctly