Apple Tools

listing.by

Work with Mail, Calendar, Reminders, Messages, Notes, Contacts, Files and Maps on macOS from one local server.

state.local.long (state.local.title)listing.badge.runs_with

listing.install

listing.local.explain

uvx apple-tools-mcp

listing.local.needs listing.local.note

  • APPLE_MAIL_MCP_SAFETY_PROFILE listing.env.optional Safety mode for the Mail domain: safe_readonly, safe_manage, or full_access.
  • APPLE_CALENDAR_MCP_SAFETY_MODE listing.env.optional Safety mode for the Calendar domain: safe_readonly, safe_manage, or full_access.
  • APPLE_REMINDERS_MCP_SAFETY_MODE listing.env.optional Safety mode for the Reminders domain: safe_readonly, safe_manage, or full_access.
  • APPLE_FILES_MCP_SAFETY_MODE listing.env.optional Safety mode for the Files domain: safe_readonly, safe_manage, or full_access.
  • APPLE_FILES_MCP_ALLOWED_ROOTS listing.env.optional Comma-separated directories file tools may access. Defaults to Desktop, Documents, Downloads, and iCloud Drive.
  • APPLE_SYSTEM_MCP_SAFETY_MODE listing.env.optional Safety mode for the System domain: safe_readonly, safe_manage, or full_access.

listing.share.h

listing.share.p_local

mcp.tc/i/apple-tools

listing.about

Apple Tools is a unified MCP server for macOS apps. It wraps standalone servers for Mail, Calendar, Reminders, Messages, Contacts, Notes, Shortcuts, Files, System and Maps. It adds cross-app workflows such as daily and weekly briefings, communications triage, follow-up capture, saved defaults, and preview, audit and undo for reversible actions.

It runs locally over stdio with uvx apple-tools-mcp (Python 3.11+, macOS) and also ships as an MCPB bundle. No API key is needed. Each app domain has a safety mode (safe_readonly, safe_manage or full_access) set by environment variable, and file access is limited to allowed directories. macOS permission prompts apply.

listing.can

  • Read and manage Mail, including threads, replies and archiving
  • Read and create Calendar events and Reminders
  • Search Contacts and route messages by saved preferences
  • Send and preview Messages
  • Work with Notes, Shortcuts and files in scoped folders
  • Look up places and route estimates with Apple Maps
  • Generate daily and weekly briefings and triage communications
  • Preview, audit and undo reversible actions

listing.tools

listing.notools.local

listing.prompts

  • Give me a daily briefing from my calendar, reminders and unread mail.

  • Reply to the latest mail thread from Anna and archive it.

  • Create a reminder to follow up with Marco on Friday.

  • How long will it take to drive to my next calendar event?

listing.setup.h

listing.setup.local

Claude Code

  1. Run this in a terminal, in your project folder:
claude mcp add --transport stdio apple-tools -- uvx apple-tools-mcp
  1. Start Claude Code and type /mcp. apple-tools should show as connected.

Add --scope user to make it available in every project.

Claude Desktop

  1. Open Settings → Developer → Edit Config. It opens claude_desktop_config.json. Add:
claude_desktop_config.json
{
  "mcpServers": {
    "apple-tools": {
      "command": "uvx",
      "args": [
        "apple-tools-mcp"
      ]
    }
  }
}
  1. Save the file and restart Claude Desktop.

Needs uv (Python) on your computer. The file lives in ~/Library/Application Support/Claude/ on macOS and %APPDATA%\Claude\ on Windows.

Cursor

Or add it by hand to ~/.cursor/mcp.json (all projects) or .cursor/mcp.json (this project):

mcp.json
{
  "mcpServers": {
    "apple-tools": {
      "command": "uvx",
      "args": [
        "apple-tools-mcp"
      ]
    }
  }
}

Needs uv (Python) on your computer.

VS Code

Or from a terminal:

code --add-mcp '{"name":"apple-tools","type":"stdio","command":"uvx","args":["apple-tools-mcp"]}'

Or commit it to the repo in .vscode/mcp.json:

.vscode/mcp.json
{
  "servers": {
    "apple-tools": {
      "type": "stdio",
      "command": "uvx",
      "args": [
        "apple-tools-mcp"
      ]
    }
  }
}

Needs uv (Python) on your computer.

Devin Desktop

  1. Add it to ~/.config/devin/mcp_config.json (macOS and Linux) or %APPDATA%\devin\mcp_config.json (Windows):
mcp_config.json
{
  "mcpServers": {
    "apple-tools": {
      "command": "uvx",
      "args": [
        "apple-tools-mcp"
      ]
    }
  }
}
  1. Refresh the MCP server list in Cascade.

Devin Desktop is the new name for Windsurf.

Codex

codex mcp add apple-tools -- uvx apple-tools-mcp

Or edit ~/.codex/config.toml directly:

config.toml
[mcp_servers.apple-tools]
command = "uvx"
args = ["apple-tools-mcp"]

Needs uv (Python) on your computer.

Gemini CLI

gemini mcp add apple-tools uvx apple-tools-mcp

This adds it to the current project. Add -s user to use it everywhere.

Any client

Most clients that start local servers accept this shape:

{
  "mcpServers": {
    "apple-tools": {
      "command": "uvx",
      "args": [
        "apple-tools-mcp"
      ]
    }
  }
}

Zed puts servers under context_servers in its settings, with the same command, args and env fields.

Needs uv (Python) on your computer.

listing.faq

Can I paste mcp.tc/i/apple-tools into my MCP client?

No. Apple Tools runs on your own computer, started by your client, so it has no web address to connect to. The quick link is the page to share; the install command is uvx apple-tools-mcp.

Does Apple Tools need an API key?

No. It doesn't declare any keys or environment variables. It runs with your user account's permissions, so check what its tools can reach.

Is Apple Tools a remote or a local server?

Local. Your client starts it as a process on your computer with uvx apple-tools-mcp, which needs uv (Python).

What can Apple Tools do?

You can read and manage Mail, including threads, replies and archiving, read and create Calendar events and Reminders and search Contacts and route messages by saved preferences.

Which clients can use it?

Any client that starts local servers: Claude Code, Claude Desktop, Cursor, VS Code, Devin Desktop, Codex, Gemini CLI, Zed and others. claude.ai and ChatGPT only connect to remote servers.

Who wrote this page?

mcp.tc's robot read Apple Tools's public metadata (its package and repository pages), and an AI model drafted the text from it. A person reviews anything the checks can't confirm. The text can still be wrong, so if you spot a mistake, use Report this listing on this page.

listing.em.h

listing.em.lead_local listing.em.how

listing.em.badge

em.prev_lightem.prev_dark
Markdown
[![Apple Tools on mcp.tc](https://mcp.tc/i/apple-tools/badge.svg)](https://mcp.tc/i/apple-tools)
HTML
<a href="https://mcp.tc/i/apple-tools"><img src="https://mcp.tc/i/apple-tools/badge.svg" alt="Apple Tools on mcp.tc" height="20"></a>

listing.em.badge_note

listing.em.widget

HTML
<script src="https://mcp.tc/w/apple-tools.js" async></script>

listing.em.widget_note

iframe

HTML
<iframe src="https://mcp.tc/embed/apple-tools" title="Apple Tools on mcp.tc" width="420" height="200" loading="lazy" allow="clipboard-write" style="border:0;border-radius:8px;max-width:100%"></iframe>

listing.em.iframe_note

JSON

listing.em.json_local

https://mcp.tc/i/apple-tools.json

listing.em.fields

listing.disclaimer_checked