caldav-mcp (gelse/caldav-mcp) is an MCP server listed on the M8ven Trust Index. It scores 89 out of 100, grade B. It declares 14 tools. The publisher has proved control of what we score (Verified Publisher). It is connected through the M8ven GitHub App, so the listing is re-checked on every push.

B
Emerging
89/100
6 days ago

caldav-mcp

An MCP server that gives AI assistants read/write access to any CalDAV calendar, enabling natural language management of events, attendees, and calendar queries across Nextcloud, Radicale, iCloud, and more.

Emerging. No concerning findings. Grades remain capped until the project builds reputation through adoption. Grades reflect the full trust pyramid: code, verification depth, and reputation. New projects cap at C until adoption is earned.

How we verified

Code Verified⚡ Live Monitored

Monitored 15 days · every push re-verified

Who stands behind it

gelse.net (@gelse) · Verified Publisher

Source: Glama

Install from

M8ven verifies MCPs across every public registry — install directly from whichever one you prefer.

// key findings
No credential exfiltration, no sensitive file access, no obfuscation
Static analysis found nothing flowing your secrets to unexpected places.
Open source with a license and README
Anyone can audit the code, the license is declared, and the publisher documents what it does.
🔐
You'll be asked for 3 credentials: CALDAV_PASSWORD, CALDAV_MCP_TLS_KEY, CALDAV_MCP_API_KEY
These are read from process.env at runtime. Make sure you trust where they’ll be sent.
Are you the publisher? Confirm or correct these findings.
// environment variables
To run this server yourself, you supply these values. They go in your own MCP client configuration and stay on your machine. The secret label means the value is sensitive, not that the server mishandles it.
configCALDAV_URL, CALDAV_USERNAME, CALDAV_PASSWORD and omit the headers.
configCALDAV_USERNAMECALDAV_URL, , CALDAV_PASSWORD and omit the headers.
🔐 secretCALDAV_PASSWORDCALDAV_URL, CALDAV_USERNAME, and omit the headers.
configCALDAV_MCP_RATE_LIMIT_MAX_FAILURESwindow. Configurable via and
configCALDAV_MCP_RATE_LIMIT_WINDOW_SECONDSSliding window duration in seconds
configCALDAV_MCP_TLS_CERTOption A: Enable built-in TLS by setting and
🔐 secretCALDAV_MCP_TLS_KEY. The server listens on HTTPS directly.
configCALDAV_MCP_TLS_CA_BUNDLEOptional CA bundle for custom certificate authorities
configCALDAV_MCP_CALDAV_VERIFY_SSLVerify TLS certs on CalDAV connections. Set false only for testing with self-signed certs.
configCALDAV_MCP_LOG_FORMATjson for structured JSON output suitable for log
configCALDAV_MCP_PORTListen port (inside container)
configCALDAV_MCP_PATHStreamable HTTP endpoint path
🔐 secretCALDAV_MCP_API_KEYX-Api-Key header. When is unset, the endpoint is
// quality suggestions

Tool annotations

No tools have read-only/destructive annotations

Add readOnlyHint or destructiveHint annotations to every tool so hosts can warn users before invoking.

All four hints declared on every tool

14/14 tools missing one or more hints — caldav_add_attendee (missing: readOnlyHint, destructiveHint, idempotentHint, openWorldHint); caldav_remove_attendee (missing: readOnlyHint, destructiveHint, idempotentHint, openWorldHint); caldav_list_attendees (missing: readOnlyHint, destructiveHint, idempotentHint, openWorldHint), +11 more. OpenAI's directory rejects tools where any of the four hints are missing or non-boolean.

For every tool, set all four hints (readOnlyHint, destructiveHint, idempotentHint, openWorldHint) to explicit true/false values that match the handler’s actual behaviour.

Tool inputs are validated

13/14 tool handlers declare input schemas (93%)

Declare an inputSchema with zod/joi/yup on every tool definition.

// embed badge in your README
[![M8ven Score](https://m8ven.ai/badge/mcp/gelse/caldav-mcp)](https://m8ven.ai/mcp/gelse/caldav-mcp)
Shows your grade and updates automatically. Prefer no grade? Append ?variant=verified to the badge URL.
commit: cdd20e8409210f3b0ce6e7c3db6899738a17a597
code hash: 0b07e0203dbed67b99983101d446297706eaf512ca6be86b9e577f63ed342aa0
verified: 9/4/2026, 1:39:17 AM
view raw JSON →
Check MCPs from inside your assistant
Tool Check · MCP

Vetting this one by hand? Tool Check is an MCP that scores other MCPs. Add it once and ask Claude, ChatGPT, or any MCP client to grade a server, surface CVEs, check the publisher, and suggest safer alternatives — before you install.

https://m8ven.ai/api/mcp/tool-check
check_toolsearch_toolscompare_toolsrecommend_alternativescheck_publisherreport_concern
How to add it →Free · no account needed · works in any MCP client