upnote-mcp
upnote-mcp
upnote-mcp 是一个只读的 MCP 服务器,用于通过 stdio 从 SQLite 读取本地 UpNote 数据。
这是一个非官方项目,与 UpNote 无关联、未经其认可,也不由其维护。
功能
search_notes:按标题、正文或摘要搜索笔记list_recent_notes:列出最近更新的笔记list_notes_this_week:列出本周更新的笔记list_notes_this_month:列出本月更新的笔记find_notes:在一次调用中组合时间段、关键词和标签筛选条件open_note:通过笔记 ID 在 UpNote 应用中打开笔记get_note:通过笔记 ID 获取笔记的完整内容open_notebook:通过笔记本 ID 在 UpNote 应用中打开笔记本list_notebooks:列出笔记本及其笔记数量create_note:通过 UpNote 官方 URL 方案创建新笔记list_tags:列出标签search_by_tag:列出某个标签下的笔记
本项目有意保持只读。它不会写入 UpNote 数据库。 安全的笔记创建和打开操作通过 UpNote 官方 URL 方案执行,而非直接写入数据库。
Related MCP server: upnote-lens-mcp
包名
此包准备以 @bellx2/upnote-mcp 发布。
系统要求
macOS运行服务器的机器上已安装
bun已安装 UpNote 桌面应用
默认 UpNote 数据库路径:
~/Library/Containers/com.getupnote.desktop/Data/Library/Application Support/UpNote/upnote.sqlite3如果数据库位于其他位置,请设置 UPNOTE_DB。
安装
bun install运行
bun run start对于正常使用,建议使用已发布的包:
bunx @bellx2/upnote-mcp或:
npx @bellx2/upnote-mcpnpx 支持仍依赖于已安装的 bun,因为此包使用了 Bun 特定的 API,例如 bun:sqlite。
用于带文件监视的开发:
bun run dev环境变量
UPNOTE_DB:upnote.sqlite3的绝对路径
示例:
export UPNOTE_DB="$HOME/Library/Containers/com.getupnote.desktop/Data/Library/Application Support/UpNote/upnote.sqlite3"权限
首次运行时,您的 MCP 客户端可能会显示命令执行和本地文件访问的权限提示。
这是预期的,因为服务器:
通过
bun启动读取您的本地 UpNote SQLite 数据库
可能为
open_note、open_notebook或create_note打开 UpNote 应用
如果您拒绝这些权限,笔记搜索和检索将无法工作。授予访问权限后,您可能需要重启 Cursor 或 Claude Desktop 中的 MCP 服务器。
MCP 配置示例
推荐:已发布的包
Cursor
{
"mcpServers": {
"upnote": {
"command": "bunx",
"args": ["@bellx2/upnote-mcp"]
}
}
}Claude Desktop
{
"mcpServers": {
"upnote": {
"command": "bunx",
"args": ["@bellx2/upnote-mcp"]
}
}
}本地开发签出
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"]
}
}
}示例工作流
尝试以下提示:
在 UpNote 中搜索“旅行”并显示第一个结果显示我最近的 10 条 UpNote 笔记显示本周的笔记显示本月的笔记查找本周的 AI 笔记查找本月标记为“会议”的笔记列出我的 UpNote 标签并打开匹配标签“会议”的笔记查找关于“发布”的笔记,总结它们,并用总结创建一条新的 UpNote 笔记列出笔记本并打开名为“研究”的笔记本
工具参考
search_notes
输入:
{
"query": "travel",
"limit": 5
}list_recent_notes
输入:
{
"limit": 10
}list_notes_this_week
输入:
{
"limit": 20
}list_notes_this_month
输入:
{
"limit": 20
}find_notes
输入:
{
"period": "this_week",
"query": "AI",
"limit": 10
}或:
{
"period": "this_month",
"tag": "meeting",
"limit": 10
}get_note
输入:
{
"id": "019fd239-a98a-742b-b75b-cee66e7aa830"
}open_note
输入:
{
"id": "019fd239-a98a-742b-b75b-cee66e7aa830"
}open_notebook
输入:
{
"id": "3f03c742-1270-4d35-a5bc-c7d98580d6fc"
}list_notebooks
输入:
{}list_tags
输入:
{}search_by_tag
输入:
{
"tag": "meeting",
"limit": 5
}create_note
输入:
{
"title": "Meeting Notes",
"text": "# Summary\n\nDraft created by MCP.",
"markdown": true,
"newWindow": false
}验证
bun run check
bun run smoke日文 README
之前的日文 README 可在 README_ja.md 中找到。
This server cannot be deployed
Maintenance
Related MCP Connectors
Search, read, and write your Apple Notes from ChatGPT/Claude via a local Mac agent + MCP relay.
Google Keep-style notes app with an MCP server for AI agents to read/write notes.
Markdown-based note-taking with a hosted MCP server. Your notes serve you and your AI.
Search your Glasp web and Kindle highlights, notes, and AI memories from any MCP client. Read-only.
Related MCP Servers
- AlicenseBqualityBmaintenanceMCP server for macOS Apple apps. Enables read/write access to Notes, Reminders, Calendar, Contacts, and Safari using SQLite and JXA, all running locally.2811 npm4MIT
- AlicenseBqualityFmaintenanceA 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.1039 PyPI6MIT
- AlicenseNot gradedqualityCmaintenanceMCP server for AI agents to read, write, and organize notes in a local-first, human-in-the-loop note-taking app.5 npm2MIT
- AlicenseAqualityDmaintenanceComprehensive Apple Notes MCP server for local macOS note management.144,383 npmMIT