Apple Notes
    Apple Notes

    Apple Notes

    Talk with your notes in Claude. RAG over your Apple Notes using Model Context Protocol.

    4.3

    GitHub Stats

    Stars

    235

    Forks

    21

    Release Date

    6/15/2025

    about three weeks ago

    Detailed Description

    mcp apple notes

    !mcp apple notes

    a model context protocol (mcp) server that enables semantic search and rag (retrieval augmented generation) over your apple notes. this allows ai assistants like claude to search and reference your apple notes during conversations.

    !mcp apple notes

    features

    • 🔍 semantic search over apple notes using all-minilm-l6-v2 on-device embeddings model
    • 📝 full-text search capabilities
    • 📊 vector storage using lancedb
    • 🤖 mcp-compatible server for ai assistant integration
    • 🍎 native apple notes integration via jxa
    • 🏃‍♂️ fully local execution - no api keys needed

    prerequisites

    installation

    1. clone the repository:
    git clone https://github.com/rafalwilinski/mcp-apple-notes
    cd mcp-apple-notes
    
    1. install dependencies:
    bun install
    

    usage

    1. open claude desktop app and go to settings -> developer -> edit config

    !claude desktop settings

    1. open the claude_desktop_config.json and add the following entry:
    {
      "mcpservers": {
        "local-machine": {
          "command": "/users/<your_user_name>/.bun/bin/bun",
          "args": ["/users/<your_user_name>/apple-notes-mcp/index.ts"]
        }
      }
    }
    

    important: replace <your_user_name> with your actual username.

    1. restart claude desktop app. you should see this:

    !claude mcp connection status

    1. start by indexing your notes. ask claude to index your notes by saying something like: "index my notes" or "index my apple notes".

    troubleshooting

    to see logs:

    tail -n 50 -f ~/library/logs/claude/mcp-server-local-machine.log
    # or
    tail -n 50 -f ~/library/logs/claude/mcp.log
    

    todos

    • [ ] apple notes are returned in the html format. we should turn them to markdown and embed that
    • [ ] chunk source content using recursive text splitter or markdown text splitter
    • [ ] add an option to use custom embeddings model
    • [ ] more control over db - purge, custom queries, etc.
    • [x] storing notes in notes via claude

    Star History

    Star History

    Dec 16Dec 28Jan 27Feb 22Mar 7Mar 20Apr 6Apr 22May 15Jun 30060120180240
    Powered by MSeeP Analytics

    About the Project

    This app has not been claimed by its owner yet.

    Claim Ownership

    Receive Updates

    Security Updates

    Get notified about trust rating changes

    to receive email notifications.