The DAV MCP Server allows you to interact with CalDAV, CardDAV, and WebDAV services (such as Fastmail or iCloud) via the Model Context Protocol (MCP) to manage:
- Calendars (CalDAV):
- List available calendars with
get_my_calendars
- Fetch events from specific calendars with optional date/time filtering
- List available calendars with
- Contacts (CardDAV):
- List address books with
get_my_contact_lists
- Retrieve contacts from specific address books
- List address books with
- Files (WebDAV):
- List files and folders from specified paths with
list_my_files_and_folders
- Get metadata for specific files or folders
- List files and folders from specified paths with
Provides WebDAV file operations for services like Fastmail, allowing users to list files and folders, view file metadata, and navigate through their file storage hierarchy.
Enables access to Apple iCloud calendars (CalDAV), contacts (CardDAV), and potentially files, allowing users to list calendars, fetch events, manage contact address books, and retrieve contacts.
DAV MCP Server
Access your calendars, contacts, and files via MCP!
Introduction
This project is a Model Context Protocol (MCP) server that allows you to interact with your CalDAV, CardDAV, and WebDAV services. It supports both Fastmail and Apple iCloud accounts, configured via environment variables.
Setup
- Prerequisites: Ensure you have Node.js installed.
- Clone the repository: Clone this repository to your local machine.
- Install dependencies: Navigate to the project directory and run:If you intend to publish or use this as a global command, you might also run
npm link
after installation, or install it globally vianpm install -g .
(oncepackage.json
is configured for global installation if desired).
Environment Variable Configuration
To connect to your DAV services, you need to set the following environment variables when running the application:
DAV_PROVIDER
: Specifies your DAV service provider. Set tofastmail
oricloud
(case-insensitive).DAV_USERNAME
: Your username for the service (e.g., your Fastmail email address or Apple ID).DAV_PASSWORD
: An app-specific password for the service. It is highly recommended to use app-specific passwords for security.
MCP Configuration
To use this server, you need to configure it as an mcpServer
in your MCP configuration file. Here is an example:
Available Tools
Once configured, this MCP server provides the following tools:
Calendar (CalDAV)
get_my_calendars
: Lists all your available calendars.get_calendar_events
: Fetches events from a specified calendar. You can optionally provide a start and end date/time to filter events within a specific range.
Contacts (CardDAV)
get_my_contact_lists
: Lists all your contact address books.get_contacts_from_list
: Fetches contacts from a specified address book.
Files (WebDAV - primarily for Fastmail)
list_my_files_and_folders
: Lists files and folders within a specified path in your WebDAV storage (defaults to the root).get_file_or_folder_details
: Fetches metadata for a given file or folder URL.
Usage
After setting up the MCP server in your configuration, you can use commands or features within your MCP client that interact with the server definition to manage your calendars, contacts, and files.
remote-capable server
The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.
Tools
A Model Context Protocol server that allows users to interact with their CalDAV, CardDAV, and WebDAV services (calendars, contacts, and files) from Fastmail and Apple iCloud accounts.
Related MCP Servers
- -securityAlicense-qualityA Model Context Protocol server that enables Claude Desktop and other MCP clients to interact with WebDAV file systems through natural language commands for CRUD operations.Last updated -246TypeScriptMIT License
- AsecurityAlicenseAqualityA Model Context Protocol server that provides tools for interacting with Gmail and Calendar APIs, enabling programmatic management of emails and calendar events.Last updated -819JavaScriptMIT License
- AsecurityAlicenseAqualityA Model Context Protocol server that provides tools for Xcode-related operations, making it easier to work with iOS project management, building, testing, archiving, and deploying apps to both simulators and physical devices.Last updated -92514JavaScriptMIT License
- AsecurityAlicenseAqualityA Model Context Protocol server that enables running AppleScript code to interact with Mac applications and system features including Notes, Calendar, Contacts, Messages, file management, and more.Last updated -1569312JavaScriptMIT License