LabscoMCP early access ↗
dominik1001MCP SERVER · OFFICIAL PROJECT

CalDAV MCP

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

by dominik1001 ↗Calendars, Meetings & Scheduling✓ Official

LABSCO 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 credentials — npx -y caldav-mcp, then supply credentials