Nextcloud Calendar
CalDAV Nectcloud calendar integration. Manage calendars, events, attendees, etc.
MCP Nextcloud Calendar
A Model Context Protocol (MCP) server for Nextcloud Calendar integration.
Features
- Fetch calendars from Nextcloud
- ADHD-friendly organization features
- MCP protocol support (Streamable HTTP and Legacy HTTP+SSE)
Usage
Using with npx
The easiest way to use this package is with npx:
npx mcp-nextcloud-calendar
Installation
For development or local installation:
# Install globally
npm install -g mcp-nextcloud-calendar
# Or install locally
npm install mcp-nextcloud-calendar
MCP Client Configuration
To use with an MCP client (like Claude), add this configuration to your MCP client settings:
{
"mcpServers": {
"nextcloud-calendar": {
"command": "npx",
"args": ["-y", "mcp-nextcloud-calendar"],
"env": {
"NEXTCLOUD_BASE_URL": "https://your-nextcloud-server.com",
"NEXTCLOUD_USERNAME": "your-username",
"NEXTCLOUD_APP_TOKEN": "your-app-token"
}
}
}
}
Specifying a Version
You can pin to a specific version of the package:
{
"mcpServers": {
"nextcloud-calendar": {
"command": "npx",
"args": ["-y", "[email protected]"],
"env": {
"NEXTCLOUD_BASE_URL": "https://your-nextcloud-server.com",
"NEXTCLOUD_USERNAME": "your-username",
"NEXTCLOUD_APP_TOKEN": "your-app-token"
}
}
}
}
Configuration
Environment Variables
The server uses these environment variables, with defaults where possible:
| Variable | Description | Default | Required |
|---|---|---|---|
| PORT | Server port | 3001 | No |
| SERVER_NAME | MCP server identifier | nextcloud-calendar-server | No |
| NODE_ENV | Environment (development/production) | development | No |
| NEXTCLOUD_BASE_URL | Your Nextcloud server URL | - | Yes |
| NEXTCLOUD_USERNAME | Your Nextcloud username | - | Yes |
| NEXTCLOUD_APP_TOKEN | Your Nextcloud app token | - | Yes |
| KEEP_ALIVE_INTERVAL | Keep-alive interval (ms) | 30000 | No |
Development Setup
For local development:
- Clone the repository
- Install dependencies:
npm install
- Create a
.envfile in the project root:
cp .env.example .env
- Edit the
.envfile with your Nextcloud credentials.
Getting a Nextcloud App Token
- Log in to your Nextcloud instance
- Go to Settings → Security → App Passwords
- Create a new app password with a name like "MCP Calendar"
- Copy the generated token to your
.envfile
Development
# Build the project
npm run build
# Run in development mode
npm run dev
# Run tests
npm run test
# Run linting
npm run lint
# Format code
npm run format
API Endpoints
/mcp- Primary MCP endpoint (Streamable HTTP transport)/sseand/messages- Legacy MCP endpoints (HTTP+SSE transport)GET /health- Health check endpointGET /api/calendars- List all calendars
MCP Tools
The following MCP tools are registered and available to clients:
Calendar Management
| Tool | Description | Parameters |
|---|---|---|
listCalendars | Retrieves all accessible calendars | None |
createCalendar | Creates a new calendar | displayName (required), color (optional), category (optional), focusPriority (optional) |
updateCalendar | Updates an existing calendar | id (required), displayName (optional), color (optional), category (optional), focusPriority (optional) |
deleteCalendar | Deletes a calendar | id (required) |
⚠️ Permission Warning: The
updateCalendaranddeleteCalendartools may require special permissions in your Nextcloud instance. Calendar operations are subject to Nextcloud's permission system.
Event Management
| Tool | Description | Parameters |
|---|---|---|
listEvents | Retrieves events for a calendar | calendarId (required), start (optional), end (optional) |
getEvent | Gets a specific event | calendarId (required), eventId (required) |
createEvent | Creates a new event | calendarId (required), summary (required), start (required), end (required), description (optional), location (optional) |
updateEvent | Updates an existing event | calendarId (required), eventId (required), [plus any event properties to update] |
deleteEvent | Deletes an event | calendarId (required), eventId (required) |
Known Issues and Limitations
Note: This package is currently in early development (0.1.x). APIs and tools may change without notice in future releases.
- The update and delete calendar operations may require specific permissions in your Nextcloud instance
- Error handling for specific Nextcloud error codes is still being improved
- Large calendars with many events may experience performance issues
Please report any issues on the GitHub repository.
License
ISC
관련 서버
Kone.vc
스폰서Monetize your AI agent with contextual product recommendations
Learning-Assistant-MCP
An MCP server that helps developers understand what they’re building by explaining concepts, reviewing approaches, and guiding them toward better solutions.
WordPress MCP
A Model Context Protocol (MCP) server that gives AI agents full control over WordPress sites. 46 tools for posts, pages, media, SEO, comments, redirects, blocks, patterns, TablePress, and more.
Excel to PDF MCP Server
Convert Excel and Apple Numbers files to PDF format.
MCP Character Counter
Analyzes text to provide detailed character counts, including letters, numbers, and symbols.
PPC Ad Editor - Generate Ad Previews Inside AI Agents
Create Google, Meta, and LinkedIn ad previews instantly from Claude, Cursor, or any MCP client—no account or setup required.
MCP Todoist
Manage your tasks and projects with the Todoist API.
Dart
Interact with task, doc, and project data in Dart, an AI-native project management tool
mcp-server-nano-banana
AI image generation with Google Gemini's Nano-Banana model.
Brightspace MCP Server
MCP server for Brightspace (D2L): check grades, due dates, announcements, rosters & more using Claude, ChatGPT, Cursor, or any MCP client.
Excel MCP Server
Read and write data from Microsoft Excel files. Supports text, formulas, sheet creation, and Windows-only live editing.