// the find
ridafkih/keeper.sh
Calendar sync tool & universal calendar MCP server. Aggregate, sync and control calendars on Google, Outlook, Office 365, iCloud, CalDAV or ICS.
Keeper is a self-hostable calendar sync tool that pulls from ICS/CalDAV sources and pushes events to Google Calendar, Outlook, iCloud, and others. It also exposes an MCP server so AI agents can query your calendar data. The target audience is developers or power users juggling multiple calendars across providers who want control over the sync logic without trusting a third-party SaaS.
The sync engine is clearly designed by someone who got burned by existing tools — the event tracking via UID suffixes and the fallback category-based tracking for Outlook (which doesn't support custom UIDs) is a real-world solution to a real-world edge case. The deployment story is genuinely well thought out: standalone image for simplicity, granular per-service images for production, and a services image for the middle ground. SSRF protection via BLOCK_PRIVATE_RESOLUTION is opt-in but documented, which is more than most self-hosted tools bother with. The MCP integration is additive and fully optional — not bolted on in a way that breaks existing setups.
38 forks for 1183 stars is a low contribution ratio, and the module list includes several packages marked 'Coming Soon' (CLI, mobile, SSH), which suggests the roadmap is ambitious relative to the current team size. The TRUSTED_ORIGINS CSRF footgun — where forgetting to set it silently breaks auth on LAN access — is the kind of thing that will waste an hour for every new self-hoster. The sync engine only runs on a schedule (1 or 30 minute intervals depending on plan), so there's no webhook-driven path for near-instant sync; if you need sub-minute propagation, this won't get you there. The MCP server exposes calendar data through OAuth 2.1 but only supports three read tools with no write capabilities, making it useful for awareness but not for agents that need to create or modify events.