Notes
Fields marked * are required. Updates keep every field they are not given. An AI app can ask vritto_describe for the same details, filtered to what its connection may use.
Notenote
A note, meeting note, idea, decision, or reference.
notes_getNoteFindthrough vritto_findFetch one note by its ID. Requires a real noteId; use notes_queryNotes first when the ID is unknown.
| Field | Type | Description |
|---|---|---|
| noteId* | string | Note ID. |
notes_queryNotesFindthrough vritto_findSearch notes by free text, kind, notebook, tag, or linked module record. Results are ordered by most recently updated. Supports an updated-date range, ALWAYS pass updatedFrom/updatedTo when the question concerns a period (a year, a month, 'recently'). Rows are compact summaries; pass detail 'full' or fetch one note with notes_getNote when the user needs the full body.
| Field | Type | Description |
|---|---|---|
| query | string | Search query. |
| kind | one of note, daily, meeting, decision, idea, reference | |
| notebook | string | Notebook filter. |
| tag | string | Exact tag filter. |
| updatedFrom | string | Only notes updated ON or AFTER this YYYY-MM-DD date. |
| updatedTo | string | Only notes updated ON or BEFORE this YYYY-MM-DD date. |
| linkedModuleId | string | Only notes linked to records of this module. |
| linkedEntityId | string | Only notes linked to this record ID. |
| notebookId | string | Only notes filed in this notebook. |
| view | one of active, archived, trash | Which slice to read: "active" (default), "archived", or "trash" (notes deleted in the last 30 days). |
| includeArchived | boolean | Include archived notes alongside active ones; default false. |
| detail | one of summary, full | Row shape: "summary" (default, id/title/excerpt/tags/updatedAt/checklistCount) or "full" (every field incl. the complete body and checklist). |
| limit | integer | Max records to return (default 50 in summary mode). |
notes_createNoteCreatethrough vritto_createCreate a note for durable context, meeting notes, ideas, decisions, references, or freeform capture. Preserve title, body (HTML or plain text), kind, notebook, tags, checklist, and linked records from the user's words. Example: title 'Meeting notes', body 'Decisions...', kind 'meeting', tags ['work'].
| Field | Type | Description |
|---|---|---|
| note* | object | Note fields; title is required. |
| note.title* | string | Note title. |
| note.body | string | Note body as HTML or plain text. Write ordinary prose markup (p, h1-h3, ul/ol, blockquote, pre/code, tables, and task lists via <ul data-type="taskList">); it is converted to the note's rich document server-side. |
| note.kind | one of note, daily, meeting, decision, idea, reference | Note kind (default 'note'). |
| note.status | one of active, archived, deleted | Note lifecycle status (default 'active'). Set 'archived' to archive a note without deleting it. |
| note.notebook | string | Notebook or collection name. |
| note.tags | list of string | Tags. |
| note.linkedRefs | list of object | Linked module records this note references. |
| note.sourceRefs | list of object | Module records this note was captured from (its provenance). |
| note.checklist | list of object | Checklist edits addressed BY ID: pass {id, done} to tick or untick an existing item, {id, title} to rename it. Read the ids from getNote or queryNotes first. Items live inside the note body, so add new ones by writing the body, not here. |
| note.notebookId | string | Notebook ID; prefer this over the name when known. |
| note.pinned | boolean | Pinned note. |
| note.favorite | boolean | Favorite note. |
| note.aiContextEnabled | boolean | Available to SahAI context retrieval (default true). |
| note.idempotencyKey | string | Stable dedupe key. |
Example input
{
"note": {
"title": "Kitchen remodel ideas",
"body": "Open shelving, warmer lighting, move the fridge.",
"kind": "idea",
"tags": [
"home"
]
}
}notes_patchNoteUpdatethrough vritto_updateApply a partial update to one note; only the fields present in patch change. Requires noteId; pass expectedRevision to guard against concurrent edits.
| Field | Type | Description |
|---|---|---|
| noteId* | string | Note ID. |
| patch* | object | Fields to change. |
| patch.title | string | Note title. |
| patch.body | string | Note body as HTML or plain text. Write ordinary prose markup (p, h1-h3, ul/ol, blockquote, pre/code, tables, and task lists via <ul data-type="taskList">); it is converted to the note's rich document server-side. |
| patch.kind | one of note, daily, meeting, decision, idea, reference | Note kind (default 'note'). |
| patch.status | one of active, archived, deleted | Note lifecycle status (default 'active'). Set 'archived' to archive a note without deleting it. |
| patch.notebook | string | Notebook or collection name. |
| patch.tags | list of string | Tags. |
| patch.linkedRefs | list of object | Linked module records this note references. |
| patch.sourceRefs | list of object | Module records this note was captured from (its provenance). |
| patch.checklist | list of object | Checklist edits addressed BY ID: pass {id, done} to tick or untick an existing item, {id, title} to rename it. Read the ids from getNote or queryNotes first. Items live inside the note body, so add new ones by writing the body, not here. |
| patch.notebookId | string | Notebook ID; prefer this over the name when known. |
| patch.pinned | boolean | Pinned note. |
| patch.favorite | boolean | Favorite note. |
| patch.aiContextEnabled | boolean | Available to SahAI context retrieval (default true). |
| patch.idempotencyKey | string | Stable dedupe key. |
| expectedRevision | integer | Revision guard from the last read. |
Example input
{
"noteId": "note_kitchen",
"patch": {
"pinned": true
}
}notes_restoreNoteUpdatethrough vritto_updateBring a note back from Trash (or from archived) and make it active again.
| Field | Type | Description |
|---|---|---|
| noteId* | string | Note ID. |
notes_deleteNoteDeletethrough vritto_deleteMove one note to Trash, where it stays recoverable for 30 days. Only for explicit deletion requests.
Note: Moves the note to trash, recoverable for 30 days.
| Field | Type | Description |
|---|---|---|
| noteId* | string | Note ID. |
| expectedRevision | integer | Revision guard from the last read. |
Notebooknotebook
A notebook that files notes.
notes_queryNotebooksFindthrough vritto_findList the user's notebooks with their note counts. Use this to resolve a notebook name to an ID before filing a note.
| Field | Type | Description |
|---|---|---|
| includeArchived | boolean | Include archived notebooks; default false. |
notes_createNotebookCreatethrough vritto_createCreate a notebook. Creating one that already exists returns the existing notebook rather than a duplicate.
| Field | Type | Description |
|---|---|---|
| notebook* | object | Notebook fields; name is required. |
| notebook.name* | string | Notebook name. |
| notebook.accent | integer | Accent colour index. |
Example input
{
"notebook": {
"name": "Home"
}
}notes_patchNotebookUpdatethrough vritto_updateRename a notebook or change its accent colour. Renaming also restamps the label on every note filed in it.
| Field | Type | Description |
|---|---|---|
| notebookId* | string | Notebook ID. |
| patch* | object | Fields to change. |
| patch.name | string | |
| patch.accent | integer |
notes_deleteNotebookDeletethrough vritto_deleteDelete a notebook and move its notes elsewhere (Inbox by default). The notes themselves are never deleted.
| Field | Type | Description |
|---|---|---|
| notebookId* | string | Notebook ID. |
| moveToNotebookId | string | Where its notes should go; defaults to Inbox. |
Kept in the Vritto app
notes_updateNote: Replaces a whole record and clears omitted fields; the merge operation is on MCP instead.