About Nextcloudmcp
Nextcloudmcp is an MCP server for managing a Nextcloud instance, intended for AI agents handling files, shares, users, and system information. Alongside remote file operations, it supports local downloads for processing, comments, activity monitoring, and related workflow prompts.
Key features
- 01Manage files and folders
- 02Create and maintain shares
- 03Manage users, groups, and membership
- 04Inspect server status and activity
- 05Download and upload local files
Use cases
- 01Organize and process Nextcloud files
- 02Configure share permissions and expiry
- 03Maintain user accounts and groups
- 04Review sharing settings and server activity
MCP support
The server exposes tools for Nextcloud files, shares, users, groups, comments, and activities. It also provides file, share, user, group, and status resources, along with management workflow prompts.
Configuration
Local server config is the same for every client. Copy it into your client’s MCP config file.
We haven’t collected a package or remote endpoint for this server. Follow the instructions in the project README.
Tools
Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.
Details
From the project READMENextcloud MCP Server
A comprehensive Model Context Protocol (MCP) server for Nextcloud integration, providing AI agents with secure access to Nextcloud's file management, sharing, user administration, and system monitoring capabilities.
Features
🗂️ File Management
- WebDAV Operations: List, upload, download, delete, move, copy files and folders
- Directory Navigation: Browse directory structures with configurable depth
- Binary File Support: Handle both text and binary files with base64 encoding
- Folder Creation: Create new directories in your Nextcloud instance
🔗 Sharing Management
- Share Creation: Create user, group, public, and email shares
- Share Configuration: Set permissions, passwords, expiration dates, and notes
- Share Monitoring: List and monitor all existing shares
- Share Updates: Modify existing share settings
- Share Deletion: Remove shares when no longer needed
👥 User Administration
- User Management: Create, read, update, and delete users (admin privileges required)
- Group Management: Create groups and manage group memberships
- User Details: Access comprehensive user information including quotas and preferences
- Bulk Operations: Efficient handling of multiple users and groups
🔧 System Monitoring
- Server Status: Monitor Nextcloud server health and version information
- Capabilities: Access server capabilities and configuration details
- Security Auditing: Built-in security audit workflows
📋 Workflow Prompts
- Backup Workflows: Automated file backup procedures
- Share Management: Comprehensive sharing workflows
- User Administration: Step-by-step user management processes
- File Organization: Smart file categorization and organization
- Security Audits: Automated security assessment procedures
Installation
Prerequisites
- Node.js 18+
- npm or yarn
- Nextcloud server with API access
- Valid Nextcloud user credentials
Setup
- Clone and install dependencies:
git clone https://github.com/mirekdlugosz/nextcloud-mcp-server.git
cd nextcloud-mcp-server
npm install
- Configure environment variables:
Create a
.envfile in the root directory:
NEXTCLOUD_URL=https://your-nextcloud-server.com
NEXTCLOUD_USERNAME=your-username
NEXTCLOUD_PASSWORD=your-password-or-app-password
Security Note: It's recommended to use App Passwords instead of your main password. Generate one in Nextcloud Settings → Security → Devices & sessions.
- Build the project:
npm run build
- Test the server:
npm start
Usage with Claude Desktop
Add the following configuration to your Claude Desktop config file:
macOS
~/Library/Application Support/Claude/claude_desktop_config.json
Windows
%APPDATA%/Claude/claude_desktop_config.json
{
"mcpServers": {
"nextcloud": {
"command": "node",
"args": ["/path/to/nextcloud-mcp-server/dist/index.js"],
"env": {
"NEXTCLOUD_URL": "https://your-nextcloud-server.com",
"NEXTCLOUD_USERNAME": "your-username",
"NEXTCLOUD_PASSWORD": "your-password-or-app-password"
}
}
}
}
Available Tools (37 total)
File Operations (7)
nextcloud_list_files- List files and foldersnextcloud_upload_file- Upload files to Nextcloudnextcloud_download_file- Download files from Nextcloudnextcloud_delete_file- Delete files or foldersnextcloud_move_file- Move or rename files/foldersnextcloud_copy_file- Copy files or foldersnextcloud_create_folder- Create new folders
Share Management (4)
nextcloud_list_shares- List all sharesnextcloud_create_share- Create new sharesnextcloud_update_share- Update existing sharesnextcloud_delete_share- Delete shares
User Management (7)
nextcloud_list_users- List all usersnextcloud_get_user- Get user detailsnextcloud_create_user- Create new usersnextcloud_update_user- Update user informationnextcloud_delete_user- Delete usersnextcloud_enable_user- Enable disabled user accounts ⭐ NEWnextcloud_disable_user- Disable user accounts (preserves data) ⭐ NEW
Group Management (6)
nextcloud_list_groups- List all groupsnextcloud_create_group- Create new groupsnextcloud_delete_group- Delete groups ⭐ NEWnextcloud_add_user_to_group- Add users to groupsnextcloud_remove_user_from_group- Remove users from groupsnextcloud_get_group_users- Get all users in a group ⭐ NEW
System Information (3)
nextcloud_get_server_status- Get server statusnextcloud_get_capabilities- Get server capabilitiesnextcloud_test_connection- Test connection and verify credentials
Comments (3)
nextcloud_list_comments- List comments for a filenextcloud_add_comment- Add comment to a filenextcloud_delete_comment- Delete a comment from a file
Local File Management (5)
nextcloud_download_to_local- Download files to local folder for direct Claude accessnextcloud_list_local_files- List files in local downloads foldernextcloud_delete_local_file- Delete files from local foldernextcloud_upload_from_local- Upload files from local folder to Nextcloudnextcloud_get_downloads_path- Get path to downloads folder
Activity Monitoring (2) ⭐ NEW CATEGORY
nextcloud_list_activities- List recent activities (uploads, shares, downloads, etc.)nextcloud_get_activity_types- Get available activity types and filters
🆕 Recent Updates (2025-08-06)
New Tools Added:
nextcloud_get_group_users- Get all users in a specific groupnextcloud_delete_group- Delete groups from Nextcloudnextcloud_list_activities- Monitor Nextcloud activities (NEW CATEGORY)nextcloud_get_activity_types- Get available activity filtersnextcloud_enable_user- Enable disabled user accounts ⭐ LATESTnextcloud_disable_user- Disable user accounts (preserves data) ⭐ LATEST
New Capabilities:
- Complete User Management: Full lifecycle including enable/disable operations
- Complete Group Management: Now includes listing group members and deleting groups
- Activity Monitoring: Track file uploads, downloads, shares, user actions, security events
- Enhanced Security: Temporary account suspension without data loss
- Enhanced User Experience: Better organization with 37 total tools across 7 categories
Available Resources
nextcloud://files- Root directory file listingnextcloud://shares- All shares overviewnextcloud://users- All users listingnextcloud://groups- All groups listingnextcloud://status- Server status informationnextcloud://capabilities- Server capabilities
Available Prompts
backup_files- Create comprehensive backup workflowsshare_management- Manage file sharing with detailed optionsuser_administration- Complete user management workflowsfile_organization- Organize files with smart categorizationsecurity_audit- Perform security audits of shares and permissions
Local File Management System
The server includes an efficient local file management system that allows Claude to work with files directly:
How it works:
- Download to Local: Files are downloaded from Nextcloud to a local
downloads/folder - Direct Access: Claude can access these files directly using standard file operations
- Efficient Processing: No need for base64 encoding/decoding for large files
- Upload Back: Modified files can be uploaded back to Nextcloud
Benefits:
- Performance: Much faster than base64 encoding for large files
- Memory Efficient: No need to load entire files into memory as base64
- Claude Integration: Claude can use standard file tools to read, edit, and process documents
- Workflow Flexibility: Download → Process → Upload workflow
Example Workflow:
1. Download PDF from Nextcloud to local folder
2. Claude reads and analyzes the PDF directly
3. Claude creates a summary or modified version
4. Upload the new file back to Nextcloud
API Compatibility
This MCP server supports Nextcloud API versions 28.0+ and is compatible with:
- WebDAV API - For file operations
- OCS API v1/v2 - For sharing and user management
- Status API - For server monitoring
- Comments API - For file comments
Security Considerations
- App Passwords: Always use App Passwords instead of main account passwords
- Permissions: Some operations require admin privileges
- Network Security: Ensure HTTPS is used for Nextcloud connections
- Access Control: The server respects Nextcloud's built-in access controls
- Audit Trails: All operations are logged by Nextcloud
Error Handling
The server provides comprehensive error handling for:
- Network connectivity issues
- Authentication failures
- Permission denied errors
- File not found errors
- Invalid parameters
- Nextcloud API errors
Development
Building
npm run build
Development Mode
npm run dev
Linting
npm run lint
npm run lint:fix
Contributing
- Fork the repository
- Create a feature branch
- Make your changes
- Add tests if applicable
- Submit a pull request
License
MIT License - see LICENSE file for details.
Support
For issues and questions:
- Check the Nextcloud API documentation
- Review the error messages in the MCP server logs
- Ensure your Nextcloud instance is accessible and credentials are correct
- Verify that your user has the necessary permissions for the operations you're trying to perform
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.