Apple Calendar logo

Apple Calendar

Read, create, update, delete, and schedule Apple Calendar events locally on macOS.

Install Apple Calendar

Pick your client, then add it in one click or paste the config.

STDIONode.js
~/Library/Application Support/Claude/claude_desktop_config.json
claude_desktop_config.json
{
  "mcpServers": {
    "apple-calendar-3": {
      "command": "npx",
      "args": [
        "-y",
        "@redpop/apple-calendar-mcp"
      ]
    }
  }
}

Settings → Developer → Edit Config, merge this into mcpServers, then fully quit and reopen Claude Desktop.

We couldn’t confirm it starts correctly

The install command didn't complete successfully in our automated test.

npx -y @redpop/apple-calendar-mcp

pm available! 10.1.0 -> 12.2.0 npm notice Changelog: <https://github.com/npm/cli/releases/tag/v12.2.0> npm notice Run `npm install -g npm@12.2.0` to update! npm notice npm ERR! code EBADPLATFORM npm ERR! notsup Unsupported platform for @redpop/apple-calendar-mcp@0.2.1: wanted {"os":"darwin"} (current: {"os":"linux"}) npm ERR! notsup Valid os: darwin npm ERR! notsup Actual os: linux npm ERR! A complete log of this run can be found in: /home/user/.npm/_logs/2026-10-17T10_35_42_178Z-debug-0.log

This is an experimental automated check and can have false negatives — missing environment variables, a slow cold install, etc. It doesn’t necessarily mean something’s wrong. Last checked 6d ago.

Overview

The Apple Calendar MCP server connects AI assistants to Apple Calendar through macOS EventKit. It lists calendars, reads events, manages timed or all-day entries, and finds open time across calendars with working-hours and buffer options. Use it when an assistant needs local calendar access on macOS rather than a cloud calendar API.

Use cases

  • Find open time for focused work
  • Read calendar events for a date range
  • Create meetings with notes and alarms
  • Manage recurring event occurrences
  • Check availability across calendars

Key features

  • Read Apple Calendar events
  • Create, update, and delete events
  • Find free time across calendars
  • Support timed and all-day events
  • Apply working-hour and meeting-buffer rules
  • Handle recurring event occurrences

Security & health

What it can reach and how reliably it runs — from our own checks, not the maintainer’s claims.

ActiveLast checked 2d ago

Recent health check succeeded.

7/7 checks healthy over the last 45d

Supply-chain signal

No high-severity advisories surfaced by our automated scan.

Critical 0High 0Medium 0Low 0

Scanned 12d ago via OSV.dev · @redpop/apple-calendar-mcp (npm)

Adoption & maintenance

Factual signals from GitHub, npm, and our automated checks — not a rating.

GitHub stars2Stargazers on the source repository.
npm downloads245Package downloads in the last 30 days.
Last commit2mo agoMost recent push to the default branch.
Install checkInconclusiveInstall command did not finish in our automated test.
Directory activity2 viewsConfig copies, upvotes, and views on AllMCPs.

How Apple Calendar works

What Apple Calendar MCP server does

The Apple Calendar MCP server gives an MCP-compatible client access to calendars on a Mac. It can list available calendars, retrieve events within a date range, optionally filter those events by text, and create, update, or delete entries.

Events can be timed or all-day and may include a location, notes, and alarms. Recurring events are returned as separate occurrences instead of only exposing the recurring master event. When changing or removing one of those occurrences, the request must distinguish between affecting that occurrence and affecting later occurrences as well.

Its scheduling feature reports open gaps rather than returning only busy periods. A request can look for a specified amount of time across calendars, apply working-hour rules, and add a buffer around existing meetings. The documented behavior treats “work” as weekdays within working hours, “personal” as any day, and generally excludes all-day events from busy-time calculations.

How it works

