icalPal MCP Server
Provides access to macOS Calendar and Reminders data, enabling queries about events, tasks, calendars, and accounts through the native macOS applications
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@icalPal MCP Serverwhat meetings do I have today?"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
icalPal MCP Server
A Model Context Protocol (MCP) server that provides access to macOS Calendar and Reminders data via the icalPal gem.
Overview
This MCP server allows AI assistants to interact with your macOS Calendar and Reminders applications, enabling queries about events, tasks, calendars, and accounts. It uses the icalPal Ruby gem under the hood to access the Calendar and Reminders databases.
Related MCP server: Apple EventKit MCP Server
Prerequisites
macOS system with Calendar and Reminders apps
Ruby with the icalPal gem installed
Python 3.8+ with FastMCP
Full Disk Access permission for your terminal/application
Installing icalPal
gem install icalPalInstalling Python Dependencies
pip install fastmcpOr using uv:
uv syncSetup
1. Full Disk Access Permission
The icalPal gem requires Full Disk Access to read the Calendar and Reminders databases. Grant this permission by:
Open System Settings > Privacy & Security > Full Disk Access
Add your terminal application (Terminal.app, iTerm2, etc.) or the application running the MCP server
Restart your terminal/application
2. Running the Server
Direct Python execution:
python main.pyUsing Docker:
docker-compose upThe server will start on port 8000 by default, or you can configure it using environment variables:
MCP_PORT: Port number (default: 8000)MCP_TRANSPORT: Transport type (default: "sse")
Available Tools
Calendar Events
get_events- Retrieve calendar events with various filters (date range, calendars, etc.)get_events_today- Get events occurring todayget_events_now- Get events occurring right now
Tasks/Reminders
get_tasks- Retrieve tasks/reminders with filtersget_dated_tasks- Get tasks with due datesget_undated_tasks- Get tasks without due dates
Calendar Management
get_calendars- List available calendarsget_accounts- List calendar accounts
Error Handling
The server provides informative error messages for common issues:
Permission errors: Guidance on enabling Full Disk Access
Database access errors: Information about Calendar database location
Invalid arguments: Clear descriptions of parameter requirements
Running in Development
# Install dependencies
uv sync
# Run the server
uv run python main.pyDocker Development
# Build and run with Docker Compose
docker-compose up --build
# Run in detached mode
docker-compose up -dThis server cannot be deployed
Maintenance
Related MCP Connectors
Connects ChatGPT to your Apple Calendar via a local Mac agent + Vercel relay
Calendar API for AI agents: events, availability, Google/Microsoft setup, scheduling, and iCal.
Manage Google, Outlook & Apple calendars and create private sync rules from chat.
GDPR-compliant calendar access for AI assistants: read, create, edit, RSVP. Google, MS 365, Apple.
Related MCP Servers
- AlicenseNot gradedqualityCmaintenanceEnables natural language calendar management through Fantastical on macOS, allowing users to create events, view schedules, search appointments, and navigate their calendar without leaving their AI conversation.15 npm17MIT
- FlicenseNot gradedqualityFmaintenanceProvides Claude Desktop with access to Apple Calendar and Reminders on macOS for managing schedules and tasks through natural language. It supports comprehensive operations like creating, editing, and searching events and reminders, along with a custom hashtag-based tagging system.3-
- AlicenseNot gradedqualityDmaintenanceEnables AI assistants to access and interact with macOS Calendar.app events and reminders, including viewing, searching, and filtering calendar data.2MIT
- AlicenseAqualityDmaintenanceEnables AI assistants to read and create Fantastical calendar events on macOS using local database access and URL schemes, working entirely offline without API keys or network access.166MIT