Related MCP Server Resources

Explore more AI models, providers, and integration options:

  • Explore AI Models
  • Explore AI Providers
  • Explore MCP Servers
  • LangDB Pricing
  • Documentation
  • AI Industry Blog
  • Kintone MCP Server
  • mcp-server-asana
  • Google Workspace MCP Server
  • Image Generation MCP Server
  • GitHub MCP Server
Back to MCP Servers
MCP iCal Server

MCP iCal Server

Public
kristofferv98/Mcp_calender_agent

Agent-powered MCP server for macOS that enables natural language calendar management with event creation, smart scheduling, intelligent updates, multi-calendar support, and seamless integration using a single stateful tool.

python
0 tools
May 30, 2025
Updated Jun 4, 2025

Supercharge Your AI with MCP iCal Server

MCP Server

Unlock the full potential of MCP iCal Server through LangDB's AI Gateway. Get enterprise-grade security, analytics, and seamless integration with zero configuration.

Unified API Access
Complete Tracing
Instant Setup
Get Started Now

Free tier available โ€ข No credit card required

Instant Setup
99.9% Uptime
10,000+Monthly Requests

MCP iCal Server

๐Ÿ—“๏ธ Agent-Powered Calendar Management for macOS

This project is based on Omar-V2/mcp-ical with a reimplemented user interaction layer using an agent-based approach.

๐ŸŒŸ Overview

Transform how you interact with your macOS calendar using a dedicated AI agent! This MCP iCal server leverages the OpenAI Agent SDK to provide a single, powerful entry point for all your calendar operations.

Unlike traditional MCP implementations that expose multiple tools, this server uses an agent-based approach:

  • ๐Ÿง  Single Tool Interface: Just one MCP tool (send_to_calendar_agent) that delegates to a specialized calendar agent
  • ๐Ÿค– Stateful Conversations: The agent maintains context between requests in the same session
  • ๐Ÿ”„ Zero-Config Operation: Natural language processing handled automatically by the specialized agent
You: "What's my schedule for next week?"
Claude: "Let me check that for you..."
[Calendar agent processes request and returns clean schedule]

You: "Add a lunch meeting with Sarah tomorrow at noon"
Claude: "Event created: Lunch with Sarah, tomorrow at 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:

"Move tomorrow's team meeting to 3 PM instead"
โ†“
โœจ 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 your 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 recommended
  • OpenAI API key (set as OPENAI_API_KEY environment variable)

Installation

Whilst this MCP server can be used with any MCP compatible client, the instructions below are for use with Claude for desktop.

  1. Clone and Setup
# Clone the repository git clone https://github.com/yourusername/mcp-ical.git cd mcp-ical # Install dependencies uv sync
  1. Configure Claude for Desktop with API Key

Create or edit ~/Library/Application\ Support/Claude/claude_desktop_config.json and include your OpenAI API key as an environment variable:

{ "mcpServers": { "mcp-ical": { "command": "uv", "args": [ "--directory", "/ABSOLUTE/PATH/TO/PARENT/FOLDER/mcp-ical", "run", "mcp-ical" ], "env": { "OPENAI_API_KEY": "your-api-key-here" } } } }
  1. 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
  1. 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

๐Ÿง  How It Works

This implementation uses a unique architecture:

  1. A single MCP tool (send_to_calendar_agent) is exposed to the client
  2. When invoked, this tool passes the request to a specialized calendar agent built with the OpenAI Agent SDK
  3. The agent processes the natural language request and calls the appropriate calendar operations
  4. Results are formatted and returned to the client

This approach offers several advantages:

  • Simplified client integration: Only one tool to invoke
  • Improved context handling: The agent maintains conversation state
  • More natural interactions: The specialized agent understands calendar-specific terminology and intent

โ“ How This Project Differs From The Original

This implementation maintains much of the core calendar functionality from Omar-V2/mcp-ical but completely reimplements the user interaction layer:

  1. Single Entry Point: Instead of exposing multiple MCP tools directly to the client, we've implemented a single entry point that delegates to an OpenAI-powered agent
  2. Agent-Based Processing: Added an OpenAI Agent to handle natural language understanding and translation to calendar operations
  3. Stateful Conversations: Added conversation context tracking between requests in the same session
  4. Simplified Client Integration: Clients only need to know about one tool instead of multiple calendar operations

The core calendar operations (event creation, listing, etc.) and macOS integration remain largely unchanged from the original implementation.

๐Ÿ› Known Issues

Recurring Events

  • Non-standard recurring schedules may not always be set correctly
  • Better results with more powerful LLM models
  • 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:

  1. Fork the repository
  2. Create your feature branch
  3. Commit your changes
  4. Push to the branch
  5. Open a Pull Request

๐Ÿ“ License

This project is licensed under the MIT License - see the LICENSE file for details.

๐Ÿ“ Acknowledgments

  • Original Project: Based on Omar-V2/mcp-ical by Omar-V2
  • Built with Model Context Protocol
  • Calendar integration built with PyObjC
  • Agent capabilities powered by OpenAI Agent SDK
Publicly Shared Threads0

Discover shared experiences

Shared threads will appear here, showcasing real-world applications and insights from the community. Check back soon for updates!

Share your threads to help others
Related MCPs5
  • Kintone MCP Server
    Kintone MCP Server

    Enables seamless integration with kintone via Model Context Protocol, offering comprehensive capabil...

    25 tools
    Added May 30, 2025
  • mcp-server-asana
    mcp-server-asana

    Enables seamless interaction with Asana API via Model Context Protocol, providing advanced task, pro...

    22 tools
    Added May 30, 2025
  • Google Workspace MCP Server
    Google Workspace MCP Server

    Provides Model Context Protocol (MCP) tools for seamless programmatic management of Gmail and Google...

    8 tools
    Added May 30, 2025
  • Image Generation MCP Server
    Image Generation MCP Server

    Enables high-quality image generation via Model Context Protocol with customizable dimensions, promp...

    1 tools
    Added May 30, 2025
  • GitHub MCP Server
    GitHub MCP Server

    Enhance Claude Desktop with seamless GitHub integration via Model Context Protocol, enabling natural...

    Added May 30, 2025