Radicale CalDAV MCP Server
Servidor MCP CalDAV Radicale
Un servidor del Protocolo de Contexto de Modelo (MCP) construido con FastMCP / el SDK oficial de MCP para Python que conecta agentes LLM (como Nous Hermes, Claude, OpenAI) con un calendario y administrador de tareas CalDAV autoalojado Radicale.
Características
📅 Eventos de calendario (VEVENT)
get_events: Consulta eventos dentro de rangos de fecha/hora con búsqueda opcional por palabra clave en resumen, descripción y ubicación.get_free_busy_slots: Calcula espacios de tiempo abiertos y no reservados dentro de horarios laborales configurables (p. ej. 9:00 a. m. - 5:00 p. m.) en cualquier zona horaria IANA.create_event: Programa nuevos eventos con validación automática ISO, invitaciones a asistentes y detección de solapamientos/conflictos.update_event: Modifica eventos existentes por UID sin sobrescribir los campos no tocados.delete_event: Elimina eventos por UID.
📝 Tareas y pendientes (VTODO)
list_todos: Obtiene tareas pendientes o completadas filtradas por estado (NEEDS-ACTION,COMPLETED,IN-PROCESS,CANCELLED,ALL).create_todo: Crea tareas con fecha de vencimiento, niveles de prioridad (1-9) y descripciones.complete_todo: Marca tareas como completadas con marcas de tiempo automáticas de finalización.
🚀 Transportes e implementación
Transporte STDIO: Transporte predeterminado para ejecución local (p. ej. Claude Desktop, agentes locales).
Transporte SSE (Server-Sent Events): A través de HTTP para implementaciones remotas siempre activas (p. ej. Coolify, Docker).
Related MCP server: calendar-mcp
Configuración
Configura el servidor mediante variables de entorno o un archivo .env:
Variable | Predeterminado | Descripción |
|
| URL base a Radicale (p. ej. |
|
| Nombre de usuario CalDAV |
|
| Contraseña CalDAV |
|
| Slug del calendario / calendario objetivo |
|
| Zona horaria IANA por defecto |
|
| Protocolo de transporte: |
|
| Interfaz de host para el modo SSE |
|
| Número de puerto para el modo SSE |
Inicio rápido local
1. Instalación
# 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. Configurar el entorno
Copia .env.example a .env y establece tus credenciales:
cp .env.example .env3. Ejecutar localmente
Modo STDIO (canal local)
python server.py --stdioModo SSE (servidor HTTP)
python server.py --sse --host 0.0.0.0 --port 80004. Ejecutar el cliente de prueba
# 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. Ejecutar las pruebas automatizadas
pytest -vImplementación en Coolify
Implementa el servidor MCP en Coolify sin configuración adicional:
Crea un nuevo servicio en Coolify: Docker Compose o Dockerfile.
Apunta al repositorio o pega el
docker-compose.yml.Establece las siguientes variables de entorno en la interfaz de Coolify:
RADICALE_BASE_URL=https://radicale.dubblu.appRADICALE_USERNAME=mvela581RADICALE_PASSWORD=your_passwordRADICALE_CALENDAR_SLUG=seuspeptidesDEFAULT_TIMEZONE=America/New_YorkMCP_TRANSPORT=sseMCP_PORT=8000
Expón el puerto
8000mediante el proxy inverso de Coolify con tu dominio (p. ej.https://mcp-calendar.yourdomain.com).Tu endpoint SSE será accesible en:
https://mcp-calendar.yourdomain.com/sse
Integración con agentes LLM (Nous Hermes / Claude Desktop)
Configuración de Claude Desktop
Añade lo siguiente a tu claude_desktop_config.json:
STDIO local:
{
"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"
}
}
}
}SSE remoto (Coolify):
{
"mcpServers": {
"radicale_calendar": {
"url": "https://mcp-calendar.yourdomain.com/sse"
}
}
}Integración con el agente Nous Hermes
Las definiciones de herramientas se generan automáticamente a partir de los docstrings con especificaciones de tipo. Ejemplo de uso de 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"
}
}Licencia
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