apple-mcp

apple-mcp

MCP server for macOS Apple apps. Enables read/write access to Notes, Reminders, Calendar, Contacts, and Safari using SQLite and JXA, all running locally.

Category
Visit Server

README

apple-mcp

MCP server for macOS Apple apps. Provides 28 read/write tools across Notes, Reminders, Calendar, Contacts, and Safari -- all running locally on your Mac via SQLite and JXA (JavaScript for Automation).

Install

Claude Code

claude mcp add apple -- npx @roebot0/apple-mcp

Claude Desktop

Add to ~/Library/Application Support/Claude/claude_desktop_config.json:

{
  "mcpServers": {
    "apple": {
      "command": "npx",
      "args": ["@roebot0/apple-mcp"]
    }
  }
}

Tools

Notes (8 tools)

Tool Description
apple_notes_list List notes with title, snippet, folder, and dates (paginated)
apple_notes_search Search notes by keyword in title and snippet
apple_notes_get Get full plaintext body of a note by exact title
apple_notes_folders List all folders with note counts
apple_notes_recent Get N most recently modified notes
apple_notes_by_folder Get all notes in a specific folder
apple_notes_create Create a new note in a specified folder
apple_notes_stats Aggregate stats: total notes, per-folder counts, date range

Reminders (6 tools)

Tool Description
apple_reminders_lists List all reminder lists with counts
apple_reminders_list Get reminders in a specific list
apple_reminders_due Get reminders due today, this week, or overdue
apple_reminders_search Search reminders by keyword across all lists
apple_reminders_create Create a new reminder with optional due date and priority
apple_reminders_complete Mark a reminder as complete by name

Calendar (5 tools)

Tool Description
apple_calendar_today Get today's events across all calendars
apple_calendar_range Get events in a date range
apple_calendar_calendars List all calendars
apple_calendar_search Search events by title
apple_calendar_upcoming Get next N upcoming events

Contacts (5 tools)

Tool Description
apple_contacts_search Search contacts by name, email, or company
apple_contacts_get Get full contact details by ID (emails, phones, etc.)
apple_contacts_recent Get recently modified contacts
apple_contacts_company List contacts at a specific company
apple_contacts_stats Contact count and top companies

Safari (4 tools)

Tool Description
apple_safari_history Get recent browsing history
apple_safari_search_history Search history by URL or page title
apple_safari_bookmarks List bookmarks, optionally filtered by folder
apple_safari_reading_list Get all Reading List items

Requirements

  • macOS (uses native SQLite databases and JXA automation)
  • Node.js >= 18
  • Full Disk Access required for Safari history -- grant it to your terminal app in System Settings > Privacy & Security > Full Disk Access
  • Notes, Reminders, Calendar, and Contacts work without Full Disk Access

How it works

  • Notes, Calendar, Contacts, Safari history: Read directly from local SQLite databases (read-only)
  • Notes create, Reminders (all), Notes get: Use JXA (osascript -l JavaScript) to interact with the native apps
  • Safari bookmarks/reading list: Parse the Bookmarks.plist file

No network requests. No API keys. Everything stays on your Mac.

Development

git clone https://github.com/AaronRoeF/apple-mcp.git
cd apple-mcp
npm install
npm run build

To test locally with Claude Code:

claude mcp add apple -- node /path/to/apple-mcp/start-mcp-server.js

License

MIT

Recommended Servers

playwright-mcp

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.

Official
Featured
TypeScript
Magic Component Platform (MCP)

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.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

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.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

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.

Official
Featured
TypeScript
Kagi MCP Server

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.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured
Exa Search

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.

Official
Featured