Labsco
MCP SERVER

CalDAV MCP

by dominik1001

Put your CalDAV calendar in reach of an assistant: list what is there, add events, change them, delete by UID.

Calendars, Meetings & Scheduling
Summary
Calendar work against your own server rather than a vendor's API.

Anything speaking CalDAV is handled the same way, because a calendar is identified by the URL the listing hands back and not by a provider name. All-day events and recurrence are explicit arguments, which is what stops an assistant from approximating them with a long single event.

What it is

A CalDAV client exposed as MCP tools. It connects to a CalDAV server with a base URL, username and password, lists the calendars on it, and reads or writes events in whichever one you address by URL.

What you get
  • Every calendar on the server, with both name and URL (list-calendars)
  • Events between an ISO 8601 start and end in a named calendar, each carrying uid, summary, start, end and optionally description and location (list-events)
  • Events created in a named calendar, with wholeDay for all-day entries and recurrenceRule for repeats (create-event)
  • Existing events updated (update-event)
  • Events deleted by UID
Requirements

Npx caldav-mcp, with the CalDAV server's base URL, a username and a password set in the environment. Calendars are addressed by the calendarUrl that list-calendars returns, so that is always the first call.

Setup effort

One command plus a key — npx -y caldav-mcp, then supply credentials