Caldav MCP
Caldav MCP is an MCP server that adds productivity tools to AI assistants such as Claude Desktop, Claude Code and Cursor. CalDAV calendar operations (list, create, update, delete events) as MCP tools. It has 105 GitHub stars, is released under the MIT license and runs locally with npx -y caldav-mcp.
github.com/dominik1001/caldav-mcp (opens in a new tab)
Data as of from the GitHub API and the official MCP registry; description from the project's repository. Report an error
- Needs API key
- Productivity
- MIT
- Active
Install Caldav MCP
Generated from the server's MCP registry entry. Replace your-value with your own values.
Claude Desktop
{
"mcpServers": {
"caldav-mcp": {
"command": "npx",
"args": [
"-y",
"caldav-mcp"
],
"env": {
"CALDAV_BASE_URL": "your-value",
"CALDAV_USERNAME": "your-value",
"CALDAV_PASSWORD": "your-value"
}
}
}
}Settings > Developer > Edit Config. macOS: ~/Library/Application Support/Claude/, Windows: %APPDATA%\Claude\. Restart Claude Desktop afterwards.
Claude Code
claude mcp add --env CALDAV_BASE_URL=your-value --env CALDAV_USERNAME=your-value --env CALDAV_PASSWORD=your-value --transport stdio caldav-mcp -- npx -y caldav-mcpCursor
{
"mcpServers": {
"caldav-mcp": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"caldav-mcp"
],
"env": {
"CALDAV_BASE_URL": "your-value",
"CALDAV_USERNAME": "your-value",
"CALDAV_PASSWORD": "your-value"
}
}
}
}Project file; use ~/.cursor/mcp.json to enable it in every project.
VS Code
{
"inputs": [
{
"type": "promptString",
"id": "caldav_password",
"description": "CALDAV_PASSWORD",
"password": true
}
],
"servers": {
"caldav-mcp": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"caldav-mcp"
],
"env": {
"CALDAV_BASE_URL": "your-value",
"CALDAV_USERNAME": "your-value",
"CALDAV_PASSWORD": "${input:caldav_password}"
}
}
}
}Config formats checked against the official docs on Oct 7, 2026: modelcontextprotocol.io (opens in a new tab), code.claude.com (opens in a new tab), cursor.com (opens in a new tab), code.visualstudio.com (opens in a new tab).
Environment variables
Variables the server reads at startup.
| Name | Required | Description |
|---|---|---|
CALDAV_BASE_URL | Yes | Base URL of the CalDAV server (e.g. https://caldav.example.com) |
CALDAV_USERNAME | Yes | Username for CalDAV authentication |
CALDAV_PASSWORDsecret | Yes | Password for CalDAV authentication |
Tools (25)
Parsed from the Tools section of the README; check the repository for the current list.
list-calendarsList all calendars returning both name and absolute URL. Pass a calendar's url unchanged as calendarUrl to the other…
list-eventsList all events between start and end date in the calendar specified by its URL
startstring — Start date (ISO 8601)
create-eventCreates an event in the calendar specified by its URL. For all-day events, set wholeDay to true.
locationstring (optional)
bydayarray of string (optional)
bymontharray of number (optional)
bymonthdayarray of number (optional)
countnumber (optional)
freqenum (DAILY | WEEKLY | MONTHLY | YEARLY) (optional)
intervalnumber (optional)
untilstring (optional)
summarystring
update-eventUpdates an existing event in the calendar specified by its URL. Only provided fields are changed.
delete-eventDeletes an event in the calendar specified by its URL
list-todosList tasks (VTODOs) in the calendar specified by its URL. By default returns only open tasks (NEEDS-ACTION and…
due_afterstring (optional) — Only tasks with a due date at or after this (ISO 8601).
due_beforestring (optional) — Only tasks with a due date at or before this (ISO 8601).
limitnumber (optional) — Max tasks to return (default 50, max 500)
offsetnumber (optional) — Tasks to skip (default 0)
statusenum (OPEN | ALL | NEEDS-ACTION | COMPLETED | IN-PROCESS | CANCELLED) (optional) — Filter by status.
create-todoCreates a task (VTODO) in the calendar specified by its URL. Only summary is required; a task may have no dates.
update-todoUpdates an existing task (VTODO) in the calendar specified by its URL. Only provided fields are changed.
complete-todoMarks a task (VTODO) as done. Sets its status to COMPLETED and records the completion time.
delete-todoDeletes a task (VTODO) in the calendar specified by its URL
About Caldav MCP
🗓️ A CalDAV Model Context Protocol (MCP) server to expose calendar operations as tools for AI assistants. Run the MCP server in development mode with auto-reload:
- caldav
- mcp-server
- typescript
- mcp
Similar MCP servers
More productivity MCP servers
Intervals Icu MCP
hhopke/intervals-icu-mcp
Read/write Intervals.icu MCP server: activities, wellness, calendar, gear, and workouts.
Active · last commit Oct 25, 2026
ProductivityPythonMCP Gsheets
freema/mcp-gsheets
MCP server for Google Sheets API — read, write, format, batch operations.
Active · last commit Oct 25, 2026
ProductivityTypeScriptObsidian Hybrid Search
flowing-abyss/obsidian-hybrid-search
Search Obsidian vaults with hybrid full-text, fuzzy, semantic, and graph retrieval.
Active · last commit Oct 26, 2026
ProductivityTypeScriptTendem MCP server
Toloka/tendem-mcp
Delegate tasks to vetted human experts - research, writing, analysis, and data work.
Maintained · last commit Aug 20, 2026
ProductivityPythonCodex Control Plane MCP
aresyn/codex-control-plane-mcp
Durable MCP control plane for long-running Codex Desktop tasks.
Active · last commit Sep 9, 2026
ProductivityPythonGoogle Calendar
pulsemcp/mcp-servers
MCP server for Google Calendar integration with service account support and domain-wide delegation.
Maintained · last commit Aug 30, 2026
OfficialProductivityTypeScript
How do I install the Caldav MCP MCP server?
Add the command npx -y caldav-mcp to your MCP client: put it in claude_desktop_config.json for Claude Desktop, run claude mcp add for Claude Code, or add it to .cursor/mcp.json (Cursor) or .vscode/mcp.json (VS Code). The snippets on this page are ready to paste.
Is Caldav MCP free?
The server is open source under the MIT license, so running it is free. It needs credentials (CALDAV_PASSWORD) for the service it connects to, which may require a paid account.
Is Caldav MCP actively maintained?
The most recent commit was on Oct 23, 2026. The latest release is v0.10.3, published Oct 23, 2026. appsgit only lists MCP servers with a commit in the last six months.