Repository navigation
v0.13.0
What's new
zn mcp can share part of a vault, read-only if you like. Until now an MCP client saw the whole vault. Four flags now scope the server, and the server enforces them on every tool, so a hidden note cannot turn up in a listing, a search, a tag, a task, a backlink or an error:
zn mcp --allow-path Projects --deny-path Projects/Clients --read-only--allow-path <path>shares only that folder or note, and what is inside it. Repeat it for more. Without it, the whole vault is shared.--deny-path <path>hides a folder or note, even inside an allowed one.--read-onlyoffers the read tools only.--access commentadds the comment tools;--access write(the default) is everything the paths allow.- A hidden note answers exactly like a missing one. Paths through a symbolic link, case variants of a hidden folder and
.zennotesdo not exist for the client, and its errors never show where the vault lives. - Tools a client cannot use are not listed, and every tool now tells clients whether it only reads or can destroy.
The desktop's bundled MCP server takes the same flags with the same rules in ZenNotes 2.80.0, and both pass one shared test of what a scoped client sees. The README has the details.
What's fixed
Assistants stay inside the note folders. In a vault whose notes live at the root, zn mcp's note and folder tools treated ZenNotes' own .zennotes folder, the attachments folder and the archive as subfolders of the notes, so an assistant could move, read or delete them. Every create, move, rename and delete now resolves both ends the way the note listings do, and read_note reads Markdown notes only. zn's own commands follow the same rules.
New rows stay in view. When the view a database opens on shows picked rows (desktop 2.79.0 and later), the row zn base add makes now joins them, so it shows up in the app. The TUI's a does the same for the view on screen.
Changelog
- d4f65fc Feat(mcp): zn mcp can share part of a vault, read-only if asked (#21)
- eb3d11b Fix(base): a row zn base add makes joins the picks of the view it opens on
- 6873dd0 Fix(mcp): a scoped assistant cannot create notes through a link
- 39110a2 Fix(mcp): assistants stay inside the note folders
- dd5a39f Fix(mcp): the scope contract fixture checks out with LF on Windows
- cae76af Test(mcp): the scope contract finds the vault root in JSON on Windows
- f8bfb89 Test(mcp): zn mcp and the desktop's MCP server answer one scoped-access contract
Install
With Homebrew on macOS or Linux, run brew install zennotes/tap/zn, then zn tui.
Download the archive for your platform, unpack it, and put zn on your PATH.
With Go installed, go install github.com/ZenNotes/tui/cmd/zn@latest builds the same thing.