Meal Planner MCP
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| list_recipesA | List recipes in the library (bundled seed + your imported/added recipes). Args: tag: optional tag filter (e.g. "vegetarian", "quick"). max_time: optional max total time in minutes. |
| get_recipeB | Full detail for one recipe, including its ingredient list. |
| suggest_recipesA | Candidate recipes matching constraints — the grounding step before you decide a week. Returns recipes from YOUR library (the thing base Claude can't see), filtered by time/tags/ingredients. |
| plan_weekA | Build and save a meal plan, optimizing ingredient overlap, reusing serving-surplus leftovers, and avoiding recently-cooked recipes.
|
| get_current_planC | The currently saved plan, if any. |
| generate_shopping_listA | Consolidated shopping list for the current plan — ingredients merged and scaled across cook days (leftover nights add nothing). Deterministic math, not an LLM estimate. |
| export_planA | Write the current plan + shopping list AND return the rendered content inline.
|
| record_cookedA | Log that you actually cooked a recipe (defaults to today). This is the cross-session memory that powers avoid-repeats — what plain Claude can't do. |
| add_recipeB | Save one recipe to your library — the everyday way to seed it. No file or special format needed: paste or describe a recipe and let Claude
fill these fields in. Set |
| add_recipesA | Bulk-add many recipes in one call — the fast way to build a starter library when you DON'T have a Plan to Eat export to import. The intended flow: generate a batch tailored to the user's tastes (their cuisines, constraints, what they actually cook — don't just produce generic recipes they won't make), let them review it, then save the batch here. The planner only earns its keep over recipes the user genuinely likes. Each item: {"title": str, "ingredients": [free-text lines], plus optional "servings", "tags", "total_time_min", "cuisine", "course", "directions"}. Ingredient lines are parsed like add_recipe so they feed the shopping-list math. Items missing a title or ingredients are skipped (and reported); ids are de-duplicated against the library and within the batch. One state write for the whole batch. Returns the saved recipes + counts. |
| set_courseA | Recategorize a recipe's course — curation for imports that came in uncategorized (e.g. mark a sauce as "Sauce" so it stops landing in dinner slots). Only your own/imported recipes are editable; seed recipes are read-only. |
| swap_mealA | Replace one day of the current plan with a specific recipe — "put tacos on Tuesday instead." A literal per-day override (clears any leftover marking on that day). For "make Friday quicker", call suggest_recipes first, then swap. |
| remove_mealA | Clear one day of the current plan (eating out, skipping). The date stays as an unplanned slot. |
| import_recipesA | Optional bulk shortcut: import many recipes from a Plan to Eat CSV export. Most users seed with add_recipe instead.
|
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 14 tools
Each tool has a clearly distinct purpose: adding recipes (single, bulk, CSV import), listing/getting recipes, planning (plan_week, swap_meal, remove_meal), generating shopping lists, exporting, and logging cooked meals. No two tools overlap in function.
All tool names use a consistent snake_case verb_noun pattern (e.g., add_recipe, export_plan, record_cooked). The verbs are meaningful and predictably describe the action. No naming convention violations.
14 tools cover the full meal planning workflow without being excessive. Each tool serves a specific need, from recipe management to weekly planning and shopping list generation.
Core planning operations are present, but there are gaps: no tool to update or delete user-added recipes (only add and read). This is a notable missing feature for a recipe library, though the planning cycle itself is complete.