Skip to content
Als Markdown

Notebook

A Notebook is Mottainai's collaborative wiki and note-taking space. You organize knowledge as pages arranged in a tree structure — nest pages under other pages to create chapters, sections, or any hierarchy that suits your needs. Multiple people can edit the same page at the same time, with changes synced in real time.

How it works

Think of a notebook as a personal wiki. Each entry is a page with a title and rich text content. Pages can be nested under other pages to form a tree, much like folders and subfolders. Link between pages with [[Page Title]] wiki-links, and the notebook automatically tracks backlinks so you can navigate in both directions.

Getting started: Create a notebook from your dashboard. Once open, add pages and start writing. Drag pages in the sidebar to rearrange or nest them.

Pages

Pages are the building blocks of a notebook.

  • Create a page with the "+" button in the sidebar — a title is all you need
  • Add an optional emoji icon to visually distinguish pages in the tree
  • Nest pages by dragging them under a parent page — there is no depth limit
  • Reorder pages by dragging them up or down within the same level
  • Lock a page to prevent edits by other members (creator and admins can still edit)
  • Delete a page to remove it and all its child pages permanently

Rich text editing

Pages use a rich text editor (TipTap) with support for:

  • Headings, bold, italic, strikethrough, code
  • Bullet lists, numbered lists, task lists (checkboxes)
  • Tables, blockquotes, horizontal rules
  • Code blocks with syntax highlighting
  • Images and file uploads (drag-and-drop or paste)
  • Keyboard shortcuts for common formatting

Real-time collaboration

When multiple people open the same page, their changes merge automatically using Yjs CRDT technology. You can see who else is viewing a page via the presence indicators. No manual saving is needed — content syncs continuously.

Type [[ to insert a wiki-link to another page in the same notebook. Wiki-links make it easy to cross-reference related topics.

  • Wiki-link[[Page Title]] creates a clickable link to that page
  • Backlinks — each page shows which other pages link to it, so you can navigate the knowledge graph in both directions

Version history

Save snapshots of a page at important milestones. You can browse previous versions and restore any earlier snapshot to replace the current content.

Page templates

Save a page as a template to reuse its structure and content when creating new pages. Templates are available across all your notebooks.

Encryption

Individual pages can be encrypted with a passphrase. Encrypted pages are stored securely on the server — only someone with the passphrase can read the content. AI assistants and the CLI see an [encrypted] placeholder instead of the actual text.

Import and export

  • Markdown — export any page as a .md file, or import Markdown content when creating a page
  • Obsidian vault — import an entire Obsidian vault as a ZIP file; the folder structure becomes the page tree and [[wiki-links]] are preserved

Sharing

Share a notebook with teammates or family members via an invite link from the share panel.

RoleWhat they can do
OwnerFull control — manage members, delete the notebook
AdminManage settings and members, edit locked pages
MemberCreate and edit pages
GuestView only — cannot make changes

You can also link a contact group to add all group members at once.


For developers

The following sections are for programmatic access via CLI, AI assistants (MCP), or direct API. See MCP setup and CLI docs for how to connect.

CLI

bash
# Notebooks
mo notebook list
mo notebook create "Project Wiki"
mo notebook get NOTEBOOK_ID
mo notebook update NOTEBOOK_ID --name "Project Wiki (v2)"
mo notebook delete NOTEBOOK_ID --yes

# Pages
mo notebook page list --container NOTEBOOK_ID
mo notebook page get PAGE_ID --container NOTEBOOK_ID
mo notebook page create --container NOTEBOOK_ID --title "Getting Started" --content "# Welcome"
mo notebook page create --container NOTEBOOK_ID --title "Sub Page" --parent PARENT_PAGE_ID
mo notebook page update PAGE_ID --container NOTEBOOK_ID --title "New Title"
mo notebook page update PAGE_ID --container NOTEBOOK_ID --content "Updated content"
mo notebook page update PAGE_ID --container NOTEBOOK_ID --icon "📝"
mo notebook page move PAGE_ID --container NOTEBOOK_ID --parent NEW_PARENT_ID --position 0
mo notebook page delete PAGE_ID --container NOTEBOOK_ID --yes

MCP tools

  • list_notebooks — list all notebooks
  • create_notebook — create a new notebook
  • get_notebook — fetch a notebook with its settings
  • update_notebook / delete_notebook
  • list_notebook_pages — list all pages in a notebook with tree structure (path, depth, position)
  • get_notebook_page — fetch a page with its markdown content (encrypted pages return [encrypted])
  • create_notebook_page — create a page, optionally nested under a parent
  • update_notebook_page — update a page's title, content, or icon
  • delete_notebook_page — delete a page and all its child pages
  • move_notebook_page — move a page to a different parent or to root level

API endpoints

MethodPathDescription
GET/api/containers?type=notebookList notebooks
POST/api/containersCreate notebook (type=notebook)
GET/api/containers/{notebookId}Get notebook with settings
PUT/api/containers/{notebookId}Update notebook settings
DELETE/api/containers/{notebookId}Delete notebook
GET/api/containers/{notebookId}/pagesList all pages (flat, with tree metadata)
POST/api/containers/{notebookId}/pagesCreate page
GET/api/containers/{notebookId}/pages/{pageId}Get page with content
PUT/api/containers/{notebookId}/pages/{pageId}Update page
DELETE/api/containers/{notebookId}/pages/{pageId}Delete page and children
PUT/api/containers/{notebookId}/pages/{pageId}/contentUpdate page content only
POST/api/containers/{notebookId}/pages/{pageId}/moveMove/reparent page
POST/api/containers/{notebookId}/pages/reorderReorder pages
PUT/api/containers/{notebookId}/pages/{pageId}/linksUpdate wiki-links
GET/api/containers/{notebookId}/pages/{pageId}/backlinksGet backlinks for a page
GET/api/containers/{notebookId}/pages/{pageId}/versionsList page versions
POST/api/containers/{notebookId}/pages/{pageId}/versionsCreate page version snapshot
POST/api/containers/{notebookId}/pages/{pageId}/versions/{versionId}/restoreRestore a page version
POST/api/containers/{notebookId}/pages/{pageId}/uploadUpload image/file to page
DELETE/api/containers/{notebookId}/uploadsDelete uploaded file
GET/api/containers/{notebookId}/notebook/presenceGet page presence (who's viewing)
GET/api/notebook-templatesList page templates
POST/api/notebook-templatesCreate page template
DELETE/api/notebook-templates/{templateId}Delete page template
GET/ws/yjs?page={pageId}WebSocket for real-time editing

See the full API reference at /api/docs.