CalDAV calendars

Registre officiel Productivité

Read and write CalDAV calendars: events, tasks and journal entries over the open standard

Installation

Ajoutez ceci à la configuration MCP de votre client (Claude Desktop : claude_desktop_config.json ; Cursor : .cursor/mcp.json ; VS Code et les autres utilisent la même forme « mcpServers »).

NPM package @ni-c/caldav-mcp
Claude Code
claude mcp add caldav-calendars -e 'CALDAV_URL=<CALDAV_URL>' -e 'CALDAV_USERNAME=<CALDAV_USERNAME>' -e 'CALDAV_PASSWORD=<your caldav_password>' -e 'CALDAV_TOKEN=<your caldav_token>' -e 'CALDAV_CALENDARS=<CALDAV_CALENDARS>' -e 'CALDAV_TIMEZONE=<CALDAV_TIMEZONE>' -e 'CALDAV_USER_EMAIL=<CALDAV_USER_EMAIL>' -e 'CALDAV_MAX_EVENTS=<CALDAV_MAX_EVENTS>' -e 'CALDAV_READ_ONLY=<CALDAV_READ_ONLY>' -e 'CALDAV_INSECURE_TLS=<CALDAV_INSECURE_TLS>' -e 'CALDAV_ALLOW_PLAINTEXT=<CALDAV_ALLOW_PLAINTEXT>' -e 'CALDAV_ALLOW_TOOLS=<CALDAV_ALLOW_TOOLS>' -e 'CALDAV_DENY_TOOLS=<CALDAV_DENY_TOOLS>' -e 'ELICITATION=<ELICITATION>' -- npx -y @ni-c/caldav-mcp@0.1.5
Configuration JSON (Claude Desktop, Cursor, VS Code)
{
    "mcpServers": {
        "caldav-calendars": {
            "command": "npx",
            "args": [
                "-y",
                "@ni-c/caldav-mcp@0.1.5"
            ],
            "env": {
                "CALDAV_URL": "<CALDAV_URL>",
                "CALDAV_USERNAME": "<CALDAV_USERNAME>",
                "CALDAV_PASSWORD": "<your caldav_password>",
                "CALDAV_TOKEN": "<your caldav_token>",
                "CALDAV_CALENDARS": "<CALDAV_CALENDARS>",
                "CALDAV_TIMEZONE": "<CALDAV_TIMEZONE>",
                "CALDAV_USER_EMAIL": "<CALDAV_USER_EMAIL>",
                "CALDAV_MAX_EVENTS": "<CALDAV_MAX_EVENTS>",
                "CALDAV_READ_ONLY": "<CALDAV_READ_ONLY>",
                "CALDAV_INSECURE_TLS": "<CALDAV_INSECURE_TLS>",
                "CALDAV_ALLOW_PLAINTEXT": "<CALDAV_ALLOW_PLAINTEXT>",
                "CALDAV_ALLOW_TOOLS": "<CALDAV_ALLOW_TOOLS>",
                "CALDAV_DENY_TOOLS": "<CALDAV_DENY_TOOLS>",
                "ELICITATION": "<ELICITATION>"
            }
        }
    }
}

Variables d'environnement

  • CALDAV_URL obligatoire 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_PASSWORD secret Password or app-specific password. Deleted from the environment once read.
  • CALDAV_TOKEN secret Bearer token, as an alternative to username and password. Not both.
  • CALDAV_CALENDARS Comma-separated calendars this server may touch, by path or final path segment. Default: all of them.
  • CALDAV_TIMEZONE IANA zone for timestamps that carry no offset, e.g. Europe/Berlin (default: UTC)
  • CALDAV_USER_EMAIL The address you are invited as, so respond_to_event can find your own attendee line
  • CALDAV_MAX_EVENTS Entries a listing returns by default, 1 to 500 (default: 100)
  • CALDAV_READ_ONLY Set to true to register only the read tools (default: false)
  • CALDAV_INSECURE_TLS Set to true to accept a self-signed certificate on the configured host only (default: false)
  • 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_DENY_TOOLS Comma-separated tool names or list_* prefixes to remove from whatever the allow list left
  • 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)
