ICS Calendar MCP Server
Allows fetching and parsing ICS calendar feeds from Google Calendar, with recurring event expansion and timezone-aware event handling.
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., "@ICS Calendar MCP Serverwhat are my events for 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.
ICS Calendar MCP Server
A lightweight MCP (Model Context Protocol) server for reading ICS calendar feeds with proper recurring event expansion.
Features
Fetch and parse ICS calendar feeds (Outlook, Google Calendar, etc.)
Properly expands recurring events using
recurring-ical-eventsCaches calendar data to reduce API calls
Timezone-aware event handling
Simple configuration via environment variables
Related MCP server: calendar-mcp
Installation
Using uvx (recommended)
uvx --from git+https://github.com/adamchrabaszcz/ics-calendar-mcp ics-calendar-mcpUsing pip
pip install git+https://github.com/adamchrabaszcz/ics-calendar-mcpFrom source
git clone https://github.com/adamchrabaszcz/ics-calendar-mcp
cd ics-calendar-mcp
pip install -e .Configuration
Set the following environment variables:
Variable | Required | Default | Description |
| Yes | - | URL to the ICS calendar feed |
| No | 300 | Cache duration in seconds |
| No | Europe/Warsaw | Default timezone for events |
Example: Outlook Calendar
export ICS_CALENDAR_URL="https://outlook.office365.com/owa/calendar/xxx@domain.com/yyy/calendar.ics"MCP Tools
get_events_today
Get all calendar events for today.
{
"date": "2024-03-10",
"events": [...],
"count": 3
}get_events_range
Get events within a date range.
Parameters:
start_date(string): Start date in ISO format (YYYY-MM-DD)end_date(string): End date in ISO format (YYYY-MM-DD)
{
"start_date": "2024-03-01",
"end_date": "2024-03-31",
"events": [...],
"count": 15
}get_event_details
Get detailed information about a specific event.
Parameters:
event_uid(string): The unique identifier of the event
list_recurring_events
List all recurring events with their recurrence rules.
{
"events": [
{
"uid": "event-123",
"summary": "Weekly Standup",
"recurrence": {
"frequency": "WEEKLY",
"days": ["MO", "TU", "WE", "TH", "FR"],
"description": "weekly on Monday, Tuesday, Wednesday, Thursday, Friday"
}
}
],
"count": 5
}search_events
Search for events matching a query.
Parameters:
query(string): Search termstart_date(string, optional): Start date for search rangeend_date(string, optional): End date for search range
Claude Code Configuration
Add to your ~/.claude/mcp.json:
{
"mcpServers": {
"ics-calendar": {
"command": "uvx",
"args": ["--from", "git+https://github.com/adamchrabaszcz/ics-calendar-mcp", "ics-calendar-mcp"],
"env": {
"ICS_CALENDAR_URL": "https://your-calendar-url.ics"
}
}
}
}Development
Setup
git clone https://github.com/adamchrabaszcz/ics-calendar-mcp
cd ics-calendar-mcp
pip install -e ".[dev]"Run tests
pytest tests/Run locally
ICS_CALENDAR_URL="https://your-calendar.ics" python -m ics_calendar_mcpLicense
MIT
This server cannot be deployed
Maintenance
Related MCP Connectors
Extracts calendar events from natural-language text, with .ics and calendar links.
Calendar API for AI agents: events, availability, Google/Microsoft setup, scheduling, and iCal.
Publish public calendars and events others subscribe to: RSVPs, feeds and add-to-calendar links.
Read the .ics your calendar exports: events in a window, free-busy, double bookings, export.
Related MCP Servers
- FlicenseAqualityDmaintenanceEnables access to Google Calendar events from a public ICS feed, allowing users to list and search calendar events within specific date ranges with automatic handling of recurring events.2-
- AlicenseNot gradedqualityCmaintenanceProvides read-only access to calendar events from iCal feeds, enabling agents to query schedules, search events, and check availability via natural language.AGPL 3.0
- FlicenseNot gradedqualityCmaintenanceEnables reading Proton Calendar events via a secret ICS share link, with tools to list, search, and get event details.-
- FlicenseNot gradedqualityBmaintenanceEnables interacting with CalDAV calendars (like iCloud) through natural language, supporting reading and writing events.1-