henilcalagiya/mcp-apple-notes
If you are the rightful owner of mcp-apple-notes and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to henry@mcphub.com.
An MCP server designed for seamless interaction with Apple Notes using Language Model technology.
Apple Notes MCP Server
Powerful tools for automating Apple Notes using Model Context Protocol (MCP)
mcp-name: io.github.henilcalagiya/mcp-apple-notes
Overview
Apple Notes MCP Server provides seamless integration of Apple Notes with any MCP-compatible client. It enables full note automation — including creating, reading, updating, and deleting notes — through a simple and secure AppleScript API layer.
Features
- Full CRUD support for Apple Notes (Create, Read, Update, Delete)
- Works with Continue.dev, Claude Desktop, Perplexity, and other MCP clients
- Native AppleScript integration for reliable macOS automation
- Comprehensive tools for Apple Notes automation
- Automatic installation via
uvx
or manual setup - FastMCP implementation with modern decorator-based API
Requirements
- macOS - Required for AppleScript support
- Python 3.10+ - Required for MCP SDK compatibility
- Apple Notes application - Must be installed and accessible
- MCP-compatible client (e.g., Continue.dev, Claude Desktop)
Quick Start
Step 1: Install uv (if not already installed)
macOS/Linux:
curl -LsSf https://astral.sh/uv/install.sh | sh
Windows (PowerShell):
powershell -c "irm https://astral.sh/uv/install.ps1 | iex"
Alternative (pip):
pip install uv
Step 2: Add MCP Configuration
Add this configuration to your MCP client:
For Perplexity, Cursor, Continue.dev, Claude Desktop:
{
"mcpServers": {
"apple-notes": {
"command": "uvx",
"args": ["mcp-apple-notes@latest"]
}
}
}
🎉 That's it! Your MCP client will automatically install and run the package when needed.
Note: Ensure your MCP client has permission to access Apple Notes and execute AppleScript commands in System Preferences → Security & Privacy → Privacy → Accessibility.
Available Tools
Note Management (6 tools)
create_note
- Create notes with HTML contentread_note
- Read notes by ID with verificationupdate_note
- Update notes by ID with HTML contentdelete_note
- Delete notes by ID with verificationmove_note
- Move notes between folderslist_all_notes
- List all notes across all folders
Folder Management (5 tools)
create_folder
- Create folders with path supportread_folder
- Read folder details by IDrename_folder
- Rename folders by IDdelete_folder
- Delete folders by IDmove_folder
- Move folders between locations
Search & Structure (3 tools)
search_notes
- Search notes by keywordslist_folder_with_structure
- Show folder hierarchylist_notes_with_structure
- Show folders + notes hierarchy
Content Support
HTML Formatting: <h1-h6>
, <b><i><u>
, <p><div><br>
, <ul><ol><li>
, <table>
, <a>
Special Features:
- Unicode and emoji support (🚀, ✅, 📝)
- Nested folder paths (up to 5 levels)
- Automatic character escaping
- Rich content with headers, lists, tables
Architecture
The server follows the MCP protocol specification and is built with a modular architecture:
- AppleScript Layer - Handles direct interaction with Apple Notes
- Tools Layer - Wraps AppleScript operations for MCP tools
- FastMCP Server Layer - Implements MCP protocol using decorators
Troubleshooting
Common Issues
-
"No module named 'mcp'" Error
- Use
uvx
for automatic installation - Ensure
uv
is installed and in PATH
- Use
-
AppleScript Permission Denied
- Grant permission to your terminal/MCP client in System Preferences → Security & Privacy → Privacy → Accessibility
-
Notes Not Found
- Ensure Apple Notes app is installed and accessible
- Check that notes exist in the default location
License
This project is licensed under the MIT License - see the file for details.
Author
Henil C Alagiya
- GitHub: @henilcalagiya
- LinkedIn: Henil C Alagiya
Support & Contributions:
- 🐛 Report Issues: GitHub Issues
- 💬 Questions: Reach out on LinkedIn
- 🤝 Contributions: Pull requests welcome!