mealie-mcp

mealie-mcp

A full-featured Mealie MCP server (27 tools) for recipe management, meal planning, and shopping lists, bundled with Claude Code skills and agents for family-friendly, dietary-compliant cooking guidance.

Category
Visit Server

README

Mealie Plugin for Claude Code

A Claude Code plugin that bundles a full-featured Mealie MCP server (27 tools) with skills, agents, and commands for family-centered recipe management, homesteading cooking guidance, and dietary compliance.

Maintained by Thrivewell Partners


Features

  • 27-tool MCP server — Direct access to Mealie's recipes, shopping lists, meal plans, organizers, foods, and units
  • 5 Claude Code skills — Auto-activating knowledge libraries for recipe creation, Foundation recipes, dietary management, cooking tips, and meal planning
  • 3 intelligent agents — Recipe advisor, meal planner, and cooking teacher — auto-triggered on relevant conversations
  • 3 slash commands/mealie:quick-recipe, /mealie:weekly-menu, /mealie:find-recipe
  • Dietary guardrail hook — Scans ingredients for pork products and seed oils before any recipe is saved to Mealie
  • Family-aware defaults — Serves 6, mild heat, no pork, no seed oils throughout all components

Installation

As a Claude Code Plugin (Recommended)

1. Add the Marketplace

/plugin marketplace add https://github.com/thrivewell-partners/mealie-mcp

2. Install the Plugin

/plugin install mealie@thrivewell-marketplace

3. Set Environment Variables

export MEALIE_URL="https://your-mealie-instance.com"
export MEALIE_API_KEY="your-api-token"

Get your API token: Mealie UI → User Profile → API Tokens → Generate

4. Restart Claude Code — MCP server and hooks load on startup.


Standalone MCP Server (Advanced / Development)

1. Install

git clone https://github.com/thrivewell-partners/mealie-mcp
cd mealie-mcp
uv pip install -e .

2. Configure

# Create .env file with your Mealie credentials
echo "MEALIE_URL=https://your-mealie-instance.com" > .env
echo "MEALIE_API_KEY=your-api-token" >> .env

3. Add to Claude Code MCP settings

In .claude/settings.json or your project's MCP config:

{
  "mcpServers": {
    "mealie": {
      "command": "uv",
      "args": ["run", "--directory", "/path/to/mealie-mcp", "mealie-mcp"],
      "env": {
        "MEALIE_URL": "https://your-mealie-instance.com",
        "MEALIE_API_KEY": "your-api-token"
      }
    }
  }
}

Plugin Components

Skills (Auto-Activated)

Skills load automatically when you ask related questions — no command needed.

Skill Trigger Phrases Description
recipe-creation "add a recipe", "create a recipe for [dish]", "save this recipe to Mealie" Structured Mealie v3 recipe authoring with family defaults
foundations "foundation recipe", "the why behind the how", "educational recipe" Educational Foundation recipe paradigm with full technique documentation
dietary-management "check for dietary issues", "substitute the oil", "is this family-friendly" Compliance checking, pork/seed-oil detection, substitution guidance
cooking-tips "how do I braise", "homesteading cooking", "what is fond", "how to render tallow" Scratch cooking techniques with food science explanations
meal-planning "plan meals for the week", "weekly menu", "what should we eat" Weekly meal planning via Mealie API

Agents

Agent Color Triggers Role
recipe-advisor Green Recipe modification discussions, dietary evaluation, substitution requests Read-only recipe consultant — evaluates and advises
meal-planner Blue "Plan the week's meals", "fill in the meal plan", multi-day meal requests Drafts weekly menus, gets approval, creates Mealie entries
cooking-teacher Cyan "Teach me how to", technique questions, troubleshooting cooking failures Explains the science and technique behind cooking methods

Commands

Command Usage Description
/mealie:quick-recipe /mealie:quick-recipe [recipe name] Guided step-by-step recipe creation into Mealie
/mealie:weekly-menu /mealie:weekly-menu [YYYY-MM-DD] Plan a week of dinners, get approval, create Mealie entries
/mealie:find-recipe /mealie:find-recipe [query] [--tag name] [--category name] Search with dietary context and direct actions

Dietary Guardrail Hook

A PreToolUse hook fires before every create_recipe and update_recipe MCP call. It uses a Claude prompt to scan the ingredients list for:

  • Pork products: bacon, ham, lard, prosciutto, pork sausage, chorizo, carnitas, and all variants
  • Seed oils: canola, vegetable, sunflower, safflower, corn, soybean, cottonseed, grapeseed, rice bran oils

If violations are found, Claude receives a warning with the specific ingredient names and suggested compliant alternatives. The operation is not blocked — Claude decides whether to correct and retry or proceed.


Family Dietary Guidelines

These rules are enforced by all plugin components:

NO PORK

No pork or pork-derived products. This includes: pork chops, bacon, ham, lard, prosciutto, pancetta, guanciale, salami, pepperoni, pork sausage, carnitas, pork ribs, pork belly, pork rinds, fatback.

NO SEED OILS

No industrially extracted seed or vegetable oils. Forbidden: vegetable oil, canola oil, sunflower oil, safflower oil, corn oil, soybean oil, cottonseed oil, grapeseed oil, rice bran oil, margarine.

Compliant fats: avocado oil · tallow · ghee · butter · olive oil · coconut oil · duck fat

SCALE FOR 6

Default all recipes to serve 6 people. Numeric servings field enables Mealie's scaling feature.

MILD TO MODERATE HEAT

Kid-friendly heat. Jalapeños seeded. No habaneros, scotch bonnets, or super-hot chilis.


MCP Server Tools (27)

Recipes

Tool Description
search_recipes Search by keyword with category/tag filters
get_recipe Full recipe detail including ingredients, instructions, nutrition, notes
get_recipe_ingredients Ingredient list only
create_recipe_from_url Import from URL (Mealie scrapes automatically)
create_recipe Create manually with full structured content
update_recipe Update any fields on an existing recipe
delete_recipe Permanently delete a recipe

Shopping Lists

Tool Description
get_shopping_lists List all shopping lists
get_shopping_list View list with all items (checked/unchecked)
create_shopping_list Create new empty list
delete_shopping_list Delete a list
add_shopping_list_item Add item to a list
remove_shopping_list_item Remove item from a list
check_shopping_list_item Check or uncheck an item
add_recipe_to_shopping_list Add all recipe ingredients to a list

Meal Plans

Tool Description
get_meal_plans View plans for a date range
create_meal_plan_entry Add entry (recipe or freeform) for a date
delete_meal_plan_entry Remove an entry
generate_random_meal_plan Auto-fill date range with random recipes

Organizers

Tool Description
get_categories List all recipe categories
get_tags List all tags
get_cookbooks List all cookbooks
get_cookbook_recipes Recipes in a specific cookbook
create_category Create a new category
create_tag Create a new tag

Foods & Units

Tool Description
search_foods Search Mealie's foods database
get_units List all measurement units

Requirements

  • Python 3.11+
  • uv package manager
  • Mealie v3.0+ — self-hosted recipe manager
  • Claude Code with plugin support

Development

Run Tests

uv run pytest

Project Structure

mealie-mcp/
├── .claude-plugin/
│   └── plugin.json              # Plugin manifest
├── marketplace.json             # GitHub Marketplace directory
├── src/mealie_mcp/              # MCP server source
│   ├── server.py                # FastMCP app and tool registration
│   ├── client.py                # Async Mealie API client (httpx)
│   ├── config.py                # Pydantic settings (MEALIE_URL, MEALIE_API_KEY)
│   ├── formatting.py            # Markdown output formatters
│   └── tools/                   # Tool modules
│       ├── recipes.py           # 7 recipe tools
│       ├── shopping.py          # 8 shopping list tools
│       ├── mealplan.py          # 4 meal plan tools
│       ├── organizers.py        # 6 organizer tools
│       └── foods.py             # 2 food/unit tools
├── skills/                      # Claude Code skills
│   ├── recipe-creation/         # Mealie v3 recipe authoring
│   ├── foundations/             # Foundation recipe paradigm
│   ├── dietary-management/      # Compliance and substitutions
│   ├── cooking-tips/            # Homesteading techniques
│   └── meal-planning/           # Weekly planning workflow
├── agents/                      # Claude Code agents
│   ├── recipe-advisor.md        # Recipe evaluation and adaptation
│   ├── meal-planner.md          # Weekly meal planning
│   └── cooking-teacher.md       # Technique education
├── commands/                    # Slash commands
│   ├── quick-recipe.md          # Guided recipe creation
│   ├── weekly-menu.md           # Weekly meal plan
│   └── find-recipe.md           # Recipe search
├── hooks/
│   └── hooks.json               # Dietary guardrail PreToolUse hook
├── tests/                       # Test suite (pytest + respx)
├── .mcp.json                    # MCP server config (env var references)
└── pyproject.toml               # Python project metadata

License

MIT

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
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
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
VeyraX MCP

VeyraX MCP

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

Official
Featured
Local
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
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
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

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
Qdrant Server

Qdrant Server

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

Official
Featured