Media · Local MCP server
CardDAV address books
Read and write CardDAV address books: contacts, groups and photos over the open standard.
What the MCP Registry states
The entry as published to the official MCP Registry (read 2026-10-04), latest version.
- Registry name
io.github.ni-c/carddav-mcp- Version
- 0.1.3
- Status
- Active
- Category
- media
- Transport
- stdio (local process)
- Package
- npm, OCI image (Docker)
- Published
- 2026-09-08
- Updated
- 2026-09-08
- Publisher
- ni-c (GitHub) · 18 servers with pages here
- Website
- carddav-mcp.ni-c.de
- Repository
- github.com/ni-c/carddav-mcp
- Source
- Registry API entry
Packages
| Registry | Package | Version | Transport |
|---|---|---|---|
| npm | @ni-c/carddav-mcp | 0.1.3 | stdio |
| OCI image (Docker) | ghcr.io/ni-c/carddav-mcp:0.1.3 | — | stdio |
How to connect CardDAV address books
CardDAV address books runs locally from a Node.js package published to the npm registry: @ni-c/carddav-mcp version 0.1.3. It speaks MCP over stdio, so the client starts it as a program and talks to it through standard input and output. It needs Node.js; clients usually start it with npx — the usual command is npx -y @ni-c/carddav-mcp@0.1.3. It reads these environment variables: CARDDAV_URL (required), CARDDAV_USERNAME, CARDDAV_PASSWORD (secret), CARDDAV_TOKEN (secret), CARDDAV_ADDRESSBOOKS, CARDDAV_MAX_CONTACTS, CARDDAV_READ_ONLY, CARDDAV_INSECURE_TLS, CARDDAV_ALLOW_PLAINTEXT, CARDDAV_ALLOW_TOOLS, CARDDAV_DENY_TOOLS and ELICITATION; set them in the client's configuration for this server.
CardDAV address books runs locally from a container image in an OCI registry such as Docker Hub or GitHub Container Registry: ghcr.io/ni-c/carddav-mcp:0.1.3. It speaks MCP over stdio, so the client starts it as a program and talks to it through standard input and output. It needs Docker or another OCI container runtime; started with docker run — the usual command is docker run -i --rm -e CARDDAV_URL -e CARDDAV_USERNAME -e CARDDAV_PASSWORD -e CARDDAV_TOKEN -e CARDDAV_ADDRESSBOOKS -e CARDDAV_MAX_CONTACTS -e CARDDAV_READ_ONLY -e CARDDAV_INSECURE_TLS -e CARDDAV_ALLOW_PLAINTEXT -e CARDDAV_ALLOW_TOOLS -e CARDDAV_DENY_TOOLS -e ELICITATION ghcr.io/ni-c/carddav-mcp:0.1.3. It reads these environment variables: CARDDAV_URL (required), CARDDAV_USERNAME, CARDDAV_PASSWORD (secret), CARDDAV_TOKEN (secret), CARDDAV_ADDRESSBOOKS, CARDDAV_MAX_CONTACTS, CARDDAV_READ_ONLY, CARDDAV_INSECURE_TLS, CARDDAV_ALLOW_PLAINTEXT, CARDDAV_ALLOW_TOOLS, CARDDAV_DENY_TOOLS and ELICITATION; set them in the client's configuration for this server.
In the mcpServers JSON format that many desktop and editor MCP clients read, the entry looks like this (placeholders in angle brackets):
{
"mcpServers": {
"carddav-mcp": {
"command": "npx",
"args": [
"-y",
"@ni-c/carddav-mcp@0.1.3"
],
"env": {
"CARDDAV_URL": "<value>",
"CARDDAV_USERNAME": "<value>",
"CARDDAV_PASSWORD": "<secret>",
"CARDDAV_TOKEN": "<secret>",
"CARDDAV_ADDRESSBOOKS": "<value>",
"CARDDAV_MAX_CONTACTS": "<value>",
"CARDDAV_READ_ONLY": "<value>",
"CARDDAV_INSECURE_TLS": "<value>",
"CARDDAV_ALLOW_PLAINTEXT": "<value>",
"CARDDAV_ALLOW_TOOLS": "<value>",
"CARDDAV_DENY_TOOLS": "<value>",
"ELICITATION": "<value>"
}
}
}
}Derived from the registry entry, not tested here. What the server does, and on what terms, is set by its publisher; check its repository or website before giving it access to your accounts or files. How to add an MCP server to an assistant · Before you connect
More from ni-c (GitHub)
| Server | Runs |
|---|---|
| AudiobookshelfBrowse your Audiobookshelf libraries and keep listening progress, bookmarks and playlists in sync. | Local · stdio |
| CalDAV calendarsRead and write CalDAV calendars: events, tasks and journal entries over the open standard. | Local · stdio |
| Calibre-WebRead-only MCP server for Calibre-Web: library search, browsing and covers via the OPDS feed. | Local · stdio |
| Google Search ConsoleMCP server for Google Search Console: properties, sitemaps, search analytics and URL inspection. | Local · stdio |
| HealthchecksInspect, create and adjust Healthchecks cron and uptime checks, and read why one failed. | Local · stdio |
| Hetzner DNSManage DNS zones and records (zonefiles, RRSets, TTL, protection) via the Hetzner Cloud API. | Local · stdio |
| IMAP mailboxRead, search and organise any IMAP mailbox, with writes off by default. | Local · stdio |
| LinkwardenMCP server for Linkwarden, the self-hosted bookmark manager with page preservation. | Local · stdio |
| mcp-hubMany stdio MCP servers from one container, published over HTTPS with OAuth 2.1 for any MCP client. | Local · stdio, HTTP |
| Mealie MCP ServerMCP server for Mealie, the self-hosted recipe manager and meal planner. | Local · stdio |
| ntfyPublish ntfy notifications, read the message cache, and manage users and topic access. | Local · stdio |
| OpengistRead, create, update and delete gists on a self-hosted Opengist instance. | Local · stdio |
More media servers
| Server | Runs |
|---|---|
| CaptionPipeOne call burns captions into your video. Hosted, prepaid, no subscription. MP4 plus SRT and VTT. | Remote · HTTP |
| Capturewren: Website Screenshot API for AI Agents (Image + Text)Capturewren: screenshot any URL (banners removed) plus status, title and clean page text for agents. | Remote · HTTP |
| Capturewren: Website Screenshot API for AI Agents (Image + Text)Capturewren: screenshot any URL (banners removed) plus status, title and clean page text for agents. | Remote · HTTP |
| Carbon FyiVoluntary carbon market news and open carbon price data. Read-only, keyless. | Remote · HTTP |
| CARMOTIF Automotive DesignAutomotive design reference search with filters, natural language, image retrieval, and comparison. | Remote · HTTP |
| CarryFeedResolve public X/Twitter profiles, posts, and media through CarryFeed. | Local · stdio |
| CartCutEdit video in the CartCut desktop editor: cuts from a transcript, captions, motion, effects. | Local · stdio |
| Cartridge CafeYour AI builds live WebGPU game worlds on cartridge.cafe — guest door, no account needed. | Local · stdio |