Skip to main content
Glama
mvelak

Radicale CalDAV MCP Server

by mvelak

Radicale CalDAV MCP Server

FastMCP 및 공식 MCP Python SDK로 구축된 Model Context Protocol(MCP) 서버로, LLM 에이전트(Nous Hermes, Claude, OpenAI 등)를 자체 호스팅 Radicale CalDAV 캘린더 및 작어 관자를 연결합니다.


기능

📅 캘린더 이벤트요 (EVEVENT)

  • get_events: 요약, 설명, 위치 is를 대상으로 키워드 검색을 지원하는 optional 날짜/시간 범 into query events.

  • get_free_busy_slots: 주 могут be configured하게 (예: 9:00 AM - 5:00 PM) any other IANA zone에서 actual time slots 계산.

  • create_event: ISO validation, attendee invitation, conflict detection을 포함한 scheduling.

  • update_event: Existing events by UID without overwriting untouched fields.

  • delete_event: Remove events by UID.

📝 작업 및 할 일 (TOTODO)

  • list_todos: Fetch pending or completed tasks, filtered by status (NEEDS-ACTION, COMPLETED, IN-PROCESS, CANCELLED, ALL).

  • create_todo: Create tasks with due dates, priority (1-9), descriptions.

  • complete_todo: Mark completed with automatic 시간 stamp.

🚀 전송 & 배포

  • STDIO Transport: 로컬 실행용 기본 전송(예: Claude Desktop, 로컬 agents).

  • SSE (Server-Sent Events) Transport: 원격, 상시 운영 배포용 HTTP 전송(예: Coolify, Docker).


Related MCP server: calendar-mcp

구성

서버는 환경 변수를 통해 구성합니다 or .env file:

Variable

Default

Description

RADICALE_BASE_URL

http://localhost:5232

Radicale BasURL (예: https://radicale.dubblu.app)

RADICALE_USERNAME

mvela581

CalDAV username

RADICALE_PASSWORD

""

CalDAV password

RADICALE_CALENDAR_SLUG

seuspeptides

해당 캘린더 slug / collection name

DEFAULT_TIMEZONE

America/New_York

기본 IANA time zone

MCP_TRANSPORT

stdio

Transport protocol: stdio or sse

MCP_HOST

0.0.0.0

SSE 모드의 host interface

MCP_PORT

8000

SSE 모드의 port number


로컬 Quickstart

1. 설치

# 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.txt

2. 환경 구성

.env.example.env로 복사하여 인증 정보를 설정합니다.

cp .env.example .env

3. 로컬 실행

STDIO 모드 (Local Pipe)

python server.py --stdio

SSE 모드 (HTTP Server)

python server.py --sse --host 0.0.0.0 --port 8000

4. 테스트 클라이언트 실행

# 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/sse

5. 자동화 테스트 실행

pytest -v

Coolify 배포

MCP 서버를 Coolify에 배포합니다.

  1. Coolify에서 새 서비스를 생성합니다: Docker Compose 또는 Dockerfile.

  2. 이 리포지토리 또는 docker-compose.yml을 지정합니다.

  3. Coolify UI에서 다음 환경 변수를 설정합니다.

    • RADICALE_BASE_URL=https://radicale.dubblu.app

    • RADICALE_USERNAME=mvela581

    • RADICALE_PASSWORD=your_password

    • RADICALE_CALENDAR_SLUG=seuspeptides

    • DEFAULT_TIMEZONE=America/New_York

    • MCP_TRANSPORT=sse

    • MCP_PORT=8000

  4. 도메인 (예: https://mcp-calendar.yourdomain.com)을 사용하여 Coolify reverse proxy로 port 8000을 노출합니다.

  5. SSE endpoint:

https://mcp-calendar.yourdomain.com/sse

LLM 에이전트 통합 (Nous Hermes / Claude Desktop)

Claude Desktop 설정

claude_desktop_config.json에 다음을 추가합니다.

Local 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 Agent Integration

Tool definitions are auto-generated from docstrings with type specifications. 예시 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"
  }
}

라이선스

MIT

F
license - not found
Not graded
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

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

  • F
    license
    Not graded
    quality
    F
    maintenance
    Enables 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
  • A
    license
    Not graded
    quality
    F
    maintenance
    Provider-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

View all related MCP servers

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

View all MCP Connectors

Latest Blog Posts

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