Nextcloud Notes MCP Server

Nextcloud Notes MCP Server

Enables LLMs to manage and manipulate notes in Nextcloud Notes via WebDAV, supporting tasks like organizing, summarizing, rewriting, and translating notes through natural language commands.

Category
Visit Server

README

Nextcloud Notes MCP Server


Nextcloud Notes MCP Server is a MCP server for the Nextcloud Notes app that lets a Large Language Model (LLM) do the heavy lifting for your notes.

Simply tell the LLM what to do with your notes β€” organize, summarize, rewrite, or perform any custom task β€” and it will execute your instructions automatically.

Features


  • πŸ’» Fully Local Possible – Run the MCP Server and LLM models entirely on your own PC; no cloud needed.
  • πŸ€– LLM-Powered Note Management – Automate tasks like summarization, categorization, rewriting, or translations.
  • 🌐 Nextcloud Integration via WebDAV – Access your notes directly through Nextcloud using the WebDAV protocol.
  • ⚑ Boost Productivity – Save time by letting the LLM handle repetitive or complex note tasks.

Installation


  1. Download the repository:

    git clone https://github.com/rncz/nextcloud-notes-mcp-server.git
    
  2. Configure environment:

    • Change into the project directory:

      cd nextcloud-notes-mcp-server
      
    • Copy the sample environment file and edit credentials:

      cp env_sample .env
      
    • Open .env and enter your Nextcloud WebDAV URL, username, and password.

  3. Set up the Python environment and install the package:

    uv venv
    uv tool install -e .
    
  4. Add MCP server to your LLM software (example for LM Studio): Edit your MCP JSON configuration:

    {
      "mcpServers": {
        "nextcloud-notes-mcp": {
          "command": "uvx",
          "args": [
            "nextcloud-notes-mcp"
          ]
        }
      }
    }
    
  5. Test your setup:

    • Use a model with tool calling enabled.
    • Ask the model to access your notes and verify if the login is successful.

Good luck playing around with your Nextcloud Notes!

Description of MCP Tool Calls


check_webdav_login

Checks whether the WebDAV connection to Nextcloud is working. Returns a message indicating if authentication succeeded or failed.


ensure_notes_folder_exists

Ensures the /Notes folder exists in the user's Nextcloud WebDAV storage. If it doesn’t exist, it is created. Always returns a confirmation message.


list_uncategorized_notes

Lists all Markdown (.md) files located directly inside /Notes, excluding all subfolders. Returns a list of filenames.


list_categories

Lists all subfolders inside /Notes. Returns a list of category names (directories only, excluding .md files).


list_notes_of_a_category

Lists all Markdown (.md) files inside a specific category folder under /Notes.

Args:

  • category_name: Name of the folder inside /Notes.

Returns a list of note filenames, or an error message if the folder cannot be accessed.


read_note

Reads the contents of a Markdown note stored in Nextcloud via WebDAV.

Args:

  • filename: The name of the file, e.g., note.md.
  • category (optional): Subfolder under /Notes. If omitted, reads from root.

Returns the full text content of the note.


edit_note

Replaces the entire content of an existing Markdown note.

Args:

  • filename: Name of the note to edit.
  • new_content: Full new content to overwrite the note with.
  • category (optional): Folder under /Notes.

Returns a confirmation message.


create_note

Creates a new Markdown note.

Args:

  • filename: File name to create (must include .md).
  • content: Initial content for the new note.
  • category (optional): Folder under /Notes. Created automatically if missing.

Returns the WebDAV path of the created note.


delete_note

Deletes an existing Markdown note.

Args:

  • filename: File name to delete.
  • category (optional): Folder under /Notes.

Returns a success message or an error.


rename_note

Renames a note inside /Notes or a category.

Args:

  • filename: Current name.
  • new_filename: New name.
  • category (optional): Folder under /Notes.

Returns the before β†’ after path.


create_category

Creates a new category (a subfolder) inside /Notes.

Args:

  • category_name: The folder name to create.

Returns a success message.


edit_category

Renames an existing category inside /Notes.

Args:

  • old_name: Current category name.
  • new_name: New category name.

Returns a success message or error.


delete_category

Deletes a category folder, including all notes inside it.

Args:

  • category_name: Folder name under /Notes.

Returns a success or error message.

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured