Nextcloud MCP Server
Servidor MCP de Nextcloud
Un servidor MCP listo para producción que conecta asistentes de IA a tu instancia de Nextcloud.
Permite que modelos de lenguaje grandes como Claude, GPT y Gemini interactúen con tus datos de Nextcloud a través de una API segura. Crea notas, gestiona calendarios, organiza contactos, trabaja con archivos y más, todo mediante conversaciones en lenguaje natural.
Este es un servidor MCP independiente y dedicado diseñado para clientes MCP externos como Claude Code e IDEs. Se ejecuta independientemente de Nextcloud (Docker, VM, Kubernetes o local) y proporciona operaciones CRUD profundas en las aplicaciones de Nextcloud.
[!NOTE] ¿Buscas funciones de IA dentro de Nextcloud? Nextcloud también proporciona Context Agent, que potencia la aplicación Assistant y se ejecuta como una ExApp dentro de Nextcloud. Consulta docs/comparison-context-agent.md para una comparación detallada de los casos de uso.
Inicio rápido (Docker)
Para obtener todas las funciones, incluida la búsqueda semántica, ejecútalo con Docker:
# 1. Create a minimal configuration
cat > .env << EOF
NEXTCLOUD_HOST=https://your.nextcloud.instance.com
NEXTCLOUD_USERNAME=your_username
NEXTCLOUD_PASSWORD=your_app_password
EOF
# 2. Start the server
docker run -p 127.0.0.1:8000:8000 --env-file .env --rm \
ghcr.io/cbcoutinho/nextcloud-mcp-server:latest
# 3. Test the connection
curl http://127.0.0.1:8000/health/ready
# 4. Connect to the endpoint
http://127.0.0.1:8000/sse
# Or with --transport streamable-http
http://127.0.0.1:8000/mcpPerfiles de Docker Compose (para desarrollo/pruebas):
docker compose --profile single-user up -d # Port 8000
docker compose --profile multi-user-basic up -d # Port 8003
docker compose --profile oauth up -d # Port 8001
docker compose --profile login-flow up -d # Port 8004Próximos pasos:
Conecta tu cliente MCP (Claude Desktop, IDEs,
mcp dev, etc.)Consulta docs/installation.md para otras opciones de despliegue (local, Kubernetes)
Related MCP server: Nextcloud MCP Server
Características clave
Más de 90 herramientas MCP - Cobertura completa de API en 8 aplicaciones de Nextcloud
Recursos MCP - URIs de datos estructurados para navegar por los datos de Nextcloud
Búsqueda semántica (Experimental) - Búsqueda opcional basada en vectores para Notas, Archivos, elementos de Noticias y tarjetas de Deck (requiere Qdrant + Ollama)
Procesamiento de documentos - OCR y extracción de texto de PDFs, DOCX e imágenes con notificaciones de progreso
Despliegue flexible - Docker, Kubernetes (Helm), VM o instalación local
Autenticación lista para producción - Autenticación básica con contraseñas de aplicación (recomendado) o OAuth2/OIDC (experimental)
Múltiples transportes - Soporte para SSE, HTTP y HTTP con streaming
Aplicaciones compatibles
Aplicación | Herramientas | Capacidades |
Notas | 7 | CRUD completo, búsqueda por palabras clave, búsqueda semántica |
Calendario | 20+ | Eventos, tareas (todos), eventos recurrentes, asistentes, disponibilidad |
Contactos | 8 | Soporte completo de CardDAV, libretas de direcciones |
Archivos (WebDAV) | 12 | Acceso al sistema de archivos, OCR/procesamiento de documentos |
Deck | 15 | Tableros, pilas, tarjetas, etiquetas, asignaciones |
Cookbook | 13 | Gestión de recetas, importación de URL (schema.org) |
Tablas | 5 | Operaciones de fila en Tablas de Nextcloud |
Compartir | 10+ | Crear y gestionar recursos compartidos |
Búsqueda semántica | 2+ | Búsqueda vectorial para Notas, Archivos, elementos de Noticias y tarjetas de Deck (experimental, opcional, requiere infraestructura) |
¿Quieres ver otra aplicación de Nextcloud compatible? Abre un issue o envía un pull request.
Autenticación
[!IMPORTANT] OAuth2/OIDC es experimental y requiere un parche manual en la aplicación
user_oidc:
Parche requerido: Soporte para token Bearer (issue #1221)
Impacto: Sin el parche, la mayoría de las APIs específicas de la aplicación fallan con errores 401
Recomendación: Usa autenticación básica para producción hasta que se fusionen los parches upstream
Consulta docs/oauth-upstream-status.md para conocer el estado del parche y las soluciones alternativas.
Recomendado: La autenticación básica con contraseñas específicas de la aplicación proporciona una autenticación segura y lista para producción. Consulta docs/authentication.md para obtener detalles de configuración y configuración de OAuth.
Modos de autenticación
El servidor admite cuatro modos de autenticación:
Usuario único (BasicAuth):
Un conjunto de credenciales compartido por todos los clientes MCP
Configuración sencilla: nombre de usuario + contraseña de aplicación en variables de entorno
Todos los clientes acceden a Nextcloud como el mismo usuario
Ideal para: Uso personal, desarrollo, despliegues de usuario único
Multiusuario (Paso a través de BasicAuth):
Los clientes MCP envían credenciales a través del encabezado Authorization
El servidor las pasa a Nextcloud (sin estado por defecto)
Acceso offline opcional para operaciones en segundo plano (
ENABLE_MULTI_USER_BASIC_AUTH=true)Ideal para: Configuraciones multiusuario sin infraestructura OAuth
Multiusuario (OAuth):
Cada cliente MCP se autentica por separado con su propia cuenta de Nextcloud
Alcances y permisos por usuario (los clientes solo ven las herramientas para las que están autorizados)
Más seguro: los tokens caducan, las credenciales nunca se comparten con el servidor
Ideal para: Equipos, despliegues multiusuario, entornos de producción con múltiples usuarios
Requiere: Parches en la aplicación
user_oidc(experimental)
Multiusuario (Login Flow v2):
Utiliza el flujo de inicio de sesión nativo v2 de Nextcloud para obtener contraseñas de aplicación por usuario
No se requieren parches de OAuth: funciona con Nextcloud estándar
Cada usuario se autentica a través del navegador, el servidor gestiona las contraseñas de aplicación
Ideal para: Despliegues multiusuario sin infraestructura OAuth (
ENABLE_LOGIN_FLOW=true)Experimental: Consulta ADR-022 para más detalles
Consulta docs/authentication.md para obtener instrucciones de configuración detalladas.
Búsqueda semántica
El servidor proporciona una canalización RAG experimental para habilitar la Búsqueda semántica, que permite a los clientes MCP encontrar información en Nextcloud basada en el significado en lugar de solo palabras clave. En lugar de coincidir con "aprendizaje automático" solo cuando aparecen esas palabras exactas, entiende que "redes neuronales", "modelos de IA" y "aprendizaje profundo" son conceptos semánticamente relacionados.
Ejemplo:
Búsqueda por palabras clave: La consulta "coche" solo encuentra notas que contienen "coche"
Búsqueda semántica: La consulta "coche" también encuentra notas sobre "automóvil", "vehículo", "sedán", "transporte"
Esto permite consultas en lenguaje natural y ayuda a descubrir contenido relacionado en tus notas de Nextcloud.
[!NOTE] La búsqueda semántica es experimental y opcional:
Deshabilitada por defecto (
ENABLE_SEMANTIC_SEARCH=false)Actualmente solo admite la aplicación Notas (se planea soporte para múltiples aplicaciones)
Requiere infraestructura adicional: base de datos vectorial + servicio de incrustación (embedding)
La generación de respuestas (
nc_semantic_search_answer) requiere soporte de muestreo del cliente MCPConsulta docs/semantic-search-architecture.md para detalles de arquitectura y docs/configuration.md para instrucciones de configuración.
Documentación
Primeros pasos
Instalación - Despliegue en Docker, Kubernetes, local o VM
Configuración - Variables de entorno y opciones avanzadas
Autenticación - Configuración de Basic Auth vs OAuth2/OIDC
Ejecución del servidor - Iniciar, gestionar y solucionar problemas
Características
Documentación de la aplicación - Notas, Calendario, Contactos, WebDAV, Deck, Cookbook, Tablas
Procesamiento de documentos - Configuración de OCR y extracción de texto
Arquitectura de búsqueda semántica - Búsqueda vectorial experimental (Notas, Archivos, elementos de Noticias, tarjetas de Deck; opcional)
Guía de la interfaz de usuario de sincronización vectorial - Interfaz de navegador para visualización y prueba de búsqueda semántica
Temas avanzados
Arquitectura OAuth - Cómo funciona OAuth (experimental)
Inicio rápido de OAuth - Configuración de OAuth en 5 minutos
Guía de configuración de OAuth - Configuración detallada de OAuth
Solución de problemas - Problemas comunes y soluciones
Comparación con Context Agent - Cuándo usar cada enfoque
Ejemplos
Crear una nota
AI: "Create a note called 'Meeting Notes' with today's agenda"
→ Uses nc_notes_create_note toolImportar recetas
AI: "Import the recipe from https://www.example.com/recipe/chocolate-cake"
→ Uses nc_cookbook_import_recipe tool with schema.org metadata extractionProgramar reuniones
AI: "Schedule a team meeting for next Tuesday at 2pm"
→ Uses nc_calendar_create_event toolGestionar archivos
AI: "Create a folder called 'Project X' and move all PDFs there"
→ Uses nc_webdav_create_directory and nc_webdav_move toolsBúsqueda semántica (Experimental, opcional)
AI: "Find notes related to machine learning concepts"
→ Uses nc_semantic_search to find semantically similar notes (requires Qdrant + Ollama setup)Nota: Para respuestas generadas por IA con citas, usa nc_semantic_search_answer (requiere cliente MCP con soporte de muestreo).
Contribución
¡Las contribuciones son bienvenidas!
Informar errores o solicitar funciones: GitHub Issues
Enviar mejoras: Pull Requests
Guías de desarrollo: CLAUDE.md
Seguridad
Este proyecto se toma la seguridad en serio:
Autenticación básica lista para producción con contraseñas específicas de la aplicación
Soporte para OAuth2/OIDC (experimental, requiere parches upstream)
Tokens de acceso por usuario
Sin almacenamiento de credenciales en modo OAuth
Evaluaciones de seguridad periódicas
¿Encontraste un problema de seguridad? Por favor, infórmalo de forma privada a los mantenedores.
Licencia
Este proyecto está bajo la licencia AGPL-3.0. Consulta LICENSE para más detalles.
Historial de estrellas
Referencias
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
No tool schema history has been recorded yet.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
GDPR-compliant calendar access for AI assistants. Google, Microsoft 365, Apple & more. EU-hosted.
- OpenOakOAuthorg.openoak
Secure AI access to OpenOak tasks, notes, and Kanban boards.
- mcpOAuthnet.hepcloud
Manage HepCloud (Turkish cloud) servers and managed PostgreSQL from your AI assistant. OAuth 2.1.
Connects AI assistants to CloudQuell multi-cloud and AI cost, savings, anomaly, and budget data.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceEnables LLMs to interact with Nextcloud instances through 30 tools across Notes, Calendar, Contacts, Tables, and WebDAV file operations, featuring a powerful unified search system for finding files without exact paths.2637AGPL 3.0
- AlicenseNot gradedqualityAmaintenanceConnects AI assistants to Nextcloud instances with 90+ tools for managing notes, calendars, contacts, files, recipes, and more through natural language conversations. Supports semantic search and multiple deployment options.345AGPL 3.0
- AlicenseAqualityDmaintenanceEnables LLMs to manage and manipulate notes in Nextcloud Notes via WebDAV, supporting tasks like organizing, summarizing, rewriting, and translating notes through natural language commands.132MIT
- AlicenseAqualityDmaintenanceEnables AI agents to perform file operations and sharing management on NextCloud servers via the Model Context Protocol.145MIT
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/No-Smoke/nextcloud-mcp-comprehensive'
If you have feedback or need assistance with the MCP directory API, please join our Discord server