Skip to content
mcp/skillhub

CardDAV address books MCP Server

by ni-cio.github.ni-c/carddav-mcpv0.1.3

Contacts, groups and photos on any CardDAV server (Radicale, Baikal, Nextcloud, Fastmail, iCloud), with ETag-guarded writes and an address book allowlist.

0Node.jsstdioofficial registry

context tax

queued

security

queued

cold start

queued

freshness

Active4d ago

Install CardDAV address books MCP server

Install in Claude Code

claude mcp add carddav -e CARDDAV_URL='<carddav-url>' -e CARDDAV_PASSWORD='<carddav-password>' -e CARDDAV_TOKEN='<carddav-token>' -- npx -y @ni-c/carddav-mcp

Configuration

VariableRequiredSecretDescription
CARDDAV_URLyes—Root of the CardDAV server, e.g. https://dav.example.net. An address book collection URL also works.
CARDDAV_USERNAME——Account name. Most hosted services want an app-specific password with it.
CARDDAV_PASSWORD—yesPassword or app-specific password. Deleted from the environment once read.
CARDDAV_TOKEN—yesBearer token, as an alternative to username and password. Not both.
CARDDAV_ADDRESSBOOKS——Comma-separated address books this server may touch, by path or final path segment. Default: all of them.
CARDDAV_MAX_CONTACTS——Contacts a listing returns by default, 1 to 500 (default: 100)
CARDDAV_READ_ONLY——Set to true to register only the read tools (default: false)
CARDDAV_INSECURE_TLS——Set to true to accept a self-signed certificate on the configured host only (default: false)
CARDDAV_ALLOW_PLAINTEXT——Set to true to allow a plain http:// URL to a host that is not loopback, which sends the credentials and every contact unencrypted (default: false)
CARDDAV_ALLOW_TOOLS——Comma-separated tool names or list_* prefixes to register; 'essential' selects a curated preset (default: all tools)
CARDDAV_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)

Freshness

Active — last maintenance signal 4d ago. The newest of the signals below sets the band.

  1. Last commit (default branch)

    2026-10-06 · 4d ago · GitHub

  2. Latest release

    2026-09-08 · 31d ago · GitHub · v0.1.3

  3. Package published

    no data · npm/PyPI

  4. Registry entry updated

    2026-09-08 · 31d ago · official registry · v0.1.3

FAQ

›How do I install the CardDAV address books MCP server in Claude Code?

Run: claude mcp add carddav -e CARDDAV_URL='<carddav-url>' -e CARDDAV_PASSWORD='<carddav-password>' -e CARDDAV_TOKEN='<carddav-token>' -- npx -y @ni-c/carddav-mcp. For Cursor, VS Code, Claude Desktop and Windsurf, use the install tabs above.

›Does CardDAV address books require an API key?

Yes. It expects CARDDAV_URL, CARDDAV_PASSWORD, CARDDAV_TOKEN, of which 2 are secrets.

›Can I use CardDAV address books as a remote (hosted) MCP server?

No hosted endpoint is published; it runs locally over stdio.

›Is CardDAV address books in the official MCP registry?

Yes, as io.github.ni-c/carddav-mcp.

Alternatives to CardDAV address books

Other communication MCP servers.

View all