nextcloud-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| MCP_HTTP_HOST | No | Bind address for --http. | 127.0.0.1 |
| MCP_HTTP_PORT | No | Bind port for --http. | 8787 |
| NEXTCLOUD_URL | Yes | Base URL. A trailing slash is removed. No user, password, query, or fragment. Example: https://cloud.example.com | |
| MCP_HTTP_TOKEN | No | If set, HTTP requests must send Authorization: Bearer <token>. Required when the bind address is not loopback. | |
| NEXTCLOUD_USERNAME | Yes | Nextcloud user id. Example: ada | |
| NEXTCLOUD_TIMEOUT_MS | No | Per-request timeout. | 30000 |
| MCP_HTTP_ALLOWED_HOSTS | No | Comma-separated Host names. Required when the bind address is not loopback. | |
| NEXTCLOUD_APP_PASSWORD | Yes | App password from Settings → Security → Devices & sessions. Not the account password. | |
| NEXTCLOUD_MAX_READ_BYTES | No | Read ceiling. Hard max 8388608 (8 MiB). Oversized files are refused, not truncated. | 1048576 |
| NEXTCLOUD_MAX_WRITE_BYTES | No | Upload ceiling. Hard max 33554432 (32 MiB). | 10485760 |
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 | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| list_directoryA | List the immediate children of a folder in the signed-in user's Nextcloud files. Not recursive. path is relative to the files root. |
| statA | Get metadata for one file or folder (name, size, type, etag, file id, modified time) via WebDAV PROPFIND. This is the file-info tool. |
| read_fileA | Read a file from Nextcloud. Text is returned as UTF-8. Binary files are refused unless encoding is base64. Files larger than the server read limit are refused rather than truncated. |
| write_fileA | Create or upload a file over WebDAV PUT. Refuses to overwrite an existing file unless overwrite is true. Set parents true to create missing parent folders. Does not delete anything else. |
| mkdirA | Create a folder with WebDAV MKCOL. Set parents true to create missing ancestors. Refuses when a path segment already exists as a file. |
| moveA | Move or rename a file or folder with WebDAV MOVE. overwrite defaults to false. Refuses to move the files root or a folder into itself. |
| deleteA | Delete one file or one folder. Requires confirm: true. Deleting a folder also requires recursive: true because Nextcloud removes the folder's contents. Refuses the files root. There is no recursive account wipe and no multi-path delete. |
| create_share_linkA | Create a public Nextcloud share link via the OCS Share API (shareType 3). Default permission is read-only. Does not send email. The password is not included in the result. Some Nextcloud versions rewrite link permissions on create; the result reports the permissions the server stored. |
| searchA | Search file and folder names with Nextcloud WebDAV SEARCH (RFC 5323) on /remote.php/dav/. This is a filename substring match inside one folder scope (default: the user's files), not full-text content search. The server must allow SEARCH. Results are capped. |
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 9 tools
Each tool targets a clearly distinct file-system operation: stat for metadata, list_directory for listing, read_file/write_file for content, mkdir for folders, move/delete for lifecycle changes, create_share_link for sharing, and search for filename lookup. The descriptions explicitly distinguish overlapping-seeming tools, such as search being filename-only and stat being the file-info tool.
Most names use recognizable verb_noun or verb forms (list_directory, read_file, write_file, create_share_link), with conventional Unix-like exceptions such as stat, mkdir, move, delete, and search. The set is readable and predictable, but not a uniform verb_noun convention throughout.
Nine tools is well-scoped for a Nextcloud file operations server, covering the essential file/folder lifecycle and sharing actions without obvious filler. Each tool appears to earn its place in the surface.
Core CRUD/lifecycle operations are covered: stat, list, read, write, mkdir, move, delete, and create_share_link. Minor gaps exist around share-link management (listing or revoking links) and possibly copy operations, but agents can work around these or use WebDAV behavior for common file workflows.