Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/RafalWilinski/mcp-apple-notes
Talk with your notes in Claude. RAG over your Apple Notes using Model Context Protocol.
https://github.com/RafalWilinski/mcp-apple-notes
ai claude llm mcp model-context rag
Last synced: about 2 months ago
JSON representation
Talk with your notes in Claude. RAG over your Apple Notes using Model Context Protocol.
- Host: GitHub
- URL: https://github.com/RafalWilinski/mcp-apple-notes
- Owner: RafalWilinski
- Created: 2024-12-16T10:22:58.000Z (about 2 months ago)
- Default Branch: main
- Last Pushed: 2024-12-16T11:17:31.000Z (about 2 months ago)
- Last Synced: 2024-12-16T11:32:27.455Z (about 2 months ago)
- Topics: ai, claude, llm, mcp, model-context, rag
- Language: TypeScript
- Homepage: https://rwilinski.ai
- Size: 2.28 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
- awesome-mcp-servers - Apple Notes - Talk with your Apple Notes (Community Servers)
README
# MCP Apple Notes
![MCP Apple Notes](./images/logo.png)
A [Model Context Protocol (MCP)](https://www.anthropic.com/news/model-context-protocol) 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](./images/demo.png)
## Features
- 🔍 Semantic search over Apple Notes using [`all-MiniLM-L6-v2`](https://huggingface.co/sentence-transformers/all-MiniLM-L6-v2) on-device embeddings model
- 📝 Full-text search capabilities
- 📊 Vector storage using [LanceDB](https://lancedb.github.io/lancedb/)
- 🤖 MCP-compatible server for AI assistant integration
- 🍎 Native Apple Notes integration via JXA
- 🏃♂️ Fully local execution - no API keys needed## Prerequisites
- [Bun](https://bun.sh/docs/installation)
- [Claude Desktop](https://claude.ai/download)## Installation
1. Clone the repository:
```bash
git clone https://github.com/RafalWilinski/mcp-apple-notes
cd mcp-apple-notes
```2. Install dependencies:
```bash
bun install
```## Usage
1. Open Claude desktop app and go to Settings -> Developer -> Edit Config
![Claude Desktop Settings](./images/desktop_settings.png)
2. Open the `claude_desktop_config.json` and add the following entry:
```json
{
"mcpServers": {
"local-machine": {
"command": "/Users//.bun/bin/bun",
"args": ["/Users//apple-notes-mcp/index.ts"]
}
}
}
```Important: Replace `` with your actual username.
3. Restart Claude desktop app. You should see this:
![Claude MCP Connection Status](./images/verify_installation.png)
4. 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:
```bash
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