upnote-mcp
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@upnote-mcpfind notes about project launch"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
upnote-mcp
upnote-mcp is a read-only MCP server for reading local UpNote data from SQLite over stdio.
This is an unofficial project and is not affiliated with, endorsed by, or maintained by UpNote.
Features
search_notes: search notes by title, body text, or summarylist_recent_notes: list the most recently updated noteslist_notes_this_week: list notes updated during the current weeklist_notes_this_month: list notes updated during the current monthfind_notes: combine period, keyword, and tag filters in one callopen_note: open a note in the UpNote app by note IDget_note: fetch the full contents of a note by note IDopen_notebook: open a notebook in the UpNote app by notebook IDlist_notebooks: list notebooks with note countscreate_note: create a new note through UpNote's official URL schemelist_tags: list tagssearch_by_tag: list notes for a tag
This project is intentionally read-only. It does not write to the UpNote database. Safe note creation and open actions are performed through UpNote's official URL scheme instead of direct database writes.
Related MCP server: upnote-lens-mcp
Package Name
This package is prepared to be published as @bellx2/upnote-mcp.
Requirements
macOSbuninstalled on the machine that runs the serverUpNote desktop app installed
Default UpNote database path:
~/Library/Containers/com.getupnote.desktop/Data/Library/Application Support/UpNote/upnote.sqlite3If your database lives somewhere else, set UPNOTE_DB.
Install
bun installRun
bun run startFor normal use, prefer the published package:
bunx @bellx2/upnote-mcpor:
npx @bellx2/upnote-mcpnpx support still depends on bun being installed, because this package uses Bun-specific APIs such as bun:sqlite.
For development with file watching:
bun run devEnvironment Variables
UPNOTE_DB: absolute path toupnote.sqlite3
Example:
export UPNOTE_DB="$HOME/Library/Containers/com.getupnote.desktop/Data/Library/Application Support/UpNote/upnote.sqlite3"Permissions
On first run, your MCP client may show permission prompts for command execution and local file access.
This is expected because the server:
launches through
bunreads your local UpNote SQLite database
may open the UpNote app for
open_note,open_notebook, orcreate_note
If you deny these permissions, note search and retrieval will not work. After granting access, you may need to restart the MCP server in Cursor or Claude Desktop.
MCP Config Example
Recommended: published package
Cursor
{
"mcpServers": {
"upnote": {
"command": "bunx",
"args": ["@bellx2/upnote-mcp"]
}
}
}Claude Desktop
{
"mcpServers": {
"upnote": {
"command": "bunx",
"args": ["@bellx2/upnote-mcp"]
}
}
}Local development checkout
Cursor
{
"mcpServers": {
"upnote": {
"command": "/absolute/path/to/bun",
"args": ["run", "/absolute/path/to/upnote-mcp/src/index.ts"]
}
}
}Claude Desktop
{
"mcpServers": {
"upnote": {
"command": "/absolute/path/to/bun",
"args": ["run", "/absolute/path/to/upnote-mcp/src/index.ts"]
}
}
}Example Workflows
Try prompts like:
Search UpNote for "travel" and show me the first resultShow me my 10 most recent UpNote notesShow me this week's notesShow me this month's notesFind this week's AI notesFind this month's notes tagged meetingList my UpNote tags and open the note that matches the tag "meeting"Find notes about "launch", summarize them, and create a new UpNote note with the summaryList notebooks and open the one named "Research"
Tool Reference
search_notes
Input:
{
"query": "travel",
"limit": 5
}list_recent_notes
Input:
{
"limit": 10
}list_notes_this_week
Input:
{
"limit": 20
}list_notes_this_month
Input:
{
"limit": 20
}find_notes
Input:
{
"period": "this_week",
"query": "AI",
"limit": 10
}Or:
{
"period": "this_month",
"tag": "meeting",
"limit": 10
}get_note
Input:
{
"id": "019fd239-a98a-742b-b75b-cee66e7aa830"
}open_note
Input:
{
"id": "019fd239-a98a-742b-b75b-cee66e7aa830"
}open_notebook
Input:
{
"id": "3f03c742-1270-4d35-a5bc-c7d98580d6fc"
}list_notebooks
Input:
{}list_tags
Input:
{}search_by_tag
Input:
{
"tag": "meeting",
"limit": 5
}create_note
Input:
{
"title": "Meeting Notes",
"text": "# Summary\n\nDraft created by MCP.",
"markdown": true,
"newWindow": false
}Verification
bun run check
bun run smokeJapanese README
The previous Japanese README is available at README_ja.md.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseBqualityDmaintenanceMCP server for macOS Apple apps. Enables read/write access to Notes, Reminders, Calendar, Contacts, and Safari using SQLite and JXA, all running locally.28122MIT
- AlicenseBqualityCmaintenanceA hybrid MCP server that reads UpNote notes from the local SQLite database (returns actual text) and writes/opens notes via the upnote:// URL scheme, enabling search, retrieval, creation, and navigation of notes.105MIT
- Alicense-qualityCmaintenanceMCP server for AI agents to read, write, and organize notes in a local-first, human-in-the-loop note-taking app.01MIT
- Alicense-qualityDmaintenanceComprehensive Apple Notes MCP server for local macOS note management.2,673MIT
Related MCP Connectors
Search, read, and write your Apple Notes from ChatGPT/Claude via a local Mac agent + MCP relay.
MCP-native open-source Notion alternative: read & write pages, databases and kanban boards.
Serve a folder of Markdown notes as an MCP server: hybrid search, reading, and sourced answers.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/bellx2/upnote-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server