MCP Apple Notes
Perform semantic search and retrieval augmented generation over your 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.
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
- Bun
- Claude Desktop
Installation
- Clone the repository:
git clone https://github.com/RafalWilinski/mcp-apple-notes cd mcp-apple-notes
- Install dependencies:
bun install
Usage
- Open Claude desktop app and go to Settings -> Developer -> Edit Config
- 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.
- Restart Claude desktop app. You should see this:
- 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.
- Storing notes in Notes via Claude
Related Servers
302AI File Parser
Parses various file formats using the 302.AI API, requiring a 302AI_API_KEY.
Filesystem MCP Server
A server for performing filesystem operations such as reading/writing files, managing directories, and searching.
PDF Splitter
Provides random access to PDF contents, allowing selective extraction of pages and content to reduce reading costs.
Filesystem
Secure file operations with configurable access controls
Java Filesystem & Web MCP Server
An MCP server for LLM agents to perform filesystem operations and access web resources.
Filesystem MCP Server
Perform filesystem operations within specified directories.
Obsidian MCP Server - Enhanced
Provides comprehensive access to an Obsidian vault, allowing AI agents to read, write, search, and manage notes via the Local REST API plugin.
AgentMcp
A local server that allows AI to execute Windows CMD commands, read/write files, and manage directories within a specified path.
Everything Search
Fast Windows file search using Everything SDK
KnowledgeBaseMCP
Extract text content from local PDF, DOCX, and PPTX files to build a knowledge base.