DAV MCP Server

by jahfer
Integrations
  • 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

  1. Prerequisites: Ensure you have Node.js installed.
  2. Clone the repository: Clone this repository to your local machine.
  3. Install dependencies: Navigate to the project directory and run:
    npm install
    If you intend to publish or use this as a global command, you might also run npm link after installation, or install it globally via npm install -g . (once package.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 to fastmail or icloud (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:

{ "mcpServers": { "myDavServices": { // You can name this anything you like "command": "npx", // Or simply "node" if it's in your PATH "args": ["-y", "@jahfer/dav-mcp-server"], // Path to the main script "env": { "DAV_PROVIDER": "icloud", // or "fastmail" "DAV_USERNAME": "your-username", "DAV_PASSWORD": "your-app-specific-password" } } } }

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.

You must be authenticated.

A
security – no known vulnerabilities
A
license - permissive license
A
quality - confirmed to work

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.

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.

  1. Introduction
    1. Setup
      1. Environment Variable Configuration
        1. MCP Configuration
          1. Available Tools
            1. Calendar (CalDAV)
            2. Contacts (CardDAV)
            3. Files (WebDAV - primarily for Fastmail)
          2. Usage

            Related MCP Servers

            • -
              security
              A
              license
              -
              quality
              A 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 -
              91
              TypeScript
              MIT License
            • A
              security
              A
              license
              A
              quality
              A Model Context Protocol server that provides tools for managing providers, clients, tenants, and access tokens through the UseGrant platform.
              Last updated -
              26
              116
              JavaScript
              MIT License
            • A
              security
              A
              license
              A
              quality
              A Model Context Protocol server providing utility tools for development and testing, offering functionalities like personalized greetings, random card drawing, and datetime formatting with an extensible architecture.
              Last updated -
              19
              464
              2
              TypeScript
              MIT License
              • Apple
              • Linux
            • A
              security
              A
              license
              A
              quality
              A Model Context Protocol server that provides tools for interacting with Gmail and Calendar APIs, enabling programmatic management of emails and calendar events.
              Last updated -
              8
              7
              JavaScript
              MIT License
              • Apple

            View all related MCP servers

            MCP directory API

            We provide all the information about MCP servers via our MCP API.

            curl -X GET 'https://glama.ai/api/mcp/v1/servers/jahfer/dav-mcp-server'

            If you have feedback or need assistance with the MCP directory API, please join our Discord server