1.7.1
MCP server polish
This release refines the built-in MCP server (Settings → Integrations) so external clients get more reliable, cheaper and more consistent access to your local corpus. No new app features and no database migration — the schema stays at v31.
Added
- New tool
nodus_search_passages— semantic full-text search over the source passages of your library, ranked by cosine similarity, with citable work metadata on every hit and an optional scope to a single work. This is the direct way to locate where the corpus discusses a topic; unlikenodus_analyze_passageit performs no extra AI relation-typing. Requires an embedding provider configured in Nodus. - Progress notifications on long tools —
nodus_generate_deep_research(writer "nodus") andnodus_ask_coverage_questionnow stream MCPnotifications/progress(planning, per-section, coverage, assembly) when the client sends a progress token, so multi-minute calls no longer look stalled and are less likely to hit a client-side timeout. nodus_get_capabilitiesreports more — it now returns the running Nodus version plusthemesandpassagescounts, so a client can size the corpus and identify the build in a single call.
Changed
- List queries match text, not raw JSON — the
queryfilter on the list tools now matches only human-readable fields (titles, statements, author names, …) instead of the serialized record, so searches no longer match internal ids or enum values (e.g. querying "claim" no longer returns every idea via its type). nodus_list_ideasis compact by default — list rows carry a statement snippet instead of the full statement; passfull=truefor complete statements. This sharply reduces token cost on large corpora.nodus_get_ideastill returns one idea in full.- Structured tool output — object results are now mirrored into the response's
structuredContentfield for modern clients, while the JSON text block is kept for older ones. - The MCP surface is now fully English — the remaining Spanish tool descriptions, hints and client-facing error messages were translated for a consistent experience when an external client connects.
Fixed
- Idle MCP sessions are reclaimed — a periodic sweep closes sessions left idle beyond a timeout, so a client that disconnects without a clean shutdown no longer leaks its session until the app restarts.
- The server reports its real version in the MCP handshake instead of a hardcoded placeholder.