---
bezeichner: "io.github.ni-c/caldav-mcp"
art: "mcp_server"
slug: "io-github-ni-c-caldav-mcp"
paketkoordinate: "npm:@ni-c/caldav-mcp"
status: "aktiv"
homepage: "https://caldav-mcp.ni-c.de"
erhebungsstand: "2026-10-10T01:17:01.464Z"
namensraum: "io.github.ni-c"
registerseite: "https://tracevero.de/mcp/io-github-ni-c-caldav-mcp"
abgerufen_am: "2026-10-10"
zugangsdaten_erforderlich: false
ausfuehrungsort: "lokal"
dateisystem_pfadargument: false
quelloffen_einsehbar: true
einsatzgebiet: "kalender"
roh_beschreibung: "Read and write CalDAV calendars: events, tasks and journal entries over the open standard"
version: "0.1.4"
roh_umgebungsvariablen: "CALDAV_URL, CALDAV_USERNAME, CALDAV_PASSWORD, CALDAV_TOKEN, CALDAV_CALENDARS, CALDAV_TIMEZONE, CALDAV_USER_EMAIL, CALDAV_MAX_EVENTS, CALDAV_READ_ONLY, CALDAV_INSECURE_TLS, CALDAV_ALLOW_PLAINTEXT, CALDAV_ALLOW_TOOLS, CALDAV_DENY_TOOLS, ELICITATION, CALDAV_URL, CALDAV_USERNAME, CALDAV_PASSWORD, CALDAV_TOKEN, CALDAV_CALENDARS, CALDAV_TIMEZONE, CALDAV_USER_EMAIL, CALDAV_MAX_EVENTS, CALDAV_READ_ONLY, CALDAV_INSECURE_TLS, CALDAV_ALLOW_PLAINTEXT, CALDAV_ALLOW_TOOLS, CALDAV_DENY_TOOLS, ELICITATION"
roh_geheime_pflichtvariablen: ""
roh_transportarten: "stdio, stdio"
roh_pfadargumente: ""
roh_repository_url: "https://github.com/ni-c/caldav-mcp"
roh_paketquellen: "npm, oci"
roh_geheime_pflichtkopfzeilen: ""
roh_pfad_umgebungsvariablen: ""
roh_remote_adressen: ""
roh_remote_hosts: ""
roh_statusmeldung: ""
roh_veroeffentlicht_am: "2026-09-08"
roh_aktualisiert_am: "2026-09-08"
roh_schemafassung: "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json"
roh_bereitstellungsform: "paket"
roh_repository_quelle: "github"
roh_repository_unterordner: ""
roh_paketbezeichner: "@ni-c/caldav-mcp, ghcr.io/ni-c/caldav-mcp:0.1.4"
roh_paketversionen: "0.1.4"
roh_laufzeithinweise: ""
roh_umgebungsformate: "boolean, number, string"
roh_umgebungsbeschreibungen: "CALDAV_ALLOW_PLAINTEXT=Set to true to allow a plain http:// URL to a host that is not loopback, which sends the credentials unencrypted (default: false) · CALDAV_ALLOW_TOOLS=Comma-separated tool names or list_* prefixes to register; 'essential' selects a curated preset (default: all tools) · CALDAV_CALENDARS=Comma-separated calendars this server may touch, by path or final path segment. Default: all of them. · CALDAV_DENY_TOOLS=Comma-separated tool names or list_* prefixes to remove from whatever the allow list left · CALDAV_INSECURE_TLS=Set to true to accept a self-signed certificate on the configured host only (default: false) · CALDAV_MAX_EVENTS=Entries a listing returns by default, 1 to 500 (default: 100) · CALDAV_PASSWORD=Password or app-specific password. Deleted from the environment once read. · CALDAV_READ_ONLY=Set to true to register only the read tools (default: false) · CALDAV_TIMEZONE=IANA zone for timestamps that carry no offset, e.g. Europe/Berlin (default: UTC) · CALDAV_TOKEN=Bearer token, as an alternative to username and password. Not both. · CALDAV_URL=Root of the CalDAV server, e.g. https://dav.example.net. A calendar collection URL also works. · CALDAV_USERNAME=Account name. Most hosted services want an app-specific password with it. · CALDAV_USER_EMAIL=The address you are invited as, so respond_to_event can find your own attendee line · ELICITATION=Deliberately unprefixed, and reaches every MCP server in the environment. Set to false to make guarded tools use the two-call token instead of a dialog (default: true)"
roh_symbolformate: ""
roh_verbindungswege: "{\"packages\":[{\"registryType\":\"npm\",\"identifier\":\"@ni-c/caldav-mcp\",\"version\":\"0.1.4\",\"transport\":\"stdio\",\"environment\":[{\"name\":\"CALDAV_URL\",\"description\":\"Root of the CalDAV server, e.g. https://dav.example.net. A calendar collection URL also works.\",\"format\":\"string\",\"required\":true,\"secret\":false},{\"name\":\"CALDAV_USERNAME\",\"description\":\"Account name. Most hosted services want an app-specific password with it.\",\"format\":\"string\",\"required\":false,\"secret\":false},{\"name\":\"CALDAV_PASSWORD\",\"description\":\"Password or app-specific password. Deleted from the environment once read.\",\"format\":\"string\",\"required\":false,\"secret\":true},{\"name\":\"CALDAV_TOKEN\",\"description\":\"Bearer token, as an alternative to username and password. Not both.\",\"format\":\"string\",\"required\":false,\"secret\":true},{\"name\":\"CALDAV_CALENDARS\",\"description\":\"Comma-separated calendars this server may touch, by path or final path segment. Default: all of them.\",\"format\":\"string\",\"required\":false,\"secret\":false},{\"name\":\"CALDAV_TIMEZONE\",\"description\":\"IANA zone for timestamps that carry no offset, e.g. Europe/Berlin (default: UTC)\",\"format\":\"string\",\"required\":false,\"secret\":false},{\"name\":\"CALDAV_USER_EMAIL\",\"description\":\"The address you are invited as, so respond_to_event can find your own attendee line\",\"format\":\"string\",\"required\":false,\"secret\":false},{\"name\":\"CALDAV_MAX_EVENTS\",\"description\":\"Entries a listing returns by default, 1 to 500 (default: 100)\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"CALDAV_READ_ONLY\",\"description\":\"Set to true to register only the read tools (default: false)\",\"format\":\"boolean\",\"required\":false,\"secret\":false},{\"name\":\"CALDAV_INSECURE_TLS\",\"description\":\"Set to true to accept a self-signed certificate on the configured host only (default: false)\",\"format\":\"boolean\",\"required\":false,\"secret\":false},{\"name\":\"CALDAV_ALLOW_PLAINTEXT\",\"description\":\"Set to true to allow a plain http:// URL to a host that is not loopback, which sends the credentials unencrypted (default: false)\",\"format\":\"boolean\",\"required\":false,\"secret\":false},{\"name\":\"CALDAV_ALLOW_TOOLS\",\"description\":\"Comma-separated tool names or list_* prefixes to register; 'essential' selects a curated preset (default: all tools)\",\"format\":\"string\",\"required\":false,\"secret\":false},{\"name\":\"CALDAV_DENY_TOOLS\",\"description\":\"Comma-separated tool names or list_* prefixes to remove from whatever the allow list left\",\"format\":\"string\",\"required\":false,\"secret\":false},{\"name\":\"ELICITATION\",\"description\":\"Deliberately unprefixed, and reaches every MCP server in the environment. Set to false to make guarded tools use the two-call token instead of a dialog (default: true)\",\"format\":\"boolean\",\"required\":false,\"secret\":false}],\"additional_arguments_declared\":false},{\"registryType\":\"oci\",\"identifier\":\"ghcr.io/ni-c/caldav-mcp:0.1.4\",\"transport\":\"stdio\",\"environment\":[{\"name\":\"CALDAV_URL\",\"description\":\"Root of the CalDAV server, e.g. https://dav.example.net. A calendar collection URL also works.\",\"format\":\"string\",\"required\":true,\"secret\":false},{\"name\":\"CALDAV_USERNAME\",\"description\":\"Account name. Most hosted services want an app-specific password with it.\",\"format\":\"string\",\"required\":false,\"secret\":false},{\"name\":\"CALDAV_PASSWORD\",\"description\":\"Password or app-specific password. Deleted from the environment once read.\",\"format\":\"string\",\"required\":false,\"secret\":true},{\"name\":\"CALDAV_TOKEN\",\"description\":\"Bearer token, as an alternative to username and password. Not both.\",\"format\":\"string\",\"required\":false,\"secret\":true},{\"name\":\"CALDAV_CALENDARS\",\"description\":\"Comma-separated calendars this server may touch, by path or final path segment. Default: all of them.\",\"format\":\"string\",\"required\":false,\"secret\":false},{\"name\":\"CALDAV_TIMEZONE\",\"description\":\"IANA zone for timestamps that carry no offset, e.g. Europe/Berlin (default: UTC)\",\"format\":\"string\",\"required\":false,\"secret\":false},{\"name\":\"CALDAV_USER_EMAIL\",\"description\":\"The address you are invited as, so respond_to_event can find your own attendee line\",\"format\":\"string\",\"required\":false,\"secret\":false},{\"name\":\"CALDAV_MAX_EVENTS\",\"description\":\"Entries a listing returns by default, 1 to 500 (default: 100)\",\"format\":\"number\",\"required\":false,\"secret\":false},{\"name\":\"CALDAV_READ_ONLY\",\"description\":\"Set to true to register only the read tools (default: false)\",\"format\":\"boolean\",\"required\":false,\"secret\":false},{\"name\":\"CALDAV_INSECURE_TLS\",\"description\":\"Set to true to accept a self-signed certificate on the configured host only (default: false)\",\"format\":\"boolean\",\"required\":false,\"secret\":false},{\"name\":\"CALDAV_ALLOW_PLAINTEXT\",\"description\":\"Set to true to allow a plain http:// URL to a host that is not loopback, which sends the credentials unencrypted (default: false)\",\"format\":\"boolean\",\"required\":false,\"secret\":false},{\"name\":\"CALDAV_ALLOW_TOOLS\",\"description\":\"Comma-separated tool names or list_* prefixes to register; 'essential' selects a curated preset (default: all tools)\",\"format\":\"string\",\"required\":false,\"secret\":false},{\"name\":\"CALDAV_DENY_TOOLS\",\"description\":\"Comma-separated tool names or list_* prefixes to remove from whatever the allow list left\",\"format\":\"string\",\"required\":false,\"secret\":false},{\"name\":\"ELICITATION\",\"description\":\"Deliberately unprefixed, and reaches every MCP server in the environment. Set to false to make guarded tools use the two-call token instead of a dialog (default: true)\",\"format\":\"boolean\",\"required\":false,\"secret\":false}],\"additional_arguments_declared\":false}],\"remotes\":[]}"
---

