MCP iCal Server
by Omar-v2
A Model Context Protocol Server that allows you to interact with your MacOS Calendar through natural language.
What is MCP iCal Server
MCP iCal Server
๐๏ธ Natural Language Calendar Management for macOS
๐ Overview
Transform how you interact with your macOS calendar using natural language! The mcp-ical server leverages the Model Context Protocol (MCP) to turn your calendar management into a conversational experience.
You: "What's my schedule for next week?"
Claude: "Let me check that for you..."
[Displays a clean overview of your upcoming week]
You: "Add a lunch meeting with Sarah tomorrow at noon"
Claude: "โจ ๐
Created: Lunch with Sarah Tomorrow, 12:00 PM"
โจ Features
๐ Event Creation
Transform natural language into calendar events instantly!
"Schedule a team lunch next Thursday at 1 PM at Bistro Garden"
โ
๐ Created: Team Lunch
๐
Thursday, 1:00 PM
๐ Bistro Garden
Supported Features:
- Custom calendar selection
- Location and notes
- Smart reminders
- Recurring events
Power User Examples:
๐ Recurring Events:
"Set up my weekly team sync every Monday at 9 AM with a 15-minute reminder"
๐ Detailed Events:
"Schedule a product review meeting tomorrow from 2-4 PM in the Engineering calendar,
add notes about reviewing Q1 metrics, and remind me 1 hour before"
๐ฑ Multi-Calendar Support:
"Add a dentist appointment to my Personal calendar for next Wednesday at 3 PM"
๐ Smart Schedule Management & Availability
Quick access to your schedule with natural queries:
"What's on my calendar for next week?"
โ
๐ Shows your upcoming events with smart formatting
"When am I free to schedule a 2-hour meeting next Tuesday?"
โ
๐ Available time slots found:
โข Tuesday 10:00 AM - 12:00 PM
โข Tuesday 2:00 PM - 4:00 PM
โ๏ธ Intelligent Event Updates
Modify events naturally:
Before: "Move tomorrow's team meeting to 3 PM instead"
โ
After: โจ Meeting rescheduled to 3:00 PM
Update Capabilities:
- Time and date modifications
- Calendar transfers
- Location updates
- Note additions
- Reminder adjustments
- Recurring pattern changes
๐ Calendar Management
- View all available calendars
- Smart calendar suggestions
- Seamless Google Calendar integration when configured with iCloud
๐ก Pro Tip: Since you can create events in custom calendars, if you have your Google Calendar synced with you iCloud Calendar, you can use this MCP server to create events in your Google Calendar too! Just specify the google calendar when creating/updating events
๐ Quick Start
๐ก Note: While these instructions focus on setting up the MCP server with Claude for Desktop, this server can be used with any MCP-compatible client. For more details on using different clients, see the MCP documentation.
Prerequisites
- uv package manager
- macOS with Calendar app configured
- An MCP client - Claude for desktop is recommend
Installation
Whilst this MCP server can be used with any MCP compatible client, the instructions below are for use with Claude for desktop.
- Clone and Setup
# Clone the repository
git clone https://github.com/yourusername/mcp-ical.git
cd mcp-ical
# Install dependencies
uv sync
- Configure Claude for Desktop
Create or edit ~/Library/Application\ Support/Claude/claude_desktop_config.json
:
{
"mcpServers": {
"mcp-ical": {
"command": "uv",
"args": [
"--directory",
"/ABSOLUTE/PATH/TO/PARENT/FOLDER/mcp-ical",
"run",
"mcp-ical"
]
}
}
}
- Launch Claude for Calendar Access
โ ๏ธ Critical: Claude must be launched from the terminal to properly request calendar permissions. Launching directly from Finder will not trigger the permissions prompt.
/Applications/Claude.app/Contents/MacOS/Claude
- Start Using!
Try: "What's my schedule looking like for next week?"
๐ Note: When you first use a calendar-related command, macOS will prompt for calendar access. This prompt will only appear if you launched Claude from the terminal as specified above.
๐งช Testing
โ ๏ธ Warning: Tests will create temporary calendars and events. While cleanup is automatic, only run tests in development environments.
# Install dev dependencies
uv sync --dev
# Run test suite
uv run pytest tests
๐ Known Issues
Recurring Events
- Non-standard recurring schedules may not always be set correctly
- Better results with Claude 3.5 Sonnet compared to Haiku
- Reminder timing for recurring all-day events may be off by one day
๐ค Contributing
Feedback and contributions are welcomed! Here's how you can help:
- Fork the repository
- Create your feature branch
- Commit your changes
- Push to the branch
- Open a Pull Request
๐ License
This project is licensed under the MIT License - see the LICENSE file for details.
๐ Acknowledgments
- Built with Model Context Protocol
- MacOS Calendar integration built with PyObjC
Leave a Comment
Comments section will be available soon. Stay tuned!
Frequently Asked Questions
What is MCP?
MCP (Model Context Protocol) is an open protocol that standardizes how applications provide context to LLMs. Think of MCP like a USB-C port for AI applications, providing a standardized way to connect AI models to different data sources and tools.
What are MCP Servers?
MCP Servers are lightweight programs that expose specific capabilities through the standardized Model Context Protocol. They act as bridges between LLMs like Claude and various data sources or services, allowing secure access to files, databases, APIs, and other resources.
How do MCP Servers work?
MCP Servers follow a client-server architecture where a host application (like Claude Desktop) connects to multiple servers. Each server provides specific functionality through standardized endpoints and protocols, enabling Claude to access data and perform actions through the standardized protocol.
Are MCP Servers secure?
Yes, MCP Servers are designed with security in mind. They run locally with explicit configuration and permissions, require user approval for actions, and include built-in security features to prevent unauthorized access and ensure data privacy.
Related MCP Servers
Ableton Live MCP Server
MCP Server implementation for Ableton Live OSC control
Airbnb MCP Server
AI Agent Marketplace Index Search MCP Server
MCP Server for AI Agent Marketplace Index from DeepNLP
Algorand MCP Implementation
Algorand Model Context Protocol (Server & Client)
mcp-server-apache-airflow
pypi.org/project/mcp-server-apache-airflow/
airtable-mcp-server
๐๏ธ๐ค Airtable Model Context Protocol Server, for allowing AI systems to interact with your Airtable bases
Airtable MCP Server
Search, create and update Airtable bases, tables, fields, and records using Claude Desktop and MCP (Model Context Protocol) clients
Alphavantage MCP Server
A MCP server for the stock market data API, Alphavantage API.
Amadeus MCP Server
Amadeus MCP(Model Context Protocol) Server
Anki MCP Server
An MCP server for Anki
Submit Your MCP Server
Share your MCP server with the community
Submit Now