Allows interaction with the Nextcloud Cookbook app API to manage recipes, categories, and keywords, including features for searching, creating, updating, and importing recipes from URLs.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Nextcloud Cookbook MCP ServerImport the recipe from https://example.com/lasagna"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Nextcloud Cookbook MCP Server
A Model Context Protocol (MCP) server that provides integration with the Nextcloud Cookbook app API. This server allows AI assistants like Claude to interact with your Nextcloud recipes through a standardized interface.
Features
List and search recipes
Get detailed recipe information
Create, update, and delete recipes
Import recipes from URLs
Get recipe images
Manage categories and keywords
Full Docker support for easy deployment
Prerequisites
Node.js 18 or higher (for local development)
Docker and Docker Compose (for containerized deployment)
Nextcloud instance with Cookbook app installed
Nextcloud app password (recommended) or user password
Getting a Nextcloud App Password
Log into your Nextcloud instance
Go to Settings > Security
Scroll to "Devices & sessions"
Enter a name (e.g., "MCP Server") and click "Create new app password"
Copy the generated password (you won't see it again!)
Installation
Option 1: Docker Deployment (Recommended)
Clone or download this repository
Copy
.env.exampleto.env:cp .env.example .envEdit
.envwith your Nextcloud credentials:NEXTCLOUD_URL=https://your-nextcloud-instance.com NEXTCLOUD_USERNAME=your-username NEXTCLOUD_PASSWORD=your-app-password PORT=3000Build and run with Docker Compose:
docker-compose up -dThe server will be available on
stdio(standard input/output)
Option 2: Local Development
Install dependencies:
npm installCopy
.env.exampleto.envand configure your credentialsBuild the TypeScript code:
npm run buildRun the server:
npm start
Configuration
Configure the server using environment variables:
Variable | Description | Required | Default |
| Your Nextcloud instance URL | Yes | - |
| Your Nextcloud username | Yes | - |
| App password or user password | Yes | - |
| Server port (currently unused for stdio) | No | 3000 |
Configuring Claude Code
To use this MCP server with Claude Code, add it to your MCP settings:
For stdio transport:
Add to your Claude Code MCP configuration file:
Or if using Docker:
Available Tools
The MCP server provides the following tools:
Recipe Management
list_recipes- List all recipes in the cookbooksearch_recipes- Search recipes by keyword, tag, or categoryget_recipe- Get detailed information about a specific recipecreate_recipe- Create a new recipeupdate_recipe- Update an existing recipedelete_recipe- Delete a recipeimport_recipe- Import a recipe from a URL
Images
get_recipe_image_url- Get the URL for a recipe image (full, thumb, or thumb16)
Organization
list_categories- List all recipe categories with countslist_keywords- List all recipe keywords/tagsget_recipes_by_keyword- Get recipes tagged with a specific keyword
Example Usage
Once configured with Claude Code, you can interact with your Nextcloud Cookbook using natural language:
Development
Project Structure
Building
Development Mode
Watch Mode (auto-rebuild)
Troubleshooting
Authentication Errors
Verify your Nextcloud URL is correct (include https://)
Ensure you're using an app password, not your regular password
Check that your username is correct (usually lowercase)
Connection Errors
Verify your Nextcloud instance is accessible
Check if the Cookbook app is installed and enabled
Ensure there are no firewall rules blocking access
Docker Issues
Make sure Docker is running
Check logs with:
docker-compose logs -fRebuild the image:
docker-compose build --no-cache
API Reference
For detailed Nextcloud Cookbook API documentation, see: https://nextcloud.github.io/cookbook/dev/api/0.1.2/index.html
License
MIT
Contributing
Contributions are welcome! Please feel free to submit issues or pull requests.