Tandoor MCP Server
Manage Tandoor recipes, meal plans, and shopping lists through an MCP server.
Recipe management: list/search (auto-paginated), view compact details, create, update, and delete recipes; create/update accepts ingredients, steps, keywords, times, servings, and auto-resolves food/unit/keyword names.
Meal planning: list, view, create, update, delete meal plans; auto-generate plans by keywords/meal type; optionally add meal ingredients to shopping list.
Reference data: list foods, units, keywords, and meal types to find IDs for use in recipes/plans.
Shopping list: read current shopping list entries (food, amount, unit, checked).
Pagination handled: all list tools fetch every page automatically, avoiding Tandoor's default 25-item truncation.
Click on "Deploy 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., "@Tandoor MCP Server create a meal plan for next week with pasta dishes"
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.
Tandoor MCP Server
Model Context Protocol (MCP) server for Tandoor recipe and meal plan management.
Note: This project was partially developed with the assistance of Large Language Models (LLMs).
Features
Recipe Management - List, get, create, update, and delete recipes
Meal Planning - Create, manage, and auto-generate meal plans
Shopping List - Read the current shopping list
Reference Data - List foods, units, and keywords (find IDs before creating)
Auto-creation - Automatically creates missing ingredients, units, and keywords
Auto-pagination - All list tools fetch every page (Tandoor defaults to 25 items/page, which silently truncates larger collections)
Compact output - Recipe/meal-plan responses are summarized instead of dumping raw nested JSON, keeping token usage low
Related MCP server: Tandoor MCP Server
Installation
npm install -g tandoor-mcpOr use with npx:
npx tandoor-mcpConfiguration
Get your API token from Tandoor:
Settings → API Tokens → Create new token
Configure MCP client (e.g., Claude Desktop):
{
"mcpServers": {
"tandoor": {
"command": "npx",
"args": ["tandoor-mcp"],
"env": {
"TANDOOR_URL": "https://your-tandoor-instance.com",
"TANDOOR_TOKEN": "your-api-token"
}
}
}
}Available Tools
Recipe Tools
list_recipes- List ALL recipes (auto-paginated). Filters:query,keywords(IDs),rating_gte,sort_order. Returns compact rows (id, name, keywords, servings)get_recipe- Get recipe details as a compact summary (steps with ingredients as text lines)create_recipe- Add new recipes. Food/unit/keyword names are auto-resolved to existing records when possible (normalized matching incl. Spanish singular/plural variants). Response reports any new records created so the caller can spot duplicates. Recipes are created visible in the UI (internal: false)update_recipe- Update metadata and/or content. Providingstepsreplaces the whole steps array — include every stepdelete_recipe- Permanently delete a recipelist_foods- List foods (optionalqueryfilter) — use before creating recipes to reuse existing foodslist_units- List units (optionalqueryfilter)list_keywords- List keywords (optionalqueryfilter) — use to find keyword IDs
Meal Planning Tools
list_meal_plans- View scheduled meals (auto-paginated). With a date window, only entries starting inside the window are returned (Tandoor's API also returns overlapping entries from other weeks, which are filtered out)get_meal_plan- Get meal plan detailscreate_meal_plan- Schedule a recipe (addshopping: trueadds ingredients to the shopping list)update_meal_plan- Update meal plansdelete_meal_plan- Remove meal plansauto_meal_plan- Auto-generate meal plans by keywordslist_meal_types- List meal types (breakfast, lunch, etc.)get_shopping_list- Current shopping list entries (id, food, amount, unit, checked)
Testing
End-to-end tests exercise every tool against a real Tandoor instance, create a temporary recipe + meal plan, and assert the database is left untouched (food/unit/keyword counts unchanged):
npm run build
TANDOOR_URL=https://your-tandoor-instance.com TANDOOR_TOKEN=your-token node test/e2e.mjsDevelopment
git clone https://github.com/mc-mario/tandoor-mcp.git
cd tandoor-mcp
npm install
npm run buildLicense
MIT
Available Tools
11 toolsauto_meal_planC
Auto-generate meal plans. Required: start_date, end_date (YYYY-MM-DD), meal_type_id, keyword_ids[], servings, addshopping
Inputs: start_date (required), end_date (required), meal_type_id (required), keyword_ids (required), +2 more.
create_meal_planC
Create meal plan. Required: from_date (ISO), meal_type_id, servings. Optional: recipe_id, title, note, addshopping
Inputs: servings (required), from_date (required), meal_type_id (required), recipe_id, +4 more.
create_recipeC
Create recipe. Required: name, steps[{instruction, ingredients[{food, amount, unit?}]}]. Optional: description, servings, working_time, waiting_time, keywords[]
Inputs: name (required), steps (required), description, servings, +8 more.
delete_meal_planC
Delete meal plan by ID
Inputs: id (required).
get_meal_planC
Get meal plan by ID
Inputs: id (required).
get_recipeC
Get recipe details by ID
Inputs: id (required).
list_meal_plansC
List meal plans. Optional: from_date, to_date (YYYY-MM-DD), page, page_size
Inputs: from_date, to_date, page, page_size.
list_meal_typesB
List available meal types (breakfast, lunch, dinner, etc.)
Inputs: no named parameters.
list_recipesC
List recipes with optional filters: page, page_size, query, sort_order, rating_gte
Inputs: page, page_size, query, sort_order, +1 more.
update_meal_planC
Update meal plan. Required: id. All other fields optional
Inputs: id (required), recipe_id, title, servings, +3 more.
update_recipeB
Update recipe metadata and content. Only provide fields you want to update. All fields optional except id.
Inputs: id (required), name, description, servings, +6 more.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 11 tools
Each tool has a clearly distinct purpose targeting specific resources and actions, such as create_meal_plan vs. auto_meal_plan for manual vs. automated generation, and list_meal_plans vs. get_meal_plan for listing vs. retrieving details. No tools overlap in functionality, making selection straightforward for an agent.
All tools follow a consistent verb_noun naming pattern, such as create_meal_plan, list_recipes, update_recipe, and delete_meal_plan. The pattern is uniformly applied across all 11 tools, with no deviations in style or convention.
With 11 tools, the count is well-scoped for a meal planning and recipe management server, covering core operations like CRUD for recipes and meal plans, listing, and auto-generation. Each tool earns its place without being excessive or insufficient for the domain.
The tool set provides complete CRUD/lifecycle coverage for both recipes and meal plans, including creation, retrieval, updating, deletion, listing, and auto-generation. There are no obvious gaps, as all essential operations for the domain are covered, ensuring agents can handle full workflows without dead ends.
Maintenance
Related MCP Connectors
Search structured recipes, scale servings, match pantry ingredients, and build shopping lists.
Recipe search, ingredient matching, nutrition filters and a private cookbook for any AI agent.
Plan weekly meals from your pantry, search allergy-safe recipes, and build grocery lists. Reads and updates your Cooking with Robots pantry, generates a 7-day plan that respects your allergies and preferences, and returns recipes with macros and a grocery gap list. Sign in with OAuth.
Household-aware cooking brain: pantry, meal suggestions, dietary safety, recipes, shopping lists.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceEnables AI assistants to interact with Mealie for recipe management, meal planning, and shopping list operations. Supports searching and managing recipes, creating meal plans, and generating shopping lists from recipes or meal plans.7MIT
- FlicenseNot gradedqualityDmaintenanceEnables interaction with the Tandoor Recipe Manager via the Model Context Protocol. It allows users to search and create recipes, manage meal plan entries, and update shopping list items through natural language.1-
- FlicenseBqualityDmaintenanceMCP server for managing Tandoor recipes, meal plans, and shopping lists. Enables creation, retrieval, and management of recipes, meal plans, and shopping list items via natural language.1319-
- AlicenseAqualityCmaintenanceEnables AI assistants to manage recipes, meal plans, and shopping lists in Mealie through natural language, supporting CRUD operations and URL-based recipe imports.27209 npm8MIT