Apple Reminders

io.github.mgcreaPublished by GitHub account mgcreav1.37.0Updated Nov 7, 2026

Search, read and act on Apple Reminders — lists, due dates, writes off by default

Overview

AI-generated overview

Local macOS MCP server that lets an assistant search, read and, when enabled, create, update, complete, move or delete Apple Reminders.

What you can do
  • Search and read reminders, lists and accounts, including a single reminder by id
  • Run diagnostics to see which data lane is answering
  • Create, update, complete, move and delete reminders, only when writes are explicitly enabled
  • Read tags and attachments through an optional read-only index of the local Reminders store
When to use it
Useful when you want an assistant to work with the reminders already in the macOS Reminders app — finding what is due, searching across lists, or managing tasks — without a cloud account or API key.
Requirements
Runs locally on macOS via npx (Node.js) and drives the installed Reminders app. The app that launches the server needs Automation permission for Reminders; Full Disk Access is optional and only needed for tags and attachments. Configuration is through environment variables such as APPLE_REMINDERS_ALLOW_WRITES, APPLE_REMINDERS_ACCOUNTS, APPLE_REMINDERS_LISTS and APPLE_REMINDERS_ATTACHMENT_DIR.
Before you install
Write tools are off by default and only appear when APPLE_REMINDERS_ALLOW_WRITES is set; once enabled, the assistant can create, change, complete, move and delete reminders. Use APPLE_REMINDERS_ACCOUNTS and APPLE_REMINDERS_LISTS to limit which accounts and lists are reachable, and note that completed reminders are hidden from reads unless enabled. Attachments are confined to the directory set by APPLE_REMINDERS_ATTACHMENT_DIR.

Installation

In SourceWeft

  1. Open Apple Reminders in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.

Other MCP clients

Follow the launch instructions in the repository.

README

@mgcrea/mcp-apple-reminders

Model Context Protocol server for the macOS Apple Reminders app.

Unofficial. Not affiliated with Apple. It drives the Reminders app that is already on your Mac.

Two lanes

  • Apple Events lane — accounts, lists, reminders, and every mutation. Reminders' scripting dictionary is complete enough that this alone is a working server.
  • Index lane — read-only SQLite over the Group Containers store, for the things the dictionary does not expose. Needs Full Disk Access.

Like Notes and unlike Mail, the Apple Events lane alone is usable. You can install this, use it, and only then decide whether to grant Full Disk Access. apple_reminders_diagnostics tells you which lane is answering.

PermissionNeeded forWithout it
Automation → Reminderseverythingnothing works; you get a -1743 error
Full Disk Accesstags, attachmentsthe server still runs, on the Apple Events lane

Neither is granted to Reminders.app — it is the reader that needs permission. Grant it to whatever launches the server (Terminal, iTerm, VS Code, Claude), then restart it.

Tools

Read: diagnostics, list_accounts, list_lists, list_reminders, search_reminders, get_reminder.

Write, registered only when APPLE_REMINDERS_ALLOW_WRITES=1 — with the flag off they are invisible to the model, not merely refused: create_reminder, update_reminder, complete_reminders, move_reminders, delete_reminders.

Configuration

VariableDefault
APPLE_REMINDERS_ALLOW_WRITESoffRegister the mutating tools.
APPLE_REMINDERS_ACCOUNTSallRead-side allowlist, comma-separated.
APPLE_REMINDERS_LISTSallRead-side allowlist, comma-separated.
APPLE_REMINDERS_DEFAULT_LISTReminders'List a new reminder goes to when none named.
APPLE_REMINDERS_INCLUDE_COMPLETEDoffInclude completed reminders in reads.
APPLE_REMINDERS_INDEX_MODEautoauto | ro | immutable | off.
APPLE_REMINDERS_STOREautoExplicit store path.
APPLE_REMINDERS_DEGRADED_MAX_REMINDERS500Cap when running without the index.
APPLE_REMINDERS_SEARCH_CACHE_TTL_MS30000How long the corpus stays warm.
APPLE_REMINDERS_ATTACHMENT_DIR~/DownloadsThe only directory attachments may reach.
APPLE_REMINDERS_OSASCRIPT_TIMEOUT_MS30000Sized for the first-run permission prompt.

Notes that will bite you

  • ~/Library/Reminders does not exist. Reminders lives under ~/Library/Group Containers/group.com.apple.reminders/. The path commonly cited elsewhere is wrong on a current macOS.
  • Writes always go through Apple Events, never the store. The Reminders app holds the SQLite file open and reconciles it against a server, so writing to it corrupts sync state.
  • Completed reminders are excluded by default. A search that "loses" a reminder has usually just found it completed; set APPLE_REMINDERS_INCLUDE_COMPLETED=1.

Licence

MIT.

Source: packages/reminders/README.md at commit 2398a54

Tools

0
SourceWeft has not started this package in its sandbox yet, so its tools are not known.

Version history

18
  1. v1.37.0LatestNov 7, 2026
  2. v1.36.2Nov 4, 2026
  3. v1.36.1Nov 3, 2026
  4. v1.36.0Oct 30, 2026
  5. v1.35.0Oct 30, 2026
  6. v1.34.0Oct 29, 2026
  7. v1.31.0Oct 26, 2026
  8. v1.30.0Oct 22, 2026
  9. v1.29.1Oct 21, 2026
  10. v1.28.0Oct 13, 2026
  11. v1.27.0Oct 13, 2026
  12. v1.26.0Oct 6, 2026
  13. v1.25.0Oct 3, 2026
  14. v1.24.1Sep 29, 2026
  15. v1.24.0Sep 27, 2026
  16. v1.23.0Sep 19, 2026
  17. v1.22.1Sep 16, 2026
  18. v1.21.1Sep 16, 2026

Score

50% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 days25 pts

    Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.

  • Auth declared10 pts

    Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.

  • Tools listed15 pts

    Answer tools/list without a credential, or ship a package that starts in a sandbox without one.

  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts