nextcloud-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| MCP_PORT | No | Port for HTTP mode (default: 3000) | 3000 |
| MCP_TRANSPORT | No | Transport mode: 'stdio' (default) or 'http' | stdio |
| NEXTCLOUD_URL | Yes | Your Nextcloud instance URL (e.g., https://your-nextcloud.com) | |
| MCP_AUTH_TOKEN | No | Bearer token for HTTP mode (required if MCP_TRANSPORT=http and server is reachable over network) | |
| NEXTCLOUD_PASSWORD | Yes | Your Nextcloud app password (generate in Settings > Security > Devices & sessions) | |
| NEXTCLOUD_USERNAME | Yes | Your Nextcloud username |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| get_task_listsA | Discover all task lists (CalDAV calendars that support VTODO) available for this user. Returns each list's id (the CalDAV path segment) and display name. Use the id as the listId parameter when calling get_tasks or create_task. |
| get_tasksA | Retrieve tasks from Nextcloud. If listId is omitted all VTODO-capable lists are queried and results are tagged with their source list. Use get_task_lists first to see available list IDs. |
| create_taskB | Create a new task in Nextcloud |
| update_taskA | Update an existing task (mark as complete, change summary, etc.) |
| get_calendar_eventsB | Retrieve calendar events from Nextcloud. Can specify date range. |
| create_calendar_eventB | Create a new calendar event in Nextcloud |
| get_notesC | Retrieve all notes from Nextcloud Notes app |
| create_noteC | Create a new note in Nextcloud Notes app |
| get_note_contentA | Get the full content of a specific note by ID |
| get_emailsA | Retrieve emails from Nextcloud Mail app. Returns recent emails from inbox. |
| list_filesA | List files and folders in a Nextcloud directory. Returns name, type (file/folder), size, and last modified date for each item. |
| get_fileA | Download and return the content of a file from Nextcloud. Best suited for text files (markdown, txt, csv, json, etc.). |
| upload_fileA | Create or overwrite a file in Nextcloud with the given text content. |
| create_folderA | Create a new folder in Nextcloud. |
| move_fileB | Move or rename a file or folder in Nextcloud. |
| get_deck_boardsA | List all Nextcloud Deck boards the user has access to. Returns board IDs, titles, and colors. |
| get_deck_boardA | Get a Deck board with all its stacks (columns) and cards. Use get_deck_boards first to find the board ID. |
| create_deck_cardA | Create a new card in a Nextcloud Deck board stack (column). Use get_deck_board to find stack IDs. |
| update_deck_cardB | Update an existing Deck card's title, description, or due date. |
| move_deck_cardA | Move a Deck card to a different stack (column), e.g. from 'To Do' to 'In Progress'. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 20 tools
Tools are mostly distinct, with clear separation between resources (tasks, calendar, notes, mail, files, deck). The only potential overlap is between get_notes and get_note_content, where get_notes might be assumed to return content, but descriptions clarify that get_note_content fetches the full body. Overall, minor ambiguity.
All tools follow a verb_noun pattern in snake_case, but the verb for retrieving collections is inconsistent: 'get' for tasks, calendar, notes, and deck boards, but 'list' for files. This minor inconsistency prevents a perfect score.
20 tools is on the high end but appropriate for a multi-app integration covering six distinct Nextcloud apps. Each tool has a clear role, though the count feels heavy for a single server.
The server lacks delete operations for any resource type, and calendar events and notes have no update operations. Email support is read-only, which are significant gaps for common workflows.