cd /news/ai-agents/show-hn-apple-reminders-mcp-native-r… · home › topics › ai-agents › article
[ARTICLE · art-154015] src=github.com ↗ pub= topic=ai-agents verified=true sentiment=· neutral

Show HN: Apple Reminders MCP – native read/write via ReminderKit

A developer released Apple Reminders MCP, a Model Context Protocol server that reads and writes Apple Reminders natively through ReminderKit, the private framework Reminders.app uses, rather than through AppleScript or EventKit. The server covers tags, subtasks, sections, list groups, smart lists, Urgent, location alerts and shared-list assignment, and requires macOS 26+ on Apple silicon; it is distributed as an unsigned pkg with no third-party dependencies and was validated with 121 end-to-end checks against throwaway lists. Writes are version-checked so an edit made on an iPhone between read and write is refused rather than overwritten, and the server keeps a 31-day local record of deletions because ReminderKit can restore by id but cannot list Recently Deleted items.

read2 min views35 publishedOct 20, 2026

I wanted coding agents (Claude Code, Codex, etc.) to manage my Reminders, but the existing MCP servers go through AppleScript or EventKit. Neither exposes tags, subtasks, sections, smart lists, Urgent, list groups or shared-list assignment, so tools either skip them or store "#tags" and subtasks as text in the notes field, which doesn't show up as such on your iPhone.

This server writes through ReminderKit, the private framework Reminders.app itself uses. Everything is native and syncs via iCloud through remindd as usual. It covers tags, subtasks, sections, groups, colors/icons, pinning, grocery lists, templates, smart lists (create/edit filters), Urgent, location and getting-in/out-of-car alerts, "when messaging a person", and assignment in shared lists.

A few implementation details that might be interesting:

  • Permissions: macOS attributes a child process's TCC permissions to its "responsible process". Claude Code/Desktop have no Reminders usage description, so anything they spawn is silently denied. The binary disclaims responsibility at startup and relaunches itself under its own identity, piping stdin/stdout through, so Reminders permission is granted once to the app regardless of the host.

  • Version-checked writes: updates and deletes must pass a version (a hash of visible fields) from the last read. If you edited the reminder on your phone in between, the write is refused instead of clobbering it.

  • Recently Deleted: ReminderKit can restore by id but can't list deleted items or tell you the original list, so the server keeps a 31-day local record on delete. With optional Full Disk Access it reads the Reminders DB read-only to list everything in Recently Deleted.

Limits: it uses a private framework, so a macOS update could break it; requires macOS 26+, Apple silicon builds only, and the pkg isn't Developer ID-signed. It can't invite people to shared lists, can't read a reminder's manual order, and passes through smart-list conditions it doesn't understand without editing them. Subtasks are one level deep. No third-party dependencies; 121 end-to-end checks run against throwaway lists.

Comments URL: [https://news.ycombinator.com/item?id=50171321](https://news.ycombinator.com/item?id=50171321)

Points: 1

── more in #ai-agents 4 stories · sorted by recency
── more on @apple reminders mcp 3 stories trending now
sponsored brought to you by zahid.host 4,200+ EU-deployed projects
reading about agents? ship yours in a single git push.

Run your AI side-project on zahid.host

EU-based hosting, git-push deploys, automatic HTTPS, no cold starts. Free tier with a custom domain — perfect for shipping the agent you just read about.

$git push zahid main
→ Live at https://your-agent.zahid.host ✓
Get free account → Pricing
from €0/mo · no card required
LIVE [news/show-hn-apple-remind…] indexed:0 read:2min 2026-10-20 · —