Notes MCP

使用说明(Markdown 格式)

  • 项目简介 Notes MCP 是一个在 macOS 上运行的后端服务,基于 Model Context Protocol (MCP) 架构,向 LLM 客户端提供对本地 Apple Notes 的资源、以及对笔记、文件夹等操作的工具接口,通过 JSON-RPC 协议进行通信,当前实现使用标准输入输出(Stdio)传输方式。

  • 主要功能点

    • 资源与工具托管:暴露 Apple Notes 的文件夹、笔记等资源信息,并提供多种操作工具(如创建笔记、查询笔记、获取笔记列表等)。
    • 工具执行:LLM 客户端可以通过调用定义好的工具(如 notes-create-note、notes-get-folders、notes-get-notes、notes-get-note-by-id、notes-get-note-by-title、notes-note-count)来交互并获取结果。
    • 本地化执行:通过 macOS 的 AppleScript/JavaScript for Automation 运行 Notes 应用,进行实际数据的创建与查询。
    • 简易传输:使用 Stdio 传输实现与客户端的 JSON-RPC 通信,适合本地开发与测试场景。
  • 安装步骤(简明操作)

    1. 确保运行环境为 macOS,且已安装 Apple Notes。
    2. 克隆该仓库到本地。
    3. 安装依赖(在项目根目录执行):npm install
    4. 启动服务器(在项目根目录执行):npm start
    5. 服务器启动后,客户端即可通过 MCP 标准 JSON-RPC 与服务器进行交互(如读取笔记、创建笔记等)。
  • 服务器配置(给 MCP 客户端的启动信息,JSON 格式,包含 server name、command、args 等) 说明:MCP 客户端需要提供服务器的启动信息以便连接,以下为基于当前仓库实现的准确配置示例描述(注意:客户端无需代码,这只是用于配置演示):

    • serverName: Notes
    • command: npm
    • args: ["start"] 该配置表示客户端应通过执行 npm start 启动 Notes MCP 服务器,启动后可通过标准输出/输入(Stdio)与客户端建立 JSON-RPC 通信。
  • 基本使用方法

    • 运行并连接:启动服务器后,使用 MCP 客户端通过 Stdio 传输与服务器建立连接,发送 JSON-RPC 请求以调用工具。
    • 调用示例(描述性,不提供代码):通过工具名(如 notes-get-folders、notes-create-note)向服务器请求获取文件夹列表或创建笔记,服务器返回对应的 JSON-RPC 响应,包含结果数据。
    • 响应格式:服务器返回的结果通常以 JSON 字符串的形式嵌在 content 字段中,便于 LLM 解析和后续处理。

服务器信息