# CalDAV calendars

## Gemessene Werte

| Merkmal | Wert | Quelle | Erhoben am | Vertrauensgrad | Rohangabe |
| --- | --- | --- | --- | --- | --- |
| Pflicht-Geheimnisse deklariert | false | MCP-Register | 2026-09-06T01:17:02.381Z | abgeleitet | roh_geheime_pflichtvariablen: ; roh_geheime_pflichtkopfzeilen: |
| Ausführungsort | lokal | MCP-Register | 2026-09-06T01:17:02.381Z | abgeleitet | roh_transportarten: stdio, stdio |
| Pfadargument vorhanden | false | MCP-Register | 2026-09-06T01:17:02.381Z | abgeleitet | roh_pfadargumente: ; roh_pfad_umgebungsvariablen: |
| Repository-Adresse geführt | true | MCP-Register | 2026-09-06T01:17:02.381Z | abgeleitet | roh_repository_url: https://github.com/ni-c/caldav-mcp |
| Einsatzgebiet, aus der Anbieterbeschreibung abgeleitet | kalender | MCP-Register | 2026-09-06T01:17:02.381Z | abgeleitet | roh_beschreibung: Read and write CalDAV calendars: events, tasks and journal entries over the open standard |
| Beschreibung (Rohangabe) | Read and write CalDAV calendars: events, tasks and journal entries over the open standard | MCP-Register | 2026-09-06T01:17:02.381Z | selbstauskunft |  |
| Deklarierte Version | 0.1.4 | MCP-Register | 2026-09-09T01:17:01.503Z | selbstauskunft |  |
| Umgebungsvariablen (Rohangabe) | CALDAV_URL, CALDAV_USERNAME, CALDAV_PASSWORD, CALDAV_TOKEN, CALDAV_CALENDARS, CALDAV_TIMEZONE, CALDAV_USER_EMAIL, CALDAV_MAX_EVENTS, CALDAV_READ_ONLY, CALDAV_INSECURE_TLS, CALDAV_ALLOW_PLAINTEXT, CALDAV_ALLOW_TOOLS, CALDAV_DENY_TOOLS, ELICITATION, CALDAV_URL, CALDAV_USERNAME, CALDAV_PASSWORD, CALDAV_TOKEN, CALDAV_CALENDARS, CALDAV_TIMEZONE, CALDAV_USER_EMAIL, CALDAV_MAX_EVENTS, CALDAV_READ_ONLY, CALDAV_INSECURE_TLS, CALDAV_ALLOW_PLAINTEXT, CALDAV_ALLOW_TOOLS, CALDAV_DENY_TOOLS, ELICITATION | MCP-Register | 2026-09-06T01:17:02.381Z | selbstauskunft |  |
| Geheime Pflichtvariablen (Rohangabe) |  | MCP-Register | 2026-09-06T01:17:02.381Z | selbstauskunft |  |
| Transportarten (Rohangabe) | stdio, stdio | MCP-Register | 2026-09-06T01:17:02.381Z | selbstauskunft |  |
| Pfadargumente (Rohangabe) |  | MCP-Register | 2026-09-06T01:17:02.381Z | selbstauskunft |  |
| Repository (Rohangabe) | https://github.com/ni-c/caldav-mcp | MCP-Register | 2026-09-06T01:17:02.381Z | selbstauskunft |  |
| Paketquellen (Rohangabe) | npm, oci | MCP-Register | 2026-09-06T01:17:02.381Z | selbstauskunft |  |
| Geheime Pflichtkopfzeilen (Rohangabe) |  | MCP-Register | 2026-09-06T01:17:02.381Z | selbstauskunft |  |
| Pfad-Umgebungsvariablen (Rohangabe) |  | MCP-Register | 2026-09-06T01:17:02.381Z | selbstauskunft |  |
| Remote-Adressen (Rohangabe) |  | MCP-Register | 2026-09-06T01:17:02.381Z | selbstauskunft |  |
| Remote-Hosts (Rohangabe) |  | MCP-Register | 2026-09-06T01:17:02.381Z | selbstauskunft |  |
| Statusmeldung des Registers (Rohangabe) |  | MCP-Register | 2026-09-06T01:17:02.381Z | selbstauskunft |  |
| Im Register eingetragen am (Rohangabe) | 2026-09-08 | MCP-Register | 2026-09-09T01:17:01.503Z | selbstauskunft |  |
| Im Register geändert am (Rohangabe) | 2026-09-08 | MCP-Register | 2026-09-09T01:17:01.503Z | selbstauskunft |  |
| Schemafassung des Rohsatzes (Rohangabe) | https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json | MCP-Register | 2026-09-06T01:17:02.381Z | selbstauskunft |  |
| Bereitstellungsform (Rohangabe) | paket | MCP-Register | 2026-09-06T01:17:02.381Z | selbstauskunft |  |
| Repository-Plattform (Rohangabe) | github | MCP-Register | 2026-09-06T01:17:02.381Z | selbstauskunft |  |
| Repository-Unterordner (Rohangabe) |  | MCP-Register | 2026-09-06T01:17:02.381Z | selbstauskunft |  |
| Paketbezeichner (Rohangabe) | @ni-c/caldav-mcp, ghcr.io/ni-c/caldav-mcp:0.1.4 | MCP-Register | 2026-09-09T01:17:01.503Z | selbstauskunft |  |
| Paketversionen (Rohangabe) | 0.1.4 | MCP-Register | 2026-09-09T01:17:01.503Z | selbstauskunft |  |
| Laufzeithinweise (Rohangabe) |  | MCP-Register | 2026-09-06T01:17:02.381Z | selbstauskunft |  |
| Formate der Umgebungsvariablen (Rohangabe) | boolean, number, string | MCP-Register | 2026-09-06T01:17:02.381Z | selbstauskunft |  |
| Beschreibungen der Umgebungsvariablen (Rohangabe) | CALDAV_ALLOW_PLAINTEXT=Set to true to allow a plain http:// URL to a host that is not loopback, which sends the credentials unencrypted (default: false) · CALDAV_ALLOW_TOOLS=Comma-separated tool names or list_* prefixes to register; 'essential' selects a curated preset (default: all tools) · CALDAV_CALENDARS=Comma-separated calendars this server may touch, by path or final path segment. Default: all of them. · CALDAV_DENY_TOOLS=Comma-separated tool names or list_* prefixes to remove from whatever the allow list left · CALDAV_INSECURE_TLS=Set to true to accept a self-signed certificate on the configured host only (default: false) · CALDAV_MAX_EVENTS=Entries a listing returns by default, 1 to 500 (default: 100) · CALDAV_PASSWORD=Password or app-specific password. Deleted from the environment once read. · CALDAV_READ_ONLY=Set to true to register only the read tools (default: false) · CALDAV_TIMEZONE=IANA zone for timestamps that carry no offset, e.g. Europe/Berlin (default: UTC) · CALDAV_TOKEN=Bearer token, as an alternative to username and password. Not both. · CALDAV_URL=Root of the CalDAV server, e.g. https://dav.example.net. A calendar collection URL also works. · CALDAV_USERNAME=Account name. Most hosted services want an app-specific password with it. · CALDAV_USER_EMAIL=The address you are invited as, so respond_to_event can find your own attendee line · ELICITATION=Deliberately unprefixed, and reaches every MCP server in the environment. Set to false to make guarded tools use the two-call token instead of a dialog (default: true) | MCP-Register | 2026-09-06T01:17:02.381Z | selbstauskunft |  |
| Symbolformate (Rohangabe) |  | MCP-Register | 2026-09-06T01:17:02.381Z | selbstauskunft |  |
| Verbindungswege (Quellstruktur) | {"packages":[{"registryType":"npm","identifier":"@ni-c/caldav-mcp","version":"0.1.4","transport":"stdio","environment":[{"name":"CALDAV_URL","description":"Root of the CalDAV server, e.g. https://dav.example.net. A calendar collection URL also works.","format":"string","required":true,"secret":false},{"name":"CALDAV_USERNAME","description":"Account name. Most hosted services want an app-specific password with it.","format":"string","required":false,"secret":false},{"name":"CALDAV_PASSWORD","description":"Password or app-specific password. Deleted from the environment once read.","format":"string","required":false,"secret":true},{"name":"CALDAV_TOKEN","description":"Bearer token, as an alternative to username and password. Not both.","format":"string","required":false,"secret":true},{"name":"CALDAV_CALENDARS","description":"Comma-separated calendars this server may touch, by path or final path segment. Default: all of them.","format":"string","required":false,"secret":false},{"name":"CALDAV_TIMEZONE","description":"IANA zone for timestamps that carry no offset, e.g. Europe/Berlin (default: UTC)","format":"string","required":false,"secret":false},{"name":"CALDAV_USER_EMAIL","description":"The address you are invited as, so respond_to_event can find your own attendee line","format":"string","required":false,"secret":false},{"name":"CALDAV_MAX_EVENTS","description":"Entries a listing returns by default, 1 to 500 (default: 100)","format":"number","required":false,"secret":false},{"name":"CALDAV_READ_ONLY","description":"Set to true to register only the read tools (default: false)","format":"boolean","required":false,"secret":false},{"name":"CALDAV_INSECURE_TLS","description":"Set to true to accept a self-signed certificate on the configured host only (default: false)","format":"boolean","required":false,"secret":false},{"name":"CALDAV_ALLOW_PLAINTEXT","description":"Set to true to allow a plain http:// URL to a host that is not loopback, which sends the credentials unencrypted (default: false)","format":"boolean","required":false,"secret":false},{"name":"CALDAV_ALLOW_TOOLS","description":"Comma-separated tool names or list_* prefixes to register; 'essential' selects a curated preset (default: all tools)","format":"string","required":false,"secret":false},{"name":"CALDAV_DENY_TOOLS","description":"Comma-separated tool names or list_* prefixes to remove from whatever the allow list left","format":"string","required":false,"secret":false},{"name":"ELICITATION","description":"Deliberately unprefixed, and reaches every MCP server in the environment. Set to false to make guarded tools use the two-call token instead of a dialog (default: true)","format":"boolean","required":false,"secret":false}],"additional_arguments_declared":false},{"registryType":"oci","identifier":"ghcr.io/ni-c/caldav-mcp:0.1.4","transport":"stdio","environment":[{"name":"CALDAV_URL","description":"Root of the CalDAV server, e.g. https://dav.example.net. A calendar collection URL also works.","format":"string","required":true,"secret":false},{"name":"CALDAV_USERNAME","description":"Account name. Most hosted services want an app-specific password with it.","format":"string","required":false,"secret":false},{"name":"CALDAV_PASSWORD","description":"Password or app-specific password. Deleted from the environment once read.","format":"string","required":false,"secret":true},{"name":"CALDAV_TOKEN","description":"Bearer token, as an alternative to username and password. Not both.","format":"string","required":false,"secret":true},{"name":"CALDAV_CALENDARS","description":"Comma-separated calendars this server may touch, by path or final path segment. Default: all of them.","format":"string","required":false,"secret":false},{"name":"CALDAV_TIMEZONE","description":"IANA zone for timestamps that carry no offset, e.g. Europe/Berlin (default: UTC)","format":"string","required":false,"secret":false},{"name":"CALDAV_USER_EMAIL","description":"The address you are invited as, so respond_to_event can find your own attendee line","format":"string","required":false,"secret":false},{"name":"CALDAV_MAX_EVENTS","description":"Entries a listing returns by default, 1 to 500 (default: 100)","format":"number","required":false,"secret":false},{"name":"CALDAV_READ_ONLY","description":"Set to true to register only the read tools (default: false)","format":"boolean","required":false,"secret":false},{"name":"CALDAV_INSECURE_TLS","description":"Set to true to accept a self-signed certificate on the configured host only (default: false)","format":"boolean","required":false,"secret":false},{"name":"CALDAV_ALLOW_PLAINTEXT","description":"Set to true to allow a plain http:// URL to a host that is not loopback, which sends the credentials unencrypted (default: false)","format":"boolean","required":false,"secret":false},{"name":"CALDAV_ALLOW_TOOLS","description":"Comma-separated tool names or list_* prefixes to register; 'essential' selects a curated preset (default: all tools)","format":"string","required":false,"secret":false},{"name":"CALDAV_DENY_TOOLS","description":"Comma-separated tool names or list_* prefixes to remove from whatever the allow list left","format":"string","required":false,"secret":false},{"name":"ELICITATION","description":"Deliberately unprefixed, and reaches every MCP server in the environment. Set to false to make guarded tools use the two-call token instead of a dialog (default: true)","format":"boolean","required":false,"secret":false}],"additional_arguments_declared":false}],"remotes":[]} | MCP-Register | 2026-09-09T01:17:01.503Z | selbstauskunft |  |

## Verweise

- Namensraum: [[namensraum/io-github-ni-c|io.github.ni-c]]

---

- Registerseite: <https://tracevero.de/mcp/io-github-ni-c-caldav-mcp>
- Abgerufen am: 2026-10-10