OCI package ghcr.io/ni-c/caldav-mcp:0.1.5
Claude Code
claude mcp add caldav-calendars -e 'CALDAV_URL=<CALDAV_URL>' -e 'CALDAV_USERNAME=<CALDAV_USERNAME>' -e 'CALDAV_PASSWORD=<your caldav_password>' -e 'CALDAV_TOKEN=<your caldav_token>' -e 'CALDAV_CALENDARS=<CALDAV_CALENDARS>' -e 'CALDAV_TIMEZONE=<CALDAV_TIMEZONE>' -e 'CALDAV_USER_EMAIL=<CALDAV_USER_EMAIL>' -e 'CALDAV_MAX_EVENTS=<CALDAV_MAX_EVENTS>' -e 'CALDAV_READ_ONLY=<CALDAV_READ_ONLY>' -e 'CALDAV_INSECURE_TLS=<CALDAV_INSECURE_TLS>' -e 'CALDAV_ALLOW_PLAINTEXT=<CALDAV_ALLOW_PLAINTEXT>' -e 'CALDAV_ALLOW_TOOLS=<CALDAV_ALLOW_TOOLS>' -e 'CALDAV_DENY_TOOLS=<CALDAV_DENY_TOOLS>' -e 'ELICITATION=<ELICITATION>' -- docker run -i --rm ghcr.io/ni-c/caldav-mcp:0.1.5
Configuration JSON (Claude Desktop, Cursor, VS Code)
{
    "mcpServers": {
        "caldav-calendars": {
            "command": "docker",
            "args": [
                "run",
                "-i",
                "--rm",
                "ghcr.io/ni-c/caldav-mcp:0.1.5"
            ],
            "env": {
                "CALDAV_URL": "<CALDAV_URL>",
                "CALDAV_USERNAME": "<CALDAV_USERNAME>",
                "CALDAV_PASSWORD": "<your caldav_password>",
                "CALDAV_TOKEN": "<your caldav_token>",
                "CALDAV_CALENDARS": "<CALDAV_CALENDARS>",
                "CALDAV_TIMEZONE": "<CALDAV_TIMEZONE>",
                "CALDAV_USER_EMAIL": "<CALDAV_USER_EMAIL>",
                "CALDAV_MAX_EVENTS": "<CALDAV_MAX_EVENTS>",
                "CALDAV_READ_ONLY": "<CALDAV_READ_ONLY>",
                "CALDAV_INSECURE_TLS": "<CALDAV_INSECURE_TLS>",
                "CALDAV_ALLOW_PLAINTEXT": "<CALDAV_ALLOW_PLAINTEXT>",
                "CALDAV_ALLOW_TOOLS": "<CALDAV_ALLOW_TOOLS>",
                "CALDAV_DENY_TOOLS": "<CALDAV_DENY_TOOLS>",
                "ELICITATION": "<ELICITATION>"
            }
        }
    }
}

Variables d'environnement

  • CALDAV_URL obligatoire 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_PASSWORD secret Password or app-specific password. Deleted from the environment once read.
  • CALDAV_TOKEN secret Bearer token, as an alternative to username and password. Not both.
  • CALDAV_CALENDARS Comma-separated calendars this server may touch, by path or final path segment. Default: all of them.
  • CALDAV_TIMEZONE IANA zone for timestamps that carry no offset, e.g. Europe/Berlin (default: UTC)
  • CALDAV_USER_EMAIL The address you are invited as, so respond_to_event can find your own attendee line
  • CALDAV_MAX_EVENTS Entries a listing returns by default, 1 to 500 (default: 100)
  • CALDAV_READ_ONLY Set to true to register only the read tools (default: false)
  • CALDAV_INSECURE_TLS Set to true to accept a self-signed certificate on the configured host only (default: false)
  • 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_DENY_TOOLS Comma-separated tool names or list_* prefixes to remove from whatever the allow list left
  • 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)

Questions fréquentes

Qu'est-ce que CalDAV calendars ?

Read and write CalDAV calendars: events, tasks and journal entries over the open standard

Comment installer CalDAV calendars ?

Il s'exécute sur votre machine. Dans Claude Code : claude mcp add caldav-calendars -e 'CALDAV_URL=<CALDAV_URL>' -e 'CALDAV_USERNAME=<CALDAV_USERNAME>' -e 'CALDAV_PASSWORD=<your caldav_password>' -e 'CALDAV_TOKEN=<your caldav_token>' -e 'CALDAV_CALENDARS=<CALDAV_CALENDARS>' -e 'CALDAV_TIMEZONE=<CALDAV_TIMEZONE>' -e 'CALDAV_USER_EMAIL=<CALDAV_USER_EMAIL>' -e 'CALDAV_MAX_EVENTS=<CALDAV_MAX_EVENTS>' -e 'CALDAV_READ_ONLY=<CALDAV_READ_ONLY>' -e 'CALDAV_INSECURE_TLS=<CALDAV_INSECURE_TLS>' -e 'CALDAV_ALLOW_PLAINTEXT=<CALDAV_ALLOW_PLAINTEXT>' -e 'CALDAV_ALLOW_TOOLS=<CALDAV_ALLOW_TOOLS>' -e 'CALDAV_DENY_TOOLS=<CALDAV_DENY_TOOLS>' -e 'ELICITATION=<ELICITATION>' -- npx -y @ni-c/caldav-mcp@0.1.5. Pour les autres clients, collez la configuration JSON de cette page dans leurs réglages MCP.

Faut-il une clé API pour CalDAV calendars ?

Oui. Il attend CALDAV_URL, CALDAV_PASSWORD, CALDAV_TOKEN, à renseigner dans sa configuration.

CalDAV calendars est-il open source ?

Son code est public sur GitHub, mais le dépôt ne déclare pas de licence standard.

Qui maintient CalDAV calendars ?

Il est publié par ni-c. AI.tn le référence sans le maintenir ni le recommander.

Issu du registre MCP officiel. Être listé n'est pas une recommandation : vérifiez le code et les permissions d'un serveur avant de lui donner accès à vos données.