Caldav MCP
Unclaimed🗓️ A CalDAV Model Context Protocol (MCP) server to expose calendar operations as tools for AI assistants.
Install
npx tscUnclaimed listing
Is this your MCP server?
This listing was auto-indexed from the public record. Claim it to edit the page, set compatibility and unlock growth tools. Takes under two minutes.
Claim this serverTools (32)
byday
array of string (optional)
bymonth
array of number (optional)
bymonthday
array of number (optional)
calendarUrl
string
complete-todo
Marks a task (VTODO) as done. Sets its status to COMPLETED and records the completion time.
count
number (optional)
create-event
Creates an event in the calendar specified by its URL. For all-day events, set wholeDay to true. For a single-day all-day event, use start and end datetimes on the same calendar date; they do not need to be identical timestamps.
create-todo
Creates a task (VTODO) in the calendar specified by its URL. Only summary is required; a task may have no dates. Use due for a deadline and start for when work should begin.
delete-event
Deletes an event in the calendar specified by its URL
delete-todo
Deletes a task (VTODO) in the calendar specified by its URL
description
string (optional)
due
string (optional) — Due datetime (ISO 8601)
due_after
string (optional) — Only tasks with a due date at or after this (ISO 8601). Undated tasks are excluded when a due window is set.
due_before
string (optional) — Only tasks with a due date at or before this (ISO 8601). Undated tasks are excluded when a due window is set.
end
string — End date (ISO 8601)
freq
enum (DAILY WEEKLY MONTHLY YEARLY) (optional)
interval
number (optional)
limit
number (optional) — Max tasks to return (default 50, max 500)
list-calendars
List all calendars returning both name and URL
list-events
List all events between start and end date in the calendar specified by its URL
list-todos
List tasks (VTODOs) in the calendar specified by its URL. By default returns only open tasks (NEEDS-ACTION and IN-PROCESS), sorted by manual order then due date. Use status to include completed (COMPLETED) or all (ALL) tasks, and limit/offset to page through long lists.
location
string (optional)
offset
number (optional) — Tasks to skip (default 0)
recurrenceRule
object (optional)
start
string — Start date (ISO 8601)
status
enum (OPEN ALL NEEDS-ACTION COMPLETED IN-PROCESS CANCELLED) (optional) — Filter by status. OPEN (default) = NEEDS-ACTION + IN-PROCESS; ALL = everything; or an exact status (NEEDS-ACTION, COMPLETED, IN-PROCESS, CANCELLED).
summary
string
uid
string — Unique identifier of the event to update (obtained from list-events)
until
string (optional)
update-event
Updates an existing event in the calendar specified by its URL. Only provided fields are changed. For a one-day full-day event, set wholeDay to true and set start and end to the same calendar day.
update-todo
Updates an existing task (VTODO) in the calendar specified by its URL. Only provided fields are changed. To mark a task done, prefer the complete-todo tool.
wholeDay
boolean (optional) — Create as a whole-day event