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.
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
-
Download the repository:
git clone https://github.com/rncz/nextcloud-notes-mcp-server.git -
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
.envand enter your Nextcloud WebDAV URL, username, and password.
-
-
Set up the Python environment and install the package:
uv venv uv tool install -e . -
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" ] } } } -
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
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
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.
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.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
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.
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.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.
E2B
Using MCP to run code via e2b.
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.
Neon Database
MCP server for interacting with Neon Management API and databases