CCM
/MCP
SkillsMCPMarketplacesDigestToolsAdvertise

This week in Claude

Every Monday: Claude Code, Agent SDK, MCP, and the Anthropic platform moves worth your time.

Skills by Category
Frontend DevelopmentBackend & APIsTesting & QASecurityDevOps & CI/CDGit & Pull RequestsDocumentationCode Review & QualityAI & Agent BuildingSkill Development
MCP Servers by Category
Sales & MarketingWeb & Browser AutomationDatabasesAI & LLM ToolsCloud & InfrastructureCommunication & MessagingDeveloper ToolsDesign & CreativeDocuments & KnowledgeSearch & Web Crawling
Marketplaces by Category
AI Agents & OrchestrationLLM IntegrationDevelopment ToolsFrontend & UIBackend & APIsDatabasesTesting & Code QualityDevOps & CloudSecurity & ComplianceGit & Version Control

Claude Code Marketplaces

Discover Claude Code plugins, extensions, and tools. Automatically updated directory of Anthropic Claude AI marketplaces with development tools, productivity plugins, and integrations.

Resources

  • Browse Skills
  • Browse MCP Servers
  • Browse Marketplaces
  • Plugins Reference

Community

  • About
  • Tools
  • Feedback
  • Privacy Policy
  • Advertise

Built for the Claude Code community with Claude Code by @mertduzgun

Independent project, not affiliated with Anthropic

Caldav Mcp

dominik1001/caldav-mcp
78authSTDIOregistry active
Summary

Connects Claude to any CalDAV server to manage calendar events through standard protocol operations. You get six tools: list calendars, query events by date range, create events with optional recurrence rules, update existing events by UID, and delete events. Supports the usual event fields like summary, description, location, plus recurring events with daily, weekly, monthly, or yearly patterns. Configuration requires your CalDAV server URL and credentials as environment variables. Useful when you want Claude to schedule meetings, check availability, or manage calendar entries directly instead of just generating ics files or giving you commands to run manually.

CodeRabbit
CodeRabbit
AI writes the code. CodeRabbit catches the slop.
Try For Free →
AppSignal
AppSignal
Monitor with ease. Code with confidence.
Start Free Trial →
AI notepad for back-to-back meetings
AI notepad for back-to-back meetings
Notes, actions and memory. Without a meeting bot. First month 100% off.
Download for free →
Keep your Mac awake
Keep your Mac awake
Keep your Mac awake while Claude Code and 40+ AI agents run. Sleeps when they're idle.
One time payment $9 →
Email for Agents: Free tier availableEmail for Agents: Free tier available
Email for Agents: Free tier available
Give your AI agent a complete email layer—sending, inbound inboxes, and sandbox testing.
Get 4K emails/month free →
Context.devContext.dev
Context.dev
Integrate web data into your AI product. One API to scrape website & brand data.
Get API Key Now →
CodeScene MCP ServerCodeScene MCP Server
CodeScene MCP Server
Your agent targets a perfect 10 Code Health score. Deterministic. Every commit.
Try For Free →
Make your agent a DeFi expert
Make your agent a DeFi expert
Agent, run crypto. Access onchain data & trade routes via 1inch.
Install now →
CodeRabbit
CodeRabbit
AI writes the code. CodeRabbit catches the slop.
Try For Free →
AppSignal
AppSignal
Monitor with ease. Code with confidence.
Start Free Trial →
AI notepad for back-to-back meetings
AI notepad for back-to-back meetings
Notes, actions and memory. Without a meeting bot. First month 100% off.
Download for free →
Keep your Mac awake
Keep your Mac awake
Keep your Mac awake while Claude Code and 40+ AI agents run. Sleeps when they're idle.
One time payment $9 →
Email for Agents: Free tier availableEmail for Agents: Free tier available
Email for Agents: Free tier available
Give your AI agent a complete email layer—sending, inbound inboxes, and sandbox testing.
Get 4K emails/month free →
Context.devContext.dev
Context.dev
Integrate web data into your AI product. One API to scrape website & brand data.
Get API Key Now →
CodeScene MCP ServerCodeScene MCP Server
CodeScene MCP Server
Your agent targets a perfect 10 Code Health score. Deterministic. Every commit.
Try For Free →
Make your agent a DeFi expert
Make your agent a DeFi expert
Agent, run crypto. Access onchain data & trade routes via 1inch.
Install now →

caldav-mcp

🗓️ A CalDAV Model Context Protocol (MCP) server to expose calendar operations as tools for AI assistants.

