mcp-server-apple-reminders
Language:
JavaScript
Stars:
32
Forks:
1
mcp-server-apple-reminders
An MCP server for interacting with Apple Reminders on macOS. This server provides tools to create and manage reminders through the Model Context Protocol.
Features
- Create new reminders with titles and optional due dates
- Attach notes to reminders
- List all reminders or reminders from a specific list
- List all available reminder lists
- Natural language date parsing support
- Native Swift integration for better performance and reliability
Requirements
- macOS with Apple Reminders app
- Bun runtime
- Node.js and TypeScript support
- Swift compiler (swiftc) for native components
Installation
- Install dependencies:
bun install
- Build Swift components:
bun run build:swift
- Run the setup script:
bun run setup.ts
This will add the server to your Claude MCP configuration.
Available Tools
-
create_reminder
- Create a new reminder with title and optional due date
- Parameters:
title
: Title of the reminder (required)dueDate
: Optional due date in format 'YYYY-MM-DD HH:mm:ss' (e.g., "2025-03-12 10:00:00")list
: Optional name of the reminders listnote
: Optional note text to attach to the reminder
-
list_reminders
- List all reminders or reminders from a specific list
- Parameters:
list
: Optional name of the reminders list to showshowCompleted
: Optional boolean to show completed reminders (default: false)
-
list_reminder_lists
- List all available reminder lists
- No parameters required
Project Structure
.
├── bin/ # Compiled binaries
├── src/ # Source code
│ ├── index.ts # Application entry point
│ ├── server/ # Server configuration
│ ├── tools/ # MCP tools implementation
│ │ ├── index.ts # Tools exports
│ │ ├── definitions.ts # Tool definitions and schemas
│ │ ├── handlers.ts # Tool implementation logic
│ │ └── handlers.test.ts # Tool tests
│ ├── types/ # TypeScript type definitions
│ ├── utils/ # Utility functions
│ │ ├── reminders.ts # Core reminders functionality
│ │ ├── logger.ts # Logging utilities
│ │ ├── applescript.ts # AppleScript integration
│ │ └── date.ts # Date parsing utilities
│ └── swift/ # Native Swift integration
│ ├── bin/ # Compiled Swift binaries
│ ├── GetReminders.swift # Swift source for reminders
│ ├── build.sh # Swift build script
│ └── Info.plist # macOS permissions config
├── package.json # Project and dependency config
├── setup.ts # MCP server setup script
├── tsconfig.json # TypeScript configuration
└── README.md # Project documentation
Tech Stack
- Bun - JavaScript runtime
- TypeScript - Type safety
- Model Context Protocol SDK - Server implementation
- Swift - Native integration with Apple's EventKit
License
MIT License
Copyright (c) 2024 Frad Lee
This project was created using bun init
in bun v1.2.2. Bun is a fast all-in-one JavaScript runtime.
Publisher info
Frad LEE
Designer who codes, with a focus on XR and AI.
More MCP servers built with JavaScript
MCP Server Semgrep is a [Model Context Protocol](https://modelcontextprotocol.io) compliant server that integrates the powerful Semgrep static analysis tool with AI assistants like Anthropic Claude. It enables advanced code analysis, security vulnerability detection, and code quality improvements directly through a conversational interface.
This MCP server provides email sending functionality using Protonmail's SMTP service. It allows both Claude Desktop and Cline VSCode extension to send emails on your behalf using your Protonmail credentials.
Model Context Protocol server that integrates AgentQL's data extraction capabilities.