AppleMCP

Native macOS MCP server that gives AI assistants secure, local access to your Apple data and Apple Intelligence.

macOS 15+ Swift MCP Protocol Local-first Privacy-safe

Data Sources

Mail

Search and read emails from the local Mail index. Full body, sender, recipients, dates. AppleScript fallback when Full Disk Access is unavailable.

Calendar

Search events via EventKit. Titles, locations, times, notes, all-day status, and calendar membership.

Contacts

Search your address book via Contacts.framework. Names, emails, phone numbers, addresses.

Notes

Search and read Apple Notes via Automation. Full note content, folder structure, modification dates.

Reminders

Search reminders via EventKit. Filter by completion status, due dates, priorities.

Photos

Search Photos library metadata via Photos.framework. Albums, media types, dimensions, dates.

Voice Memos

Search recordings in the local CloudRecordings store, read the transcript macOS stores inside each .m4a, or transcribe on device with Speech.framework.

Apple Intelligence

Writing Tools

Summarize, rewrite, proofread, or change tone using Apple's on-device writing tools.

Translation

Translate text between languages using the system translation service.

Image Playground

Generate images from text via the native ImagePlayground API. No app launch, pure API.

On-Device Summaries

Summarize text and extract action items with the Apple Intelligence language model. Runs locally, needs no Shortcut, pairs with voice-memo transcripts. macOS 26.

Architecture

Claude / AI Assistant | stdio (MCP protocol) | M3MCPBridge (lightweight CLI) | HTTP over Unix socket (0600) | M3MCPApp (SwiftUI, holds TCC permissions) | EventKit / Contacts / Photos / Mail Index / Voice Memos Store Speech / FoundationModels / AppleScript

Setup

# Build
swift build
swift test

# Run the app
./script/build_and_run.sh

# Add to Claude Desktop (~/.config/claude/claude_desktop_config.json)
{
  "mcpServers": {
    "applemcp": {
      "command": "/path/to/AppleMCP/.build/debug/M3MCPBridge"
    }
  }
}

# Or add to Claude Code
claude mcp add applemcp /path/to/AppleMCP/.build/debug/M3MCPBridge

# Check the endpoint
curl --unix-socket ~/Library/Application\ Support/M3MCP/mcp.sock \
  http://localhost/health
View on GitHub