Radicale CalDAV MCP Server
Radicale CalDAV MCP Server
Ein Model Context Protocol (MCP)-Server, erstellt mit FastMCP bzw. dem offiziellen MCP Python SDK, der LLM-Agenten (wie z. B. Nous Hermes, Claude, OpenAI) mit einem selbst gehosteten Radicale CalDAV-Kalender und einer Aufgabenverwaltung verbindet.
Funktionen
📅 Kalendertermine (VEVENT)
get_events: Termine in Datums-/Zeitbereichen abfragen, mit optionaler Stichwortsuche über Zusammenfassung, Beschreibung und Ort.get_free_busy_slots: Freie, nicht gebuchte Zeitfenster innerhalb konfigurierbarer Geschäftszeiten (z. B. 9:00–17:00 Uhr) in einer beliebigen IANA-Zeitzone berechnen.create_event: Neue Termine mit automatischer ISO-Validierung, Teilnehmereinladungen und Überlappungs-/Konflikterkennung planen.update_event: Vorhandene Termine anhand der UID ändern, ohne unberührte Felder zu überschreiben.delete_event: Termine anhand der UID entfernen.
📝 Aufgaben & To-Dos (VTODO)
list_todos: Anstehende oder abgeschlossene Aufgaben abrufen, gefiltert nach Status (NEEDS-ACTION,COMPLETED,IN-PROCESS,CANCELLED,ALL).create_todo: Aufgaben mit Fälligkeitsdatum, Prioritätsstufen (1–9) und Beschreibungen erstellen.complete_todo: Aufgaben als abgeschlossen markieren, mit automatisch erzeugtem Abschluss-Zeitstempel.
🚀 Transporte & Bereitstellung
STDIO-Transport: Standardtransport für die lokale Ausführung (z. B. Claude Desktop, lokale Agenten).
SSE-Transport (Server-Sent Events): Über HTTP für entfernte, dauerhaft laufende Bereitstellungen (z. B. Coolify, Docker).
Related MCP server: calendar-mcp
Konfiguration
Konfigurieren Sie den Server über Umgebungsvariablen oder eine .env-Datei:
Variable | Standard | Beschreibung |
|
| Basis-URL zu Radicale (z. B. |
|
| CalDAV-Benutzername |
|
| CalDAV-Passwort |
|
| Ziel-Kalender-slug / Sammlungsname |
|
| Standard-IANA-Zeitzone |
|
| Transportprotokoll: |
|
| Host-Schnittstelle (Interface) für den SSE-Modus |
|
| Portnummer für den SSE-Modus |
Lokaler Schnellstart
1. Installation
# Clone and enter directory
cd radicale-mcp-server
# Create virtual environment
python3 -m venv .venv
source .venv/bin/activate
# Install dependencies
pip install -r requirements.txt2. Umgebung konfigurieren
Kopieren Sie .env.example nach .env und setzen Sie Ihre Zugangsdaten ein:
cp .env.example .env3. Lokal ausführen
STDO-Modus (lokale Pipe)
python server.py --stdioSSE-Modus (HTTP-Server)
python server.py --sse --host 0.0.0.0 --port 80004. Test-Client ausführen
# Test via STDIO
python test_client.py --mode stdio
# Test via SSE (when server is running)
python test_client.py --mode sse --sse-url http://localhost:8000/sse5. Automatisierte Tests ausführen
pytest -vBereitstellung auf Coolify
Stellen Sie den MCP-Server ohne Konfiguration auf Coolify bereit:
Erstellen Sie in Coolify einen neuen Dienst: Docker Compose oder Dockerfile.
Verweisen Sie ihn auf dieses Repository oder fügen Sie die
docker-compose.ymlein.Setzen Sie die folgenden Umgebungsvariablen in der Coolify-Oberfläche:
RADICALE_BASE_URL=https://radicale.dubblu.appRADICALE_USERNAME=mvela581RADICALE_PASSWORD=your_passwordRADICALE_CALENDAR_SLUG=seuspeptidesDEFAULT_TIMEZONE=America/New_YorkMCP_TRANSPORT=sseMCP_PORT=8000
Geben Sie Port
8000über den Reverse-Proxy von Coolify mit Ihrer Domain frei (z. B.https://mcp-calendar.yourdomain.com).Ihr SSE-Endpunkt ist erreichbar unter:
https://mcp-calendar.yourdomain.com/sseLLM-Agenten-Integration (Nous Hermes / Claude Desktop)
Konfiguration für Claude Desktop
Fügen Sie Ihrer claude_desktop_config.json Folgendes hinzu:
Lokales STDIO:
{
"mcpServers": {
"radicale_calendar": {
"command": "/path/to/radicale-mcp-server/.venv/bin/python",
"args": ["/path/to/radicale-mcp-server/server.py", "--stdio"],
"env": {
"RADICALE_BASE_URL": "https://radicale.dubblu.app",
"RADICALE_USERNAME": "mvela581",
"RADICALE_PASSWORD": "your_password",
"RADICALE_CALENDAR_SLUG": "seuspeptides",
"DEFAULT_TIMEZONE": "America/New_York"
}
}
}
}Remote-SSE (Coolify):
{
"mcpServers": {
"radicale_calendar": {
"url": "https://mcp-calendar.yourdomain.com/sse"
}
}
}Nous-Hermes-Agenten-Integration
Die Tool-Definitionen werden automatisch aus Docstrings mit Typspezifikationen generiert. Beispiel für die Verwendung im Prompt:
{
"name": "get_free_busy_slots",
"arguments": {
"start_date": "2026-08-26",
"end_date": "2026-08-28",
"slot_duration_minutes": 30,
"working_hours_start": 9,
"working_hours_end": 17,
"timezone": "America/New_York"
}
}Lizenz
MIT
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- FlicenseNot gradedqualityFmaintenanceEnables interaction with any CalDAV-compatible calendar server (Yandex, Google, Nextcloud, iCloud, etc.) to list calendars, create/manage events with reminders and attendees, search events, and handle recurring events through natural language.13
- AlicenseNot gradedqualityFmaintenanceProvider-agnostic CalDAV calendar MCP server that connects any CalDAV calendar to AI assistants, enabling calendar operations like listing, creating, updating, and deleting events.AGPL 3.0
- FlicenseNot gradedqualityBmaintenanceEnables LLM clients to interact with Apple Calendar (iCloud) via CalDAV, supporting listing calendars, retrieving, creating, updating, and moving events.
- FlicenseNot gradedqualityBmaintenanceEnables interacting with CalDAV calendars (like iCloud) through natural language, supporting reading and writing events.1
Related MCP Connectors
Calendar API for AI agents: events, availability, Google/Microsoft setup, scheduling, and iCal.
Hosted Google Calendar MCP server for AI agents. No self-hosting or Google Cloud setup.
Connects ChatGPT to your Apple Calendar via a local Mac agent + Vercel relay
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/mvelak/radicale-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server