Command Palette

Search for a command to run...

UnylyUnyly
Весь каталог

Renfield Calendar

БесплатноНе проверен

Unified MCP server for calendar access connecting Exchange (EWS), Google Calendar, and CalDAV through a single MCP interface, enabling multi-calendar event mana

GitHubEmbed

Описание

Unified MCP server for calendar access connecting Exchange (EWS), Google Calendar, and CalDAV through a single MCP interface, enabling multi-calendar event management via natural language.

README

Unified MCP server for calendar access — connect Exchange (EWS), Google Calendar, and CalDAV (Nextcloud, ownCloud, Radicale) through a single Model Context Protocol interface.

Features

  • Multi-calendar — Configure multiple calendar accounts via YAML, query them individually or all at once
  • Cross-calendar mergelist_events without a calendar parameter returns events from ALL calendars sorted chronologically
  • Three backends — Exchange Web Services (EWS), Google Calendar API, CalDAV
  • No passwords in config — Credentials referenced via environment variable names
  • Lazy connections — Backend clients are initialized on first use, not at startup
  • Async-ready — All blocking I/O wrapped with asyncio.run_in_executor
  • Google OAuth2 helper — Built-in --auth google CLI for initial token setup

Installation

pip install renfield-mcp-calendar

Or directly from GitHub:

pip install "renfield-mcp-calendar @ https://github.com/ebongard/renfield-mcp-calendar/archive/refs/heads/main.tar.gz"

Configuration

Set CALENDAR_CONFIG to point to your YAML config file (default: /config/calendar_accounts.yaml).

Example calendar_accounts.yaml

calendars:
  # Exchange 2019 (on-premise, direct EWS endpoint)
  - name: work
    label: "Work Calendar"
    type: ews
    ews_url: "https://exchange.example.com/EWS/Exchange.asmx"
    username_env: CALENDAR_WORK_USERNAME
    password_env: CALENDAR_WORK_PASSWORD

  # Google Calendar (OAuth2 Desktop Flow)
  - name: family
    label: "Family Calendar"
    type: google
    calendar_id: "primary"
    credentials_file: "/config/google_calendar_credentials.json"
    token_file: "/data/google_calendar_token.json"

  # Nextcloud / CalDAV
  - name: club
    label: "Club Calendar"
    type: caldav
    url: "https://nextcloud.example.com/remote.php/dav/calendars/user/club/"
    username_env: CALENDAR_CLUB_USERNAME
    password_env: CALENDAR_CLUB_PASSWORD

Security: Passwords and tokens are never stored in the YAML file — use *_env fields to reference environment variable names.

Backend-specific notes

Backend Library Auth Notes
EWS exchangelib NTLM/Basic Direct EWS URL, no Autodiscover needed
Google google-api-python-client OAuth2 Desktop Flow Token auto-refresh, one-time browser auth
CalDAV caldav Basic Auth Works with Nextcloud, ownCloud, Radicale, etc.

Google Calendar setup (one-time)

  1. Google Cloud Console → Create project → Enable Google Calendar API
  2. Create OAuth2 credentials (Desktop App) → Download credentials.json
  3. Place as google_calendar_credentials.json in your config directory
  4. Run the auth flow:
    python -m renfield_mcp_calendar --auth google --calendar family
    
  5. Complete the browser-based authorization — token is saved automatically

MCP Tools

Tool Parameters Description
list_calendars List all configured calendar accounts
list_events calendar?, start, end Events from one or all calendars. Empty calendar = merged from all.
create_event calendar, title, start, end, description?, location? Create a new event
update_event calendar, event_id, title?, start?, end?, ... Update specific fields of an event
delete_event calendar, event_id Delete an event
get_event calendar, event_id Get a single event with full details

Example queries (via LLM)

  • "Was steht heute an?"list_events() (all calendars, today)
  • "Was steht im Firmenkalender diese Woche?"list_events(calendar="work", start="...", end="...")
  • "Erstelle einen Familientermin morgen um 14 Uhr: Zahnarzt"create_event(calendar="family", ...)
  • "Bin ich morgen Nachmittag frei?"list_events(start="...", end="...")

Usage

# Run as MCP server (stdio transport)
python -m renfield_mcp_calendar

# Or via entry point
renfield-mcp-calendar

# Google OAuth2 setup (one-time)
python -m renfield_mcp_calendar --auth google --calendar family

Claude Desktop / MCP client config

{
  "mcpServers": {
    "calendar": {
      "command": "python",
      "args": ["-m", "renfield_mcp_calendar"],
      "env": {
        "CALENDAR_CONFIG": "/path/to/calendar_accounts.yaml",
        "CALENDAR_WORK_USERNAME": "[email protected]",
        "CALENDAR_WORK_PASSWORD": "secret"
      }
    }
  }
}

Development

# Install with dev dependencies
pip install -e ".[dev]"

# Run tests (29 tests)
pytest tests/ -v

License

MIT

from github.com/ebongard/renfield-mcp-calendar

Установка Renfield Calendar

У этого сервера нет опубликованного пакета — он собирается из исходников. Открой репозиторий и следуй инструкции в README.

▸ github.com/ebongard/renfield-mcp-calendar

FAQ

Renfield Calendar MCP бесплатный?

Да, Renfield Calendar MCP бесплатный — установка в пару кликов через Unyly без оплаты.

Нужен ли API-ключ для Renfield Calendar?

Нет, Renfield Calendar работает без API-ключей и переменных окружения.

Renfield Calendar — hosted или self-hosted?

Доступен hosted-вариант: Unyly запускает сервер в облаке, локальная установка не обязательна.

Как установить Renfield Calendar в Claude Desktop, Claude Code или Cursor?

Открой Renfield Calendar на unyly.org, выбери вкладку своего клиента (Claude Desktop, Claude Code, Cursor) и нажми Install — конфиг сгенерируется автоматически, без правки JSON.

Похожие MCP

Notion

Read and write pages in your workspace

Notionавтор: Notion

Linear

Issues, cycles, triage — from Claude

Linearавтор: Linear
Pro

Google Drive

Search and read your Drive files

Googleавтор: Google

mindsdb/mindsdb

Connect and unify data across various platforms and databases with [MindsDB as a single MCP server](https://docs.mindsdb.com/mcp/overview).

mindsdbавтор: mindsdb

fulcradynamics/fulcra-context-mcp

MCP server for accessing personal health and biometric data including sleep stages, heart rate, HRV, glucose, workouts, calendar, and location via the Fulcra Li

fulcradynamicsавтор: fulcradynamics

aymericzip/intlayer

A MCP Server that enhance your IDE with AI-powered assistance for Intlayer i18n / CMS tool: smart CLI access, access to the docs.

aymericzipавтор: aymericzip

rinadelph/Agent-MCP

A framework for creating multi-agent systems using MCP for coordinated AI collaboration, featuring task management, shared context, and RAG capabilities.

rinadelphавтор: rinadelph

WhenLabs-org/when

Developer toolkit: auto-detect stack for AI context files, catch port conflicts, validate .env schemas, spot docs drift, audit dependency licenses, and time cod

WhenLabs-orgавтор: WhenLabs-org

Beltran12138/wecom-docs-mcp-server

WeCom (Enterprise WeChat) document operations via MCP: create, read, and edit Docs and Smartsheets (9 tools). Fills the doc-CRUD gap — existing WeCom MCP server

Beltran12138автор: Beltran12138

madbonez/caldav-mcp

Universal MCP server for CalDAV protocol integration. Works with any CalDAV-compatible calendar server including Yandex Calendar, Google Calendar (via CalDAV),

madbonezавтор: madbonez

Compare Renfield Calendar with

Не уверен что выбрать?

Найди свой стек за 60 секунд

Автор?

Embed-бейдж для README

Похожее

Все в категории productivity