agents-calendar
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@agents-calendarwhat's on my calendar tomorrow?"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Quickstart
pip install agents-calendar && agents-calendar sync --initMerges MCP into host configs. Prints where credentials go. Does not write secrets into mcp.json. init is the same command.
🤖 Agent-Driven Setup: Give your coding agent this repo (clone or URL), then tell it to "install and set up agents-calendar."
Source checkouts can also be installed and managed with vand.
Related MCP server: Oreo Pudding
What it does
List calendars, list events in a time range, add, update, delete. Recurrence rules stay on the CalDAV server (time-range report). Writes send If-None-Match: * on create and If-Match on update and delete, so a stale etag does not clobber.
The password is never printed, logged, or returned by a tool.
Credentials
Highest priority first:
Process env:
CALDAV_URL,CALDAV_USERNAME,CALDAV_PASSWORD~/.agents/calendar.json(mode0600)~/.agents/.envkeysCALDAV_*
{
"url": "https://example.com/dav/calendars/user/calendar/",
"username": "user",
"password": "app-password"
}CLI and MCP both read this file, so a desktop host does not need the password in its MCP config. A URL that is only a host or principal is resolved through calendar-home-set. add writes into a VEVENT collection, not a reminder collection.
Where it runs
Floor: any MCP client or a terminal. python -m agents_calendar serve is enough. No skills are installed.
Layer | What you get | Who |
CLI + MCP | The five tools below, or the same verbs on the CLI | Any MCP host / any shell |
Autowire |
| Cursor, Claude Desktop, Zed ( |
MCP without autowire: point the host at python -m agents_calendar serve.
MCP tools
Primary surface. They mirror the CLI. Password never appears in the JSON.
Tool | What it does |
| Collections under the configured URL |
| VEVENTs between ISO |
| Create. |
| Replace. |
| Delete. Same |
Five tools.
CLI
Machine-readable catalog: python -m agents_calendar --help-json (do not scrape --help).
Command | Purpose |
| Merge MCP. Alias: |
| List collections |
| Events in that range |
| Create. Optional |
| Replace fields you pass |
| Delete |
| stdio MCP. Not the default |
No subcommand prints help.
ABI
Contract in abi/:
WHY.md— server-side recurrence and etagsLAYOUT.md— credential fileMCP.md— five toolsCLI.md— the same verbs, plusinit
Tests
python -m unittest discover testsLicense
MIT. See LICENSE.
This server cannot be deployed
Maintenance
Related MCP Connectors
Calendar API for AI agents: events, availability, Google/Microsoft setup, scheduling, and iCal.
Connects ChatGPT to your Apple Calendar via a local Mac agent + Vercel relay
Agent-Native Google Calendar - manage events, sync, and public booking
GDPR-compliant calendar access for AI assistants: read, create, edit, RSVP. Google, MS 365, Apple.
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.14-
- FlicenseNot gradedqualityCmaintenanceEnables LLM clients to interact with Apple Calendar (iCloud) via CalDAV, supporting listing calendars, retrieving, creating, updating, and moving events.-
- AlicenseAqualityDmaintenanceEnables full CRUD operations on calendar events, free/busy queries, and availability slot finding via CalDAV, supporting Nextcloud, Radicale, iCloud, and other RFC 4791-compliant servers.8MIT
- FlicenseNot gradedqualityCmaintenanceEnables LLM agents to read, schedule, update, and delete calendar events and tasks on a self-hosted CalDAV server, and to query availability for free/busy slots.-