The MCP process communicates with a signed helper binary included in the npm package. The helper uses EventKit, Apple’s calendar framework, to access local calendar data. Calendar information travels locally from EventKit through the helper and MCP server to the client; the project states that it contains no network code.

macOS grants access to the helper’s permission identity. On first use, the operating system asks for calendar access under the name calendar-helper, rather than the name of the AI client. The grant is shared across clients using the helper on that machine.

Setup and configuration

The supported runtime is macOS 14 Sonoma or newer with Node.js 20 or newer. Installation through npm does not require Xcode, Swift, or a repository checkout. Add the server to an MCP client with:

Terminal
claude mcp add apple-calendar -- npx -y @redpop/apple-calendar-mcp

For clients that use a JSON configuration, the command is npx and the arguments are -y and @redpop/apple-calendar-mcp. No environment variables are required. The client must support MCP over standard input and output.

After adding it, ask the assistant to list the calendars. Approve the macOS permission prompt, then open System Settings → Privacy & Security → Calendars and give calendar-helper Full Access. Add Only or read-only access is insufficient because the helper checks for full access when it starts.

To update the package, run npx -y @redpop/apple-calendar-mcp@latest. The documented installation keeps the helper at a fixed path, so the calendar grant survives package updates. To remove it, delete the client configuration entry and remove ~/Library/Application Support/apple-calendar-mcp; revoke the remaining macOS permission separately if needed.

Tools and capabilities

The Apple Calendar MCP server supports these calendar operations:

  • List calendars available through EventKit.
  • Read events in a selected range, with optional text search.
  • Find free gaps for a requested duration.
  • Create timed or all-day events.
  • Update existing events.
  • Delete events.
  • Set locations, notes, and alarms on events.
  • Account for working context and meeting buffers when finding free time.

Limitations and notes

The Apple Calendar MCP server is macOS-only because EventKit has no cross-platform equivalent in this project. The packaged installation requires macOS 14 or later and Node.js 20 or later. Building from source additionally requires Xcode Command Line Tools and changes the permission behavior: ad-hoc builds can trigger a new calendar prompt after each rebuild.

Calendar access is local and requires explicit macOS approval. Recurring-event edits and deletions require an explicit choice about whether the operation applies to one occurrence or later occurrences too. The server does not infer that choice.

Reviews

No reviews yet — be the first to share how it worked for you.

Frequently Asked Questions about Apple Calendar

Apple Calendar is an MCP server that connects AI assistants to Apple Calendar on macOS through EventKit. Its main tools list calendars, read events, find free time, and create, update, or delete timed and all-day events with details such as notes, locations, and alarms.

Install it through npm with `npx -y @redpop/apple-calendar-mcp` in your MCP client configuration. Claude Code can use `claude mcp add apple-calendar -- npx -y @redpop/apple-calendar-mcp`; Node.js 20 or newer and macOS 14 or newer are required.

Grant Full Access to `calendar-helper` in System Settings → Privacy & Security → Calendars. Trigger the prompt by asking the assistant to list your calendars, then ensure the permission is not set to Add Only or read-only.

Yes, Apple Calendar works with Cursor because the package communicates over MCP standard input and output. Configure Cursor to run `npx` with `-y @redpop/apple-calendar-mcp`, then approve the macOS calendar permission prompt.

Related MCP servers

Add a badge to your READMEShow it’s listed — live SVG, Markdown or HTML.

AllMCPs Directory Badge

Full Badge Customizer

Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.

Badge Style:
Live Dynamic SVG PreviewApple Calendar AllMCPs Directory Badge
Markdown (GitHub README)
[![AllMCPs](https://allmcps.com/api/badge/apple-calendar-3?style=directory)](https://allmcps.com/mcp/apple-calendar-3)
HTML Embed
<a href="https://allmcps.com/mcp/apple-calendar-3"><img src="https://allmcps.com/api/badge/apple-calendar-3?style=directory" alt="Apple Calendar on AllMCPs" /></a>