Release npm version MIT License code style: prettier MCP Compatible semantic-release: angular

✨ Features

  • Connect to CalDAV servers
  • List calendars
  • List calendar events within a specific timeframe
  • Create calendar events
  • Update calendar events
  • Delete calendar events by UID

Setup

{
  "mcpServers": {
    ...,
    "calendar": {
      "command": "npx",
      "args": [
        "caldav-mcp"
      ],
      "env": {
        "CALDAV_BASE_URL": "<CalDAV server URL>",
        "CALDAV_USERNAME": "<CalDAV username>",
        "CALDAV_PASSWORD": "<CalDAV password>"
      }
    }
  }
}

Development

Quick Start

Run the MCP server in development mode with auto-reload:

npm run dev

This will run the TypeScript code directly with watch mode and automatically load environment variables from .env.

Manual Build

Alternatively, you can compile TypeScript to JavaScript and run it:

  1. Compile:
npx tsc
  1. Run:
node dist/index.js

Available Tools

list-calendars

List all calendars returning both name and URL

Parameters: none

Returns:

  • List of all available calendars

list-events

List all events between start and end date in the calendar specified by its URL

Parameters:

  • start: string — Start date (ISO 8601)
  • end: string — End date (ISO 8601)
  • calendarUrl: string

Returns:

  • A list of events that fall within the given timeframe, each containing uid, summary, start, end, and optionally description and location

create-event

Creates an event in the calendar specified by its URL. For all-day events, set wholeDay to true. For a single-day all-day event, use start and end datetimes on the same calendar date; they do not need to be identical timestamps.

Parameters:

  • summary: string
  • start: string — Start datetime (ISO 8601)
  • end: string — End datetime (ISO 8601)
  • wholeDay: boolean (optional) — Create as a whole-day event
  • calendarUrl: string
  • description: string (optional)
  • location: string (optional)
  • recurrenceRule: object (optional)
    • freq: enum (DAILY | WEEKLY | MONTHLY | YEARLY) (optional)
    • interval: number (optional)
    • count: number (optional)
    • until: string (optional)
    • byday: array of string (optional)
    • bymonthday: array of number (optional)
    • bymonth: array of number (optional)

Returns:

  • The unique ID of the created event

update-event

Updates an existing event in the calendar specified by its URL. Only provided fields are changed. For a one-day full-day event, set wholeDay to true and set start and end to the same calendar day.

Parameters:

  • uid: string — Unique identifier of the event to update (obtained from list-events)
  • calendarUrl: string
  • summary: string (optional)
  • start: string (optional)
  • end: string (optional)
  • wholeDay: boolean (optional) — Update whether this is a whole-day event
  • description: string (optional)
  • location: string (optional)
  • recurrenceRule: object (optional)
    • freq: enum (DAILY | WEEKLY | MONTHLY | YEARLY) (optional)
    • interval: number (optional)
    • count: number (optional)
    • until: string (optional)
    • byday: array of string (optional)
    • bymonthday: array of number (optional)
    • bymonth: array of number (optional)

Returns:

  • The unique ID of the updated event

delete-event

Deletes an event in the calendar specified by its URL

Parameters:

  • uid: string — Unique identifier of the event to delete (obtained from list-events)
  • calendarUrl: string

Returns:

  • Confirmation message when the event is successfully deleted

list-todos

List tasks (VTODOs) in the calendar specified by its URL. By default returns only open tasks (NEEDS-ACTION and IN-PROCESS), sorted by manual order then due date. Use status to include completed (COMPLETED) or all (ALL) tasks, and limit/offset to page through long lists.

Parameters:

  • calendarUrl: string
  • status: enum (OPEN | ALL | NEEDS-ACTION | COMPLETED | IN-PROCESS | CANCELLED) (optional) — Filter by status. OPEN (default) = NEEDS-ACTION + IN-PROCESS; ALL = everything; or an exact status (NEEDS-ACTION, COMPLETED, IN-PROCESS, CANCELLED).
  • due_before: string (optional) — Only tasks with a due date at or before this (ISO 8601). Undated tasks are excluded when a due window is set.
  • due_after: string (optional) — Only tasks with a due date at or after this (ISO 8601). Undated tasks are excluded when a due window is set.
  • limit: number (optional) — Max tasks to return (default 50, max 500)
  • offset: number (optional) — Tasks to skip (default 0)

Returns:

  • An object { todos, total, limit, offset } where total is the count before pagination. Each todo has uid, summary, status, and optionally due, start, completed, description, location.

create-todo

Creates a task (VTODO) in the calendar specified by its URL. Only summary is required; a task may have no dates. Use due for a deadline and start for when work should begin.

Parameters:

  • summary: string
  • calendarUrl: string
  • due: string (optional) — Due datetime (ISO 8601)
  • start: string (optional) — Start datetime (ISO 8601)
  • description: string (optional)
  • location: string (optional)
  • status: enum (NEEDS-ACTION | COMPLETED | IN-PROCESS | CANCELLED) (optional) — Defaults to NEEDS-ACTION when omitted

Returns:

  • The unique ID of the created todo

update-todo

Updates an existing task (VTODO) in the calendar specified by its URL. Only provided fields are changed. To mark a task done, prefer the complete-todo tool.

Parameters:

  • uid: string — Unique identifier of the todo to update (from list-todos)
  • calendarUrl: string
  • summary: string (optional)
  • due: string (optional)
  • start: string (optional)
  • description: string (optional)
  • location: string (optional)
  • status: enum (NEEDS-ACTION | COMPLETED | IN-PROCESS | CANCELLED) (optional)

Returns:

  • The unique ID of the updated todo

complete-todo

Marks a task (VTODO) as done. Sets its status to COMPLETED and records the completion time.

Parameters:

  • uid: string — Unique identifier of the todo to complete (from list-todos)
  • calendarUrl: string

Returns:

  • The unique ID of the completed todo

delete-todo

Deletes a task (VTODO) in the calendar specified by its URL

Parameters:

  • uid: string — Unique identifier of the todo to delete (from list-todos)
  • calendarUrl: string

Returns:

  • Confirmation message when the todo is successfully deleted

License

MIT

Featured
CodeRabbit
CodeRabbit
AI writes the code. CodeRabbit catches the slop.
Try For Free →
AppSignal
AppSignal
Monitor with ease. Code with confidence.
Start Free Trial →
AI notepad for back-to-back meetings
AI notepad for back-to-back meetings
Notes, actions and memory. Without a meeting bot. First month 100% off.
Download for free →
Keep your Mac awake
Keep your Mac awake
Keep your Mac awake while Claude Code and 40+ AI agents run. Sleeps when they're idle.
One time payment $9 →
Email for Agents: Free tier availableEmail for Agents: Free tier available
Email for Agents: Free tier available
Give your AI agent a complete email layer—sending, inbound inboxes, and sandbox testing.
Get 4K emails/month free →
Context.devContext.dev
Context.dev
Integrate web data into your AI product. One API to scrape website & brand data.
Get API Key Now →
CodeScene MCP ServerCodeScene MCP Server
CodeScene MCP Server
Your agent targets a perfect 10 Code Health score. Deterministic. Every commit.
Try For Free →
Make your agent a DeFi expert
Make your agent a DeFi expert
Agent, run crypto. Access onchain data & trade routes via 1inch.
Install now →

Configuration

CALDAV_BASE_URL*

Base URL of the CalDAV server (e.g. https://caldav.example.com)

CALDAV_USERNAME*

Username for CalDAV authentication

CALDAV_PASSWORD*secret

Password for CalDAV authentication

Categories
Productivity & Office
Registryactive
Packagecaldav-mcp
TransportSTDIO
AuthRequired
UpdatedMay 27, 2026
View on GitHub

Related Productivity & Office MCP Servers

View all →
Office PowerPoint

gongrzhe/office-powerpoint-mcp-server

A MCP (Model Context Protocol) server for PowerPoint manipulation using python-pptx. This server provides tools for creating, editing, and manipulating PowerPoint presentations through the MCP protocol.
1.7k
Office-Word-MCP-Server

gongrzhe/office-word-mcp-server

Exposes Word document operations via MCP to create, edit, format, and analyze documents programmatically.
2k
Microsoft Office

io.github.mindstone/mcp-server-office

Microsoft Office MCP server: read and edit Word documents, Excel workbooks, and PowerPoint files
8
Todoist

greirson/mcp-todoist

MCP server that connects Claude to Todoist for natural language task and project management with bulk operations
240
Mcp Apple Notes

henilcalagiya/mcp-apple-notes

MCP server for Apple Notes integration using AppleScript with full CRUD operations
51
AnkiMCP Server

ankimcp/anki-mcp-server-addon

Anki addon that exposes your flashcard collection to AI assistants via a local MCP server.
50