NextCloud Collectives MCP
Herramientas para acceder a Nextcloud Collectives
Documentación
nextcloud-collectives-mcp
Un servidor MCP (Model Context Protocol) para acceder a la aplicación Nextcloud Collectives. De esta manera, los clientes MCP (por ejemplo, Claude Code) pueden listar, leer y editar collectives (wikis de equipo), sus páginas y etiquetas.
Requisitos previos
- Node.js 22+
- Una instancia de Nextcloud con la aplicación Collectives instalada y activada
- Una contraseña de aplicación para el usuario de Nextcloud
Generar contraseña de aplicación
- Iniciar sesión en Nextcloud → Configuración → Seguridad
- En "Dispositivos y sesiones", generar una nueva contraseña de aplicación (nombre arbitrario, p. ej.
nextcloud-collectives-mcp) - Anotar la contraseña generada (solo se muestra una vez)
Instalación y uso
Método A: Ejecutar directamente mediante npx (Recomendado)
No es necesario clonar ni compilar manualmente. El servidor MCP se puede iniciar directamente desde GitHub mediante npx. Simplemente agregue la siguiente entrada en su configuración de cliente MCP (p. ej., claude_desktop_config.json o mediante claude mcp add):
{
"mcpServers": {
"nextcloud-collectives": {
"command": "npx",
"args": ["-y", "github:BamButz/nextcloud-collectives-mcp"],
"env": {
"NEXTCLOUD_BASE_URL": "https://cloud.example.com",
"NEXTCLOUD_USERNAME": "alice",
"NEXTCLOUD_APP_PASSWORD": "xxxxx-xxxxx-xxxxx-xxxxx-xxxxx"
}
}
}
}
Nota: Al iniciar, npx descarga el repositorio y lo compila automáticamente mediante el script prepare en segundo plano.
Método B: Instalación local manual (p. ej., para desarrollo)
- Clonar el repositorio y cambiar a la carpeta.
- Instalar dependencias y compilar:
npm install npm run build - Agregar en la configuración del servidor MCP:
{ "mcpServers": { "nextcloud-collectives-local": { "command": "node", "args": ["/pfad/zu/nextcloud-collectives-mcp/dist/index.js"], "env": { "NEXTCLOUD_BASE_URL": "https://cloud.example.com", "NEXTCLOUD_USERNAME": "alice", "NEXTCLOUD_APP_PASSWORD": "xxxxx-xxxxx-xxxxx-xxxxx-xxxxx" } } } }
Herramientas disponibles
Collectives
list_collectives— listar todos los collectives visiblescreate_collective— crear un nuevo collectivedelete_collective— mover un collective a la papelera
Páginas
list_pages— listar el árbol de páginas completo de un collective (solo metadatos)get_page— obtener metadatos y contenido Markdown de una páginacreate_page— crear una nueva página bajo una página principalupdate_page_content— reemplazar el contenido Markdown de una páginarename_page— renombrar una páginamove_page— mover una página a una nueva página principaldelete_page— mover una página a la papelera
Etiquetas
list_tags— listar todas las etiquetas de un collectivecreate_tag— crear una nueva etiquetaadd_tag_to_page— adjuntar una etiqueta a una páginaremove_tag_from_page— eliminar una etiqueta de una página
Desarrollo
npm test # Tests einmalig ausführen
npm run test:watch
npm run coverage # Tests + Code-Coverage-Bericht (Text + HTML unter coverage/index.html)
npm run typecheck
npm run dev # Server direkt mit tsx starten (liest Env-Vars aus der Shell)
Nota de implementación
Este proyecto fue implementado y probado completamente con la ayuda de inteligencia artificial (Gemini 3.5 (Flash)) de Google DeepMind en el marco de un flujo de trabajo de codificación agéntico.