It exposes the part of Trilium that makes it more than a notes app: an agent can build a structured collection — rows under a parent, tagged into columns — and then query it back with Trilium's own search.
A single static Go binary that speaks MCP to your client over stdio and TriliumNext's ETAPI to your notes over HTTP. It creates, updates, moves, clones and deletes notes, manages labels and relations, and passes Trilium's full search syntax through untouched.
- A note created under a parent with labels in one call, or many created together
- A note's metadata fetched, optionally with its body
- A note and its descendants fetched as a nested tree, to a depth you set
- Partial updates that leave the fields you omit alone
- Text appended to a note body with a separator you choose
- Notes deleted singly or in bulk, with partial failures not stopping the rest
- A note re-parented, cloned under a second parent, or un-cloned by removing one link
- Full Trilium search, including label, relation, regex title matching and ancestor scoping
- Labels attached as columns, relations attached as foreign keys, and attributes listed or removed
A running TriliumNext instance reachable over HTTP or HTTPS with ETAPI available. The binary is static with no runtime dependencies.
One command plus a key — go install github.com/OVDEN13/trilium-mcp@latest, then supply credentials
