Apple Notes 读取服务

一个用于读取和搜索本地Apple Notes数据库的服务,可将笔记内容提供给Claude Desktop使用。

  • by sirmews
  • Python
  • 本地部署
  • 131 星标
  • 更新于
在 GitHub 查看 sirmews/apple-notes-mcp

使用说明

适用于Claude Desktop的Apple Notes模型上下文协议服务器。

读取您当地的Apple Notes数据库并将其提供给Claude Desktop。

现在克劳德可以搜索你最被遗忘的笔记,了解更多关于你的信息。

注意可能会出错。

组件

资源

服务器实现了对Apple Notes的读写功能。

工具

服务器提供多个提示:

  • get-all-notes:记下所有笔记。
  • read-note:获取特定笔记的完整内容。
  • search-notes:搜索笔记。

缺少的功能:

  • 不处理加密纸币(ZISPASSWORDPROTED)
  • 不支持固定笔记过滤
  • 不处理云同步状态
  • 缺少附件内容检索
  • 不支持检查表状态(ZHASCHECKLIST)
  • 无法创建或编辑笔记

快速启动

安装服务器

建议使用 紫外线 在本地为Claude安装服务器。

uvx apple-notes-mcp

或

uv pip install apple-notes-mcp

如下所述添加您的配置。

克劳德桌面

在MacOS上: ~/Library/Application\ Support/Claude/claude_desktop_config.json 在Windows上: %APPDATA%/Claude/claude_desktop_config.json

注意:您可能需要使用直接路径 uv.使用 which uv 找到路。

开发/未发布的服务器配置

"mcpServers": {
  "apple-notes-mcp": {
    "command": "uv",
    "args": [
      "--directory",
      "{project_dir}",
      "run",
      "apple-notes-mcp"
    ]
  }
}

已发布的服务器配置

"mcpServers": {
  "apple-notes-mcp": {
    "command": "uvx",
    "args": [
      "apple-notes-mcp"
    ]
  }
}

Mac OS磁盘权限

您需要授予服务器“全磁盘访问”权限。这是因为Apple Notes sqlite数据库嵌套在MacOS文件系统的深处。

如果这让我更加恼火,或者我想开始在Apple Notes中添加/追加内容,我将来可能会考虑AppleScript解决方案。

发展

建筑与出版

准备分发包裹:

  1. 同步依赖关系并更新锁文件:
uv sync
  1. 构建包分发:
uv build

这将在 dist/ 目录。

  1. 发布到PyPI:
uv publish

注意:您需要通过环境变量或命令标志设置PyPI凭据:

  • 令牌: --token 或 UV_PUBLISH_TOKEN
  • 或用户名/密码: --username/UV_PUBLISH_USERNAME 和 --password/UV_PUBLISH_PASSWORD

调试

由于MCP服务器在stdio上运行,调试可能具有挑战性。为了达到最佳调试效果 经验,我们强烈建议使用 MCP检查员.

您可以通过以下方式启动MCP检查器 npm 使用此命令:

npx @modelcontextprotocol/inspector uv --directory {project_dir} run apple-notes-mcp

启动后,检查器将显示一个URL,您可以在浏览器中访问该URL以开始调试。

许可证

该项目根据MIT许可证获得许可。请参阅 许可证 文件以获取详细信息。

源代码

源代码可在 GitHub.

贡献

请将您的想法和反馈发送给我 蓝天 或者打开一个问题。