Mealie MCP Server
Mealie MCP Server
An MCP (Model Context Protocol) server for Mealie -- the self-hosted recipe manager and meal planner. Gives LLMs full access to manage recipes, meal plans, shopping lists, and more through your Mealie instance.
Tools
Recipes
Tool | Description |
| Search and list recipes with filtering by categories, tags, tools, and advanced query filters |
| Get full recipe details including ingredients, instructions, and metadata |
| Get a summary of a recipe (name, servings, time, ingredients, rating) |
| Create a new recipe with name, ingredients, and instructions |
| Replace the ingredients and instructions of an existing recipe |
| Partially update recipe metadata (name, description, times, servings, rating, etc.) |
| Duplicate an existing recipe |
| Delete a recipe permanently |
| Mark a recipe as made today |
| Get recipe suggestions based on available foods and tools on hand |
| Import a recipe by scraping it from a URL |
| Import multiple recipes from URLs at once |
| Preview scraped recipe data from a URL without saving |
| Set a recipe's image by scraping it from a URL |
| Upload a local image file for a recipe |
| Upload a document/asset file for a recipe |
Meal Plans
Tool | Description |
| Get meal plans with optional date range filtering |
| Get today's meal plan entries |
| Get a specific meal plan entry by ID |
| Create a meal plan entry (breakfast, lunch, dinner, side, snack, drink, dessert) |
| Create multiple meal plan entries at once |
| Create a meal plan entry with a randomly selected recipe |
| Update a meal plan entry |
| Delete a meal plan entry |
Shopping Lists
Tool | Description |
| Get all shopping lists |
| Get a specific shopping list with all items |
| Create a new shopping list |
| Delete a shopping list |
| Add a recipe's ingredients to a shopping list |
| Remove a recipe's ingredients from a shopping list |
Shopping List Items
Tool | Description |
| Get all shopping list items with search and pagination |
| Get a specific shopping list item |
| Create a new item in a shopping list |
| Create multiple shopping list items at once |
| Update a shopping list item (check/uncheck, modify, assign label) |
| Update multiple shopping list items at once |
| Delete a shopping list item |
| Delete multiple shopping list items at once |
Categories
Tool | Description |
| Get all recipe categories |
| Get a category by ID |
| Get a category by slug |
| Get categories with no recipes |
| Create a new category |
| Update a category |
| Delete a category |
Tags
Tool | Description |
| Get all recipe tags |
| Get a tag by ID |
| Get a tag by slug |
| Get tags with no recipes |
| Create a new tag |
| Update a tag |
| Delete a tag |
Foods
Tool | Description |
| Get all foods (ingredients in the database) |
| Get a specific food by ID |
| Create a new food |
| Update a food's details |
| Delete a food |
| Merge one food into another (updates all references) |
Units
Tool | Description |
| Get all measurement units |
| Get a specific unit by ID |
| Create a new unit |
| Update a unit's details |
| Delete a unit |
| Merge one unit into another (updates all references) |
Tools (Kitchen Equipment)
Tool | Description |
| Get all kitchen tools/equipment |
| Get a tool by ID |
| Get a tool by slug |
| Create a new tool |
| Update a tool |
| Delete a tool |
Labels
Tool | Description |
| Get all multi-purpose labels (for shopping list item categorization) |
| Get a label by ID |
| Create a new label |
| Update a label's name or color |
| Delete a label |
Cookbooks
Tool | Description |
| Get all cookbooks (curated recipe collections) |
| Get a cookbook by ID |
| Create a new cookbook with optional query filter |
| Update a cookbook |
| Delete a cookbook |
Comments
Tool | Description |
| Get all comments on a recipe |
| Add a comment to a recipe |
| Update a comment |
| Delete a comment |
Ingredient Parser
Tool | Description |
| Parse a single ingredient string into structured data (quantity, unit, food) |
| Parse multiple ingredient strings at once |
User & Household
Tool | Description |
| Get the current user's profile info |
| Get the current user's favorite recipes |
| Get the current user's recipe ratings |
| Add a recipe to favorites |
| Remove a recipe from favorites |
| Rate a recipe (0-5) and/or set favorite status |
| Get household stats (total recipes, categories, tags, etc.) |
Prompts
Prompt | Description |
| Interactive weekly meal planning workflow that searches your recipes and builds a balanced 7-day plan |
Environment Variables
Variable | Required | Description |
| Yes | Base URL of your Mealie instance (e.g., |
| Yes | API key for authenticating with Mealie (generate in Mealie under User > API Tokens) |
| No | Logging level (default: |
| No | Transport mode: |
Setup
Requires Python 3.12+ and uv.
# Clone the repo
git clone https://github.com/GraysonCAdams/mealie-mcp.git
cd mealie-mcp
# Install dependencies
uv sync
# Set environment variables
export MEALIE_BASE_URL="https://mealie.example.com"
export MEALIE_API_KEY="your-api-key-here"Or create a .env file in the project root:
MEALIE_BASE_URL=https://mealie.example.com
MEALIE_API_KEY=your-api-key-hereRunning
stdio mode (for direct MCP client connections)
uv run src/server.pyHTTP mode with mcp-proxy
mcp-proxy --port 8004 -- uv run src/server.pyClaude Desktop configuration
Add to your Claude Desktop config (claude_desktop_config.json):
{
"mcpServers": {
"mealie": {
"command": "uv",
"args": ["run", "--directory", "/path/to/mealie-mcp", "src/server.py"],
"env": {
"MEALIE_BASE_URL": "https://mealie.example.com",
"MEALIE_API_KEY": "your-api-key-here"
}
}
}
}License
MIT