MiloNotes Documentation
Complete reference for every feature in MiloNotes — your AI-powered second brain for notes, projects, freelancing, and more.
Overview #
MiloNotes is a privacy-focused, AI-powered notebook and personal assistant. It combines rich note-taking with project management tools, an AI assistant named Milo, and a suite of productivity features — all running inside your own isolated container.
Key capabilities at a glance:
- Rich Markdown editor with live preview, split view, and syntax highlighting
- AI assistant (Milo) with tool use, memory, RAG, and streaming responses
- Notebook organization with folders, tags, and full-text search
- Kanban boards for project and task management
- Knowledge Graph that visualizes connections between your notes
- Day View / Timeline with calendar navigation and AI summaries
- Freelancer tools — timeclock, expense tracking, invoicing
- Study Games — 10 game types generated from your notes by Milo
- Meeting Assistant with in-browser speech-to-text transcription
- REST API and MCP server for integrations
- Git Sync to back up notes as Markdown to a Git repository
Your data lives in an isolated database on your own private instance. No data is shared between users, and all AI processing uses models you configure.
Logging In #
Navigate to your MiloNotes instance URL in any modern browser. You will be presented with the login screen.
- Enter your email and password
- Click Sign In
- You'll be automatically signed in and redirected to the dashboard
If you are using the REST API or MCP integration, you can authenticate with an API key instead. See API Key Management.
The Dashboard & Timeline #
After logging in you land on the Dashboard, which serves as your daily command center. The dashboard is built around the Day View timeline, showing:
- Today's date and a calendar picker for navigating to other days
- Day entries you have written for that date
- Any notes with timestamps that fall on the selected day
- Activity summary (notes created, edited, time tracked)
- Quick access to your recent notebooks and pinned items
The sidebar provides navigation to every major feature: Notes, Kanban, Goals, Memo Wall, Pomodoro, Study Games, and more. Feature visibility is controlled through Feature Toggles in Settings.
Navigating the Interface #
MiloNotes uses a familiar layout with a collapsible sidebar on the left, the main content area in the center, and optional panels (AI chat, transcript) on the right.
Sidebar
The primary sidebar contains links to all enabled features. Click any item to navigate. The sidebar collapses to icons on smaller screens and can be toggled with the hamburger button.
Breadcrumbs
When viewing notes, a VSCode-style breadcrumb bar appears at the top showing your current location in the hierarchy:
Notebook > Folder > Subfolder > Note Title
Each segment is clickable, allowing quick navigation to any parent container.
Keyboard Shortcuts
| Shortcut | Action |
|---|---|
| Ctrl + K | Open command palette / search |
| Ctrl + N | Create new note |
| Ctrl + S | Save current note |
| Ctrl + Shift + P | Toggle preview mode |
| Ctrl + \\ | Toggle split view |
| Ctrl + Shift + F | Open full-text search |
| Esc | Close modal / panel |
Creating & Editing Notes #
Notes are the core unit of MiloNotes. Each note is a Markdown document with optional metadata (tags, timestamps, attachments).
Creating a Note
- Click the + button in the sidebar or press Ctrl + N
- Choose a destination notebook (or leave it orphaned)
- Begin typing in the editor
- Notes auto-save as you type
Editor Modes
The note editor supports three modes, toggled via the toolbar:
- Edit — Full-featured code editor with syntax highlighting, line numbers, and Vim/Emacs keybindings (optional)
- Preview — Rendered Markdown with code blocks, tables, Mermaid diagrams, LaTeX math
- Split — Side-by-side edit and preview (Ctrl + \\)
Markdown Support #
MiloNotes supports standard GitHub-Flavored Markdown plus extensions:
| Feature | Syntax |
|---|---|
| Headings | # H1 through ###### H6 |
| Bold / Italic | **bold** / *italic* |
| Code blocks | Triple backticks with optional language tag |
| Tables | Pipe-delimited GFM tables |
| Task lists | - [ ] / - [x] |
| Mermaid diagrams | ```mermaid fenced blocks |
| LaTeX math | $inline$ and $$block$$ |
| Links & Images | Standard Markdown syntax |
| Footnotes | [^1] reference style |
Notebook Organization #
Notebooks are the top-level containers for notes. Each notebook has:
- A name and optional emoji icon
- A color for visual identification in the sidebar
- Zero or more folders for hierarchical organization
- A flat list of notes that belong directly to the notebook
Create a notebook from the sidebar by clicking + New Notebook, or ask Milo: "Create a notebook called Research".
Folders & Sections #
Folders provide hierarchical organization within a notebook. Folders can be nested to any depth.
- Right-click a notebook or folder to create a subfolder
- Drag notes between folders
- Drag folders to reorder or nest them
- Folders are displayed in the sidebar tree and in the breadcrumb navigation
Moving Notes #
You can move notes between notebooks and folders in two ways:
- Drag-and-drop — Drag a note from the sidebar to another notebook or folder
- Move dialog — Right-click a note and select "Move to..." to pick a destination from a tree view
Orphaned Notes #
Notes created without selecting a notebook appear in the Orphaned Notes section. This is useful for quick capture. You can later move them to a notebook via the move dialog or drag-and-drop.
Note Metadata #
Each note stores the following metadata:
- Title — Extracted from the first heading or set manually
- Created date and updated date (Unix ms timestamps)
- Optional date — Assign a specific date to make the note appear in the Day View timeline
- Optional time — Assign a timestamp for timeline ordering
- Tags — Categorize with tags for cross-cutting organization
- UUID — Unique identifier used in API calls and deep links
Tags & Tag Suggestions #
Tags provide a flat, cross-cutting taxonomy independent of the notebook/folder hierarchy.
- Add tags to any note via the metadata panel
- Browse all tags from the Tags section in the sidebar
- Click a tag to see all notes associated with it
- Milo can suggest tags based on note content when you ask
Tags are stored as a many-to-many relationship. A note can have any number of tags, and a tag can be associated with any number of notes.
Full-Text Search #
MiloNotes uses a built-in full-text search index for fast search across all your notes.
- Open search with Ctrl + Shift + F or the search icon
- Results are ranked by relevance and displayed with highlighted matches
- Search indexes note titles and content
- The FTS index is kept in sync automatically via database triggers
You can also search by title only from the quick-open palette (Ctrl + K). This is faster for navigating when you know the note name.
Breadcrumb Navigation #
Inspired by VSCode, the breadcrumb bar at the top of the editor shows your current position within the notebook hierarchy. Each segment (notebook, folder, note) is clickable and opens a dropdown listing siblings, making it easy to navigate laterally without the sidebar.
Note Templates #
Note templates let you create pre-filled notes for recurring patterns (meeting notes, daily journals, project specs). Templates are notes flagged as templates and can be inserted via the "New from template" option when creating a note.
Attachments & Images #
Attach files and images to any note:
- Drag-and-drop files onto the editor area
- Paste images from your clipboard directly into the editor
- Upload button in the toolbar for file picker
Attachments are stored in the per-user attachments/ directory. Images are automatically inserted as Markdown image references. Other files appear as download links.
Chat Interface #
Milo is the built-in AI assistant. Open the chat panel from the sidebar or by clicking the Milo icon. The chat interface features:
- Streaming responses via Server-Sent Events (SSE) for real-time output
- Markdown rendering in responses (code blocks, tables, lists)
- Conversation history preserved across sessions
- Multiple conversations — create, rename, and delete chat threads
- Context awareness — Milo can read the currently open note when you ask
Available AI Tools #
Milo has access to a tool loop that lets it take actions inside MiloNotes on your behalf. Available tools include:
| Tool | Description |
|---|---|
create_note | Create a new note with specified title, content, and notebook |
create_notebook | Create a new notebook |
create_folder | Create a folder inside a notebook |
create_kanban_board | Set up a kanban board with columns |
create_tag | Create a new tag |
search_notes | Full-text search across all notes (used for RAG) |
read_note | Read a specific note by ID |
list_notebooks | List all notebooks |
list_notes | List notes in a notebook or folder |
create_goal | Create a goal with optional milestones |
create_memo | Create a memo on the wall |
recall_memory | Recall something from Milo's memory system |
save_memory | Save a fact or preference to memory |
Milo executes tools in a loop — it can chain multiple tool calls in a single response. For example: "Create a notebook called Work, add a folder called Projects, and create a note in it with a project template."
Memory System #
Milo has a persistent memory system that stores facts, preferences, and context between conversations.
- Automatic memory — Milo can save relevant facts during conversation
- Manual memory — Tell Milo to remember something: "Remember that my team meeting is every Tuesday at 10am"
- Memory recall — Milo automatically retrieves relevant memories when answering
- Memory management — View, edit, and delete memories from the Memories section
- Memory consolidation — Milo can merge and deduplicate memories
RAG (Retrieval-Augmented Generation) #
RAG allows Milo to search your notes and use them as context when answering questions. This is powered by the built-in full-text search index.
- When you ask Milo a question, it can search your notes for relevant content
- Matched note excerpts are injected into the context window
- Milo cites which notes it used when answering
- This works automatically — no configuration needed
Example: "What did I write about the Q3 marketing strategy?" — Milo will search your notes, find matches, and synthesize an answer.
Summarize, Rewrite & Key Points #
Three one-click AI actions are available from the note toolbar or right-click menu:
- Summarize — Generates a concise summary of the current note
- Rewrite — Rewrites the note content for clarity and style
- Key Points — Extracts the main points as a bulleted list
Results appear in a panel below the editor. You can copy the output, insert it into the note, or discard it.
Learn from Files #
The "Learn" feature lets you upload documents (PDF, text, Markdown) and have Milo process them into your knowledge base. The content is indexed and becomes searchable via RAG.
AI Providers (BYOK) #
MiloNotes supports Bring Your Own Key (BYOK) for AI providers. Configure your own AI backend:
- Navigate to Settings > AI Providers
- Add a provider with its API base URL and your API key
- Select the model you want to use
- API keys are stored hashed — they are never exposed in plaintext after initial entry
When using BYOK, your data is sent to the configured AI provider. Make sure you trust the provider and understand their data retention policies.
Knowledge Graph — How It Works #
The Knowledge Graph provides a visual map of connections between your notes. Connections are derived from:
- Shared tags — Notes with common tags are linked
- Internal links — Notes that reference other notes by title or ID
- AI-detected relationships — Milo can identify semantic connections
Visualizing Note Connections #
The graph is rendered as an interactive force-directed layout:
- Zoom and pan to navigate the graph
- Click a node to open the corresponding note
- Hover over a node to highlight its connections
- Nodes are colored by notebook, sized by connection count
- Edge thickness indicates relationship strength
Daily Entries #
Day View entries are standalone text blocks tied to a specific date. They are different from notes — think of them as journal entries or daily logs.
- Write one or more entries per day
- Entries support Markdown formatting
- Each entry has a timestamp showing when it was created
Calendar Navigation #
The calendar widget lets you jump to any date. Days with entries or activity are indicated with a dot. Click a date to view that day's timeline.
Activity Tracking #
MiloNotes tracks your activity automatically:
- Notes created and edited per day
- Time spent in the editor (activity sessions)
- Pomodoro sessions completed
- Timeclock entries
Activity data is displayed as summaries in the Day View and can be queried via the API.
AI-Generated Daily Summaries #
Milo can generate a summary of your day, pulling from your entries, notes, and activity data. Summaries appear at the top of the Day View and highlight key work done, decisions made, and items to follow up on.
Timestamped Notes in Timeline #
Notes with a date and optional time in their metadata appear inline in the Day View timeline, interspersed with your day entries. This creates a unified chronological view of everything that happened on a given day.
Creating Boards & Columns #
Kanban boards provide a visual project management interface. Each board consists of columns, and each column contains cards.
- Create a board from the Kanban section or ask Milo
- Add columns by clicking + Add Column
- Rename columns by clicking the column title
- Reorder columns by dragging the column header
Cards & Card Management #
Cards represent individual tasks or items. Each card has:
- Title — Short description of the task
- Description — Optional Markdown body
- Position — Order within the column (auto-managed by drag-and-drop)
Drag-and-Drop #
Cards can be dragged between columns and reordered within a column. The position updates are persisted immediately. Drag a card to a different column to change its status (e.g., from "To Do" to "In Progress").
Creating Goals #
Goals track longer-term objectives with optional due dates and milestones.
- Create goals from the Goals section or via Milo
- Set a title, description, and optional due date
- Goals are displayed with a progress bar based on milestone completion
Milestones & Progress #
Break goals into milestones — discrete checkpoints that track progress:
- Add milestones to any goal
- Mark milestones as complete to update the progress bar
- Milestones have a title and optional due date
- Progress percentage = (completed milestones / total milestones) × 100
Memo Wall — Quick Reminders #
The Memo Wall is a collection of sticky-note-style cards for quick reminders and short-lived information.
- Click + New Memo to create a memo
- Memos have a title and content
- Displayed as a grid of colored cards
- Delete memos when they are no longer needed
- Milo can create memos on your behalf: "Remind me to call the dentist"
Focus Sessions #
The built-in Pomodoro timer helps you maintain focused work sessions with structured breaks.
- Focus interval — Default 25 minutes (configurable)
- Short break — Default 5 minutes
- Long break — Default 15 minutes (after 4 focus sessions)
- Optional: Link a note to the Pomodoro session to track what you worked on
- Browser notifications when a session ends
Session History #
All Pomodoro sessions are logged with start time, duration, and the linked note (if any). View your history to track productivity patterns over time. Sessions also appear in the Day View activity summary.
Saving Articles from URLs #
The Web Snipper lets you save articles from any URL for offline reading and reference.
- Click + Save URL in the Web Snipper section
- Paste the URL and click Save
- MiloNotes extracts the article content automatically, stripping ads and navigation
- The title, author, excerpt, and main content are saved
Reading View #
Saved articles are displayed in a clean, distraction-free reading view. The original formatting is preserved while removing clutter. You can adjust font size and toggle between light and dark reading themes.
Article Management #
Organize saved articles with:
- Archive — Move read articles to the archive
- Favorite — Star important articles for quick access
- Delete — Remove articles you no longer need
- Search — Full-text search across saved articles
Converting Snippets to Notes #
Convert any saved article to a note to incorporate it into your notebook structure. The article content becomes the note body (in Markdown), and the original URL is preserved in the metadata.
Organizations (Clients) #
Organizations represent your clients or companies. They serve as the anchor for all freelancer tools.
- Create organizations with name, address, and contact details
- Link organizations to notebooks (see below)
- All timeclock entries, expenses, and invoices are scoped to an organization
Timeclock #
Track billable and non-billable time with the timeclock:
- Clock in — Start tracking time for an organization
- Clock out — Stop the timer and save the entry
- Manual entries — Add entries with custom start/end times
- Descriptions — Add a description to each entry for context
- Reports — View time totals by organization, date range, and category
- CSV export — Export timeclock data for external billing systems
Expense Tracker #
Track project-related expenses:
- Add expenses with amount, category, date, and description
- Mark expenses as billable or non-billable
- Categorize by type (software, travel, supplies, etc.)
- Filter and total expenses by organization and date range
Invoice Generator #
Generate professional invoices from your tracked time and expenses:
- Create an invoice for an organization
- Import from timeclock — Automatically populate line items from time entries
- Import from expenses — Add billable expenses as line items
- Add custom line items manually (description, quantity, rate)
- Set payment terms, due date, and notes
- Printable preview — Clean, professional layout ready for PDF export
- Invoice numbering is auto-incremented
Linking Organizations to Notebooks #
Associate a notebook with an organization to keep client notes and project documentation together. When viewing an organization, you can quickly jump to its linked notebook and vice versa.
Study Game Types #
Study Games turn your notes into interactive learning experiences. Milo generates questions and challenges based on your note content. There are 10 game types:
| Game | Description |
|---|---|
| Trivia | Multiple-choice questions generated from your notes |
| Flashcard Blitz | Timed flashcard drill — flip cards and rate your recall |
| Fill in the Blank | Key terms removed from sentences — type the missing word |
| True/False | Statements from your notes — decide if they are accurate |
| Spot the Wrong | Intentionally altered facts — identify what was changed |
| Brain Dump | Free-form recall — write everything you know about a topic, Milo scores it |
| Synapse | Match related concepts from different notes |
| Chain Reaction | Order events, steps, or concepts in the correct sequence |
| Last One Standing | Elimination rounds — answer correctly to survive |
| Fuse | Combine two separate concepts to explain their connection |
Playing Against Milo #
When you start a study game, Milo generates questions from one or more selected notes. You play interactively — Milo presents questions, evaluates your answers, and provides explanations for incorrect responses.
- Select one or more notes as source material
- Choose a game type
- Set the number of rounds or questions
- Play the game — Milo evaluates answers in real time
Session History & Statistics #
Each game session is logged with your score, time taken, and accuracy. View your statistics to identify weak areas and track improvement over time.
In-Browser Transcription #
The Meeting Assistant provides real-time speech-to-text transcription directly in your browser. No audio leaves your device — transcription runs entirely locally.
Audio Capture #
Two audio capture modes are supported:
- Microphone — Captures your voice and any in-room audio
- System audio — Captures audio from any application (requires browser tab/screen share). Useful for transcribing virtual meetings on Zoom, Teams, etc.
You can use both simultaneously for full meeting coverage.
Real-Time Transcript #
As the meeting proceeds, the transcript appears in a sidebar panel in real time. Each segment includes a timestamp. The transcript is scrollable and searchable.
AI Copilot Note-Taking #
Milo can act as a meeting copilot: the transcript is available in the chat context, so you can ask Milo to summarize the meeting, extract action items, or answer questions about what was discussed — all while the meeting is still happening.
Connecting a Repository #
Git Sync exports your notes as Markdown files to a Git repository, providing version history and an external backup.
- Navigate to Settings > Git Sync
- Enter the repository URL (HTTPS or SSH)
- Provide authentication credentials (token or SSH key)
- Choose the branch (default:
main)
Auto-Sync Configuration #
Once connected, you can enable auto-sync:
- On save — Sync every time a note is saved
- Interval — Sync on a timer (e.g., every 30 minutes)
- Manual — Sync only when you click the sync button
Export Format #
Notes are exported as .md files with YAML front matter containing metadata:
markdown---
title: "Project Kickoff Notes"
notebook: "Work"
folder: "Projects/Alpha"
tags: [meeting, planning]
created: 2025-01-15T10:30:00Z
updated: 2025-01-15T14:22:00Z
---
# Project Kickoff Notes
Meeting notes go here...
The directory structure mirrors your notebook/folder hierarchy.
Feature Toggles #
Not every user needs every feature. Feature toggles let you show or hide entire sections of the interface:
- Navigate to Settings > Features
- Toggle individual features on or off
- Disabled features are hidden from the sidebar and inaccessible via the UI
- Data is preserved — re-enabling a feature restores your content
Available toggles: Kanban, Goals, Memo Wall, Pomodoro, Study Games, Web Snipper, Freelancer Tools, Knowledge Graph, Meeting Assistant, Git Sync.
Theme (Light/Dark) #
MiloNotes supports both light and dark themes. Switch themes from Settings > Appearance. The theme preference is stored per-user and persists across sessions.
User Profile #
Manage your account from Settings > Profile:
- Update your display name
- Change your email address
- Change your password
AI Usage & Quotas #
The Settings > AI page shows your AI usage statistics:
- Total requests made this billing period
- Token usage (input and output)
- Remaining quota (if applicable)
- Usage breakdown by feature (chat, summarize, study games, etc.)
REST API Overview #
MiloNotes exposes a comprehensive REST API under the /api/ prefix. All endpoints return JSON with camelCase keys. Timestamps are Unix milliseconds.
The API uses the same endpoints that the web interface uses. Anything you can do in the UI, you can do via the API.
Base URL
https://your-instance.milonotes.com/api/
Response Format
Successful responses return JSON data directly. Error responses use the format:
json{
"error": "Description of what went wrong"
}
API Key Management #
Create and manage API keys from Settings > API Keys:
- Click + Create API Key
- Give it a descriptive name (e.g., "Obsidian sync", "CLI tool")
- The key is displayed once — copy and store it securely
- Keys are stored as SHA256 hashes (the plaintext is never saved)
- Revoke keys at any time by deleting them
Include the key in requests via the Authorization header:
httpAuthorization: Bearer your-api-key-here
API Endpoints Reference #
Authentication
| Method | Endpoint | Description |
|---|---|---|
| POST | /api/auth/login | Login with email/password, returns JWT |
| GET | /api/auth/info | Get instance info (no auth required) |
Notes
| Method | Endpoint | Description |
|---|---|---|
| GET | /api/notes | List all notes |
| POST | /api/notes | Create a note |
| GET | /api/notes/:id | Get a note by ID |
| PUT | /api/notes/:id | Update a note |
| DELETE | /api/notes/:id | Delete a note |
| GET | /api/notes/search-title | Search notes by title |
Notebooks
| Method | Endpoint | Description |
|---|---|---|
| GET | /api/notebooks | List all notebooks |
| POST | /api/notebooks | Create a notebook |
| GET | /api/notebooks/:id | Get a notebook by ID |
| PUT | /api/notebooks/:id | Update a notebook |
| DELETE | /api/notebooks/:id | Delete a notebook |
Folders
| Method | Endpoint | Description |
|---|---|---|
| GET | /api/folders | List folders for a notebook |
| POST | /api/folders | Create a folder |
| PUT | /api/folders/:id | Update a folder |
| DELETE | /api/folders/:id | Delete a folder |
Tags
| Method | Endpoint | Description |
|---|---|---|
| GET | /api/tags | List all tags |
| POST | /api/tags | Create a tag |
| DELETE | /api/tags/:id | Delete a tag |
| POST | /api/notes/:id/tags | Associate tags with a note |
Search
| Method | Endpoint | Description |
|---|---|---|
| GET | /api/search?q=query | Full-text search across all notes |
Kanban
| Method | Endpoint | Description |
|---|---|---|
| GET | /api/kanban/boards | List boards |
| POST | /api/kanban/boards | Create a board |
| GET | /api/kanban/boards/:id | Get board with columns and cards |
| POST | /api/kanban/columns | Create a column |
| POST | /api/kanban/cards | Create a card |
| PATCH | /api/kanban/cards/:id/move | Move a card to another column/position |
Day View
| Method | Endpoint | Description |
|---|---|---|
| GET | /api/day-view/entries?date=YYYY-MM-DD | Get entries for a date |
| POST | /api/day-view/entries | Create a day entry |
| GET | /api/day-view/calendar | Get calendar data (dates with entries) |
| GET | /api/day-view/summary?date=YYYY-MM-DD | Get AI-generated daily summary |
| GET | /api/day-view/activity | Get activity data |
Goals
| Method | Endpoint | Description |
|---|---|---|
| GET | /api/goals | List all goals |
| POST | /api/goals | Create a goal |
| PUT | /api/goals/:id | Update a goal |
| DELETE | /api/goals/:id | Delete a goal |
| POST | /api/goals/:id/milestones | Add a milestone |
| PATCH | /api/goals/:goalId/milestones/:id | Update milestone (toggle complete) |
Memos
| Method | Endpoint | Description |
|---|---|---|
| GET | /api/memos | List all memos |
| POST | /api/memos | Create a memo |
| PUT | /api/memos/:id | Update a memo |
| DELETE | /api/memos/:id | Delete a memo |
Timeclock
| Method | Endpoint | Description |
|---|---|---|
| GET | /api/timeclock/orgs | List organizations |
| POST | /api/timeclock/clock-in | Clock in for an organization |
| POST | /api/timeclock/clock-out | Clock out |
| GET | /api/timeclock/entries | List time entries |
| GET | /api/timeclock/reports | Get time reports |
Chat / AI
| Method | Endpoint | Description |
|---|---|---|
| POST | /api/ai/chat | Send a message (SSE streaming response) |
| POST | /api/ai/summarize | Summarize text |
| POST | /api/ai/rewrite | Rewrite text |
| POST | /api/ai/keypoints | Extract key points |
| POST | /api/ai/learn | Index content for RAG |
| POST | /api/ai/index | Reindex notes for search |
Chat History
| Method | Endpoint | Description |
|---|---|---|
| GET | /api/chat-history | List conversations |
| POST | /api/chat-history | Create a conversation |
| GET | /api/chat-history/:id | Get conversation with messages |
| DELETE | /api/chat-history/:id | Delete a conversation |
Memories
| Method | Endpoint | Description |
|---|---|---|
| GET | /api/memories | List all memories |
| POST | /api/memories | Create a memory |
| PUT | /api/memories/:id | Update a memory |
| DELETE | /api/memories/:id | Delete a memory |
| POST | /api/memories/import | Bulk import memories |
| POST | /api/memories/consolidate | AI-powered memory deduplication |
Study Games
| Method | Endpoint | Description |
|---|---|---|
| POST | /api/study-games/generate | Generate a game from notes |
| GET | /api/study-games/sessions | List game sessions |
| GET | /api/study-games/stats | Get game statistics |
Export
| Method | Endpoint | Description |
|---|---|---|
| GET | /api/export/markdown | Export all notes as Markdown (ZIP) |
| GET | /api/export/json | Export all data as JSON |
MCP Integration #
MiloNotes includes a Model Context Protocol (MCP) server, allowing external AI tools (Claude Desktop, Cursor, etc.) to interact with your notes.
Setup
Configure your MCP client to connect to your MiloNotes instance:
json{
"mcpServers": {
"milonotes": {
"url": "https://your-instance.milonotes.com/mcp",
"headers": {
"Authorization": "Bearer your-api-key"
}
}
}
}
Available MCP Tools
The MCP server exposes the following tools to external AI clients:
search_notes— Full-text searchread_note— Read a note's contentcreate_note— Create a new noteupdate_note— Update an existing notelist_notebooks— List notebookslist_notes— List notes in a notebookcreate_notebook— Create a notebookcreate_memo— Create a memolist_tags— List tags
Authentication #
Two authentication methods are supported:
JWT Tokens
Used by the web interface. Obtained via POST /api/auth/login:
bashcurl -X POST https://your-instance.milonotes.com/api/auth/login \
-H "Content-Type: application/json" \
-d '{"email": "you@@example.com", "password": "your-password"}'
Response:
json{
"token": "eyJhbGciOi...",
"user": {
"id": "uuid",
"email": "you@@example.com",
"name": "Your Name"
}
}
JWT tokens expire after 7 days. Include in subsequent requests:
httpAuthorization: Bearer eyJhbGciOi...
API Keys
API keys do not expire (unless revoked) and are suitable for automated integrations. Create them from Settings or the admin API. Use the same Authorization: Bearer header format.
Markdown Export #
Export all your notes as a ZIP archive of Markdown files. The archive preserves your notebook and folder structure as directories. Each file includes YAML front matter with metadata (title, tags, dates).
- Navigate to Settings > Export
- Click Export as Markdown
- A ZIP file is downloaded containing all notes
JSON Export #
Export all data (notes, notebooks, folders, tags, settings, kanban boards, goals, memos, memories, etc.) as a single JSON file. Useful for full backups or migration.
- Navigate to Settings > Export
- Click Export as JSON
- The JSON includes all user data with UUIDs intact