Labsco
MCP SERVER

Nextcloud Calendar

by Cheffromspace

Read and edit Nextcloud calendars and events from an assistant.

Calendars, Meetings & Scheduling
Summary
An app password, not your Nextcloud login.

The calendar write tools inherit Nextcloud's own permission model, so updateCalendar and deleteCalendar can fail on an instance where your account lacks those rights — worth testing on one calendar before pointing an agent at the lot. The package is early: the project marks the 0.1.x line as one where tools may change.

What it is

A TypeScript server over a Nextcloud instance's calendars. Nine tools across calendar and event management, served over Streamable HTTP with a legacy HTTP and SSE path alongside it.

What you get
  • Every accessible calendar listed — listCalendars
  • Calendars created, updated and deleted, with display name, colour, category and focus priority — createCalendar, updateCalendar, deleteCalendar
  • Events for a calendar over an optional date range, and one event fetched by id — listEvents, getEvent
  • Events created with summary, start, end, and optional description and location — createEvent
  • Events updated and deleted — updateEvent, deleteEvent
  • A /health endpoint and a plain GET /api/calendars listing alongside the MCP endpoint
Requirements

NEXTCLOUD_BASE_URL, NEXTCLOUD_USERNAME and NEXTCLOUD_APP_TOKEN — create the token under Settings, Security, App Passwords rather than using your login password. Run it with npx mcp-nextcloud-calendar. PORT (default 3001), SERVER_NAME and KEEP_ALIVE_INTERVAL (default 30000) are optional.

Setup effort

One command plus a key — npx mcp-nextcloud-calendar, then supply credentials