calendar-mcp

calendar-mcp

Provider-agnostic CalDAV calendar MCP server that connects any CalDAV calendar to AI assistants, enabling calendar operations like listing, creating, updating, and deleting events.

Category
Visit Server

README

calendar-mcp

Provider-agnostic CalDAV calendar MCP server for AI assistants. Connect any CalDAV calendar to Claude Desktop, Cursor, VS Code, or any MCP-compatible client.

Features

  • 10 calendar tools: list_calendars, get_events, get_event, today, upcoming, search_events, free_busy, create_event, update_event, delete_event
  • Provider auto-detection: Automatically configures Google, Apple iCloud, Nextcloud, Fastmail from your CalDAV URL
  • Any CalDAV server: Works with Radicale, Baikal, ownCloud, or any standard CalDAV provider
  • Read-only mode: Optional safety mode that disables all write operations
  • Zero external dependencies: Pure Python stdlib for CalDAV/iCal (only mcp SDK required)
  • RFC 5545 compliant: Proper iCalendar parsing with recurrence rules, durations, timezones, attendees

Quick Start

pip install calendar-mcp

Configuration

Set three environment variables:

export CALENDAR_MCP_URL="https://caldav.icloud.com/"
export CALENDAR_MCP_USERNAME="you@icloud.com"
export CALENDAR_MCP_PASSWORD="your-app-password"

All Environment Variables

Variable Required Default Description
CALENDAR_MCP_URL Yes — CalDAV server URL
CALENDAR_MCP_USERNAME Yes — Username (usually email)
CALENDAR_MCP_PASSWORD Yes — Password or app-specific password
CALENDAR_MCP_PROVIDER No Auto-detected Force provider: google, apple, nextcloud, fastmail, generic
CALENDAR_MCP_CALENDAR_ID No First calendar Default calendar name
CALENDAR_MCP_READ_ONLY No false Set to true to disable write operations
CALENDAR_MCP_TIMEZONE No UTC Default timezone

Provider Auto-Detection

URL Pattern Provider Default CalDAV URL
googleusercontent.com google https://apidata.googleusercontent.com/caldav/v2/
caldav.icloud.com apple https://caldav.icloud.com/
office365.com outlook https://outlook.office365.com/caldav/v2/
caldav.fastmail.com fastmail https://caldav.fastmail.com/dav/calendars/user/{email}/
nextcloud, owncloud nextcloud (your server URL)
anything else generic (your server URL)

Client Configuration

Claude Desktop

{
  "mcpServers": {
    "calendar": {
      "command": "calendar-mcp",
      "env": {
        "CALENDAR_MCP_URL": "https://caldav.icloud.com/",
        "CALENDAR_MCP_USERNAME": "you@icloud.com",
        "CALENDAR_MCP_PASSWORD": "your-app-password"
      }
    }
  }
}

Claude Code

claude mcp add -e CALENDAR_MCP_URL=https://caldav.icloud.com/ -e CALENDAR_MCP_USERNAME=you@icloud.com -e CALENDAR_MCP_PASSWORD=your-app-password calendar calendar-mcp

Tools

Tool Description Write?
list_calendars List all calendars on the account No
get_events Get events in a date range (configurable days ahead/back) No
get_event Get a single event by UID No
today Get all events for today No
upcoming Get events in the next N hours No
search_events Search by text in title, description, location No
free_busy Free/busy summary with total hours No
create_event Create a new event Yes
update_event Update an existing event (partial updates) Yes
delete_event Delete an event by UID Yes

Write tools are disabled when CALENDAR_MCP_READ_ONLY=true.

License

Dual-licensed:

<!-- mcp-name: io.github.p-w-4-z/calendar-mcp -->

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured