io.github.henilcalagiya/mcp-apple-notes
Provides full CRUD operations for Apple Notes and folders via MCP, enabling automation of notes with HTML content, folder management, and search through native AppleScript integration.
README
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
uvxor 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
uvxfor automatic installation - Ensure
uvis 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 LICENSE 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!
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.