J

mcp-server-apple-reminders

...
Created 2/14/2025byFradSer

Language:

JavaScript

Stars:

32

Forks:

1

mcp-server-apple-reminders

Twitter Follow

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

  1. Install dependencies:
bun install
  1. Build Swift components:
bun run build:swift
  1. Run the setup script:
bun run setup.ts

This will add the server to your Claude MCP configuration.

Available Tools

  1. 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 list
      • note: Optional note text to attach to the reminder
  2. list_reminders

    • List all reminders or reminders from a specific list
    • Parameters:
      • list: Optional name of the reminders list to show
      • showCompleted: Optional boolean to show completed reminders (default: false)
  3. 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

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.

Last updated: 3/22/2025

Publisher info

FradSer's avatar

Frad LEE

Designer who codes, with a focus on XR and AI.

175
followers
70
following
103
repos

More MCP servers built with JavaScript

mcp-server-tmdb

MCP Server with TMDB

By Laksh-star23
mcp-server-chinarailway

By other-blowsnow6
mcp-server

By integration-app15