mcp-nextcloud-calendar

ISC License
35
2

Integrations

  • Includes support for Ko-fi donations through a button link in the README.

  • Provides tools for interacting with Nextcloud Calendar, enabling calendar management (listing, creating, updating, deleting calendars) and event management (listing, creating, retrieving, updating, deleting events), with ADHD-friendly organization features.

MCP Nextcloud-Kalender

Ein Model Context Protocol (MCP)-Server für die Nextcloud-Kalenderintegration.

Merkmale

  • Kalender aus Nextcloud holen
  • ADHS-freundliche Organisationsfunktionen
  • MCP-Protokollunterstützung (Streamable HTTP und Legacy HTTP+SSE)

Verwendung

Verwendung mit npx

Am einfachsten lässt sich dieses Paket mit npx verwenden:

npx mcp-nextcloud-calendar

Installation

Für die Entwicklung oder lokale Installation:

# Install globally npm install -g mcp-nextcloud-calendar # Or install locally npm install mcp-nextcloud-calendar

MCP-Client-Konfiguration

Zur Verwendung mit einem MCP-Client (wie Claude) fügen Sie diese Konfiguration zu Ihren MCP-Clienteinstellungen hinzu:

{ "mcpServers": { "nextcloud-calendar": { "command": "npx", "args": ["-y", "mcp-nextcloud-calendar"], "env": { "NEXTCLOUD_BASE_URL": "https://your-nextcloud-server.com", "NEXTCLOUD_USERNAME": "your-username", "NEXTCLOUD_APP_TOKEN": "your-app-token" } } } }
Angeben einer Version

Sie können eine bestimmte Version des Pakets anheften:

{ "mcpServers": { "nextcloud-calendar": { "command": "npx", "args": ["-y", "mcp-nextcloud-calendar@0.1.0"], "env": { "NEXTCLOUD_BASE_URL": "https://your-nextcloud-server.com", "NEXTCLOUD_USERNAME": "your-username", "NEXTCLOUD_APP_TOKEN": "your-app-token" } } } }

Konfiguration

Umgebungsvariablen

Der Server verwendet diese Umgebungsvariablen, wenn möglich mit Standardwerten:

VariableBeschreibungStandardErforderlich
HAFENServer-Port3001NEIN
SERVERNAMEMCP-ServerkennungNextcloud-Kalender-ServerNEIN
NODE_ENVUmgebung (Entwicklung/Produktion)EntwicklungNEIN
NEXTCLOUD_BASE_URLIhre Nextcloud-Server-URL-Ja
NEXTCLOUD_USERNAMEIhr Nextcloud-Benutzername-Ja
NEXTCLOUD_APP_TOKENIhr Nextcloud-App-Token-Ja
KEEP_ALIVE_INTERVALLKeep-Alive-Intervall (ms)30000NEIN

Entwicklungs-Setup

Für die lokale Entwicklung:

  1. Klonen Sie das Repository
  2. Installieren Sie Abhängigkeiten:
npm install
  1. Erstellen Sie eine .env Datei im Projektstammverzeichnis:
cp .env.example .env
  1. Bearbeiten Sie die .env Datei mit Ihren Nextcloud-Anmeldeinformationen.

Erhalten eines Nextcloud-App-Tokens

  1. Melden Sie sich bei Ihrer Nextcloud-Instanz an
  2. Gehen Sie zu Einstellungen → Sicherheit → App-Passwörter
  3. Erstellen Sie ein neues App-Passwort mit einem Namen wie „MCP-Kalender“
  4. Kopieren Sie das generierte Token in Ihre .env Datei

Entwicklung

# Build the project npm run build # Run in development mode npm run dev # Run tests npm run test # Run linting npm run lint # Format code npm run format

API-Endpunkte

  • /mcp – Primärer MCP-Endpunkt (Streamabler HTTP-Transport)
  • /sse und /messages – Legacy-MCP-Endpunkte (HTTP+SSE-Transport)
  • GET /health – Endpunkt für die Integritätsprüfung
  • GET /api/calendars - Alle Kalender auflisten

MCP-Tools

Die folgenden MCP-Tools sind registriert und für Kunden verfügbar:

Kalenderverwaltung

WerkzeugBeschreibungParameter
listCalendarsRuft alle verfügbaren Kalender abKeiner
createCalendarErstellt einen neuen KalenderdisplayName (erforderlich), color (optional), category (optional), focusPriority (optional)
updateCalendarAktualisiert einen vorhandenen Kalenderid (erforderlich), displayName (optional), color (optional), category (optional), focusPriority (optional)
deleteCalendarLöscht einen Kalenderid (erforderlich)

⚠️ Berechtigungswarnung : Die Tools updateCalendar und deleteCalendar erfordern möglicherweise spezielle Berechtigungen in Ihrer Nextcloud-Instanz. Kalendervorgänge unterliegen dem Berechtigungssystem von Nextcloud.

Veranstaltungsmanagement

WerkzeugBeschreibungParameter
listEventsRuft Ereignisse für einen Kalender abcalendarId (erforderlich), start (optional), end (optional)
getEventRuft ein bestimmtes Ereignis abcalendarId (erforderlich), eventId (erforderlich)
createEventErstellt ein neues EreigniscalendarId (erforderlich), summary (erforderlich), start (erforderlich), end (erforderlich), description (optional), location (optional)
updateEventAktualisiert ein vorhandenes EreigniscalendarId (erforderlich), eventId (erforderlich), [plus alle zu aktualisierenden Ereigniseigenschaften]
deleteEventLöscht ein EreigniscalendarId (erforderlich), eventId (erforderlich)

Bekannte Probleme und Einschränkungen

Hinweis : Dieses Paket befindet sich derzeit in der frühen Entwicklungsphase (0.1.x). APIs und Tools können sich in zukünftigen Versionen ohne vorherige Ankündigung ändern.

  • Für die Aktualisierungs- und Löschvorgänge im Kalender sind möglicherweise bestimmte Berechtigungen in Ihrer Nextcloud-Instanz erforderlich.
  • Die Fehlerbehandlung für bestimmte Nextcloud-Fehlercodes wird noch verbessert
  • Bei großen Kalendern mit vielen Ereignissen kann es zu Leistungsproblemen kommen

Bitte melden Sie alle Probleme im GitHub-Repository.

Lizenz

ISC

Related MCP Servers

  • A
    security
    A
    license
    A
    quality
    Provides tools for interacting with Gmail and Calendar APIs. This server enables you to manage your emails and calendar events programmatically through the MCP interface.
    Last updated -
    8
    13
    JavaScript
    MIT License
  • -
    security
    F
    license
    -
    quality
    An MCP server that enables scheduling, updating, deleting, and listing calendar appointments through Cal.com's Calendar API.
    Last updated -
    JavaScript
  • -
    security
    F
    license
    -
    quality
    A Model Completion Prompt (MCP) plugin that allows users to create events in Google Calendar with customizable attributes like times, description, location, attendees, and timezone.
    Last updated -
    Python
    • Linux
    • Apple

View all related MCP servers

ID: dkbdpuhi9u