plan-to-eat-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| PLAN_TO_EAT_PASSWORD | Yes | Plan to Eat account password. | |
| PLAN_TO_EAT_USERNAME | Yes | Plan to Eat account username/email. |
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": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| list_recipesA | List the user's recipe book (own + saved + queued + friend recipes). Caps at ~500 entries. |
| get_recipeA | Get a single recipe by id, including directions, ingredients, tags, prep_notes, comments. |
| create_recipeB | Create a new recipe. Only |
| update_recipeB | Update an existing recipe. Pass only the fields you want to change. To remove an ingredient include {id, _destroy: true} in ingredients. |
| delete_recipeB | Delete a recipe by id. |
| list_coursesA | List all courses (Appetizers, Main Course, etc.). |
| list_cuisinesA | List all cuisines. |
| list_main_ingredientsA | List all main-ingredient categories. |
| list_tagsB | List all tags. |
| list_planner_eventsA | List all planner (calendar) events. Each entry: { date, recipe_id, section, servings, ... }. |
| get_planner_weekA | Fetch all planner events between start_date and end_date (inclusive, YYYY-MM-DD). end_date defaults to start_date + 6 days. Recipe events are enriched with |
| find_planned_datesA | Find planner events for a given recipe, optionally constrained to a date range. Useful for "is this recipe already planned this week?" checks before scheduling. |
| add_planner_recipeB | Add a recipe to a meal slot on the planner. Returns the newly created event (id, date, section, servings, ...). |
| add_planner_ingredientA | Add a freeform "ingredient" entry to a meal slot (e.g. "2 lbs ground beef" attached to Wednesday dinner). |
| add_planner_noteB | Add a freeform "note" entry to a meal slot (e.g. "Defrost chicken" on Tuesday breakfast). |
| add_leftover_mealA | Schedule a leftover meal derived from a previously planned recipe event. Duplicates the source event with |
| move_planner_eventA | Move an existing planner event to a different date and/or section. Works for recipe, note, and ingredient events. |
| reorder_planner_eventsB | Reorder events within a section. Pass |
| update_planner_entry_textA | Update the text of a note or ingredient planner entry. Note: uses the |
| set_planner_servingsC | Set the servings count on a recipe planner event. |
| duplicate_planner_eventA | Duplicate a planner event. Set plan_leftover=true to mark the copy as a leftover. |
| delete_planner_eventB | Delete a planner event by id. |
| update_planner_optionsA | Update planner display/behaviour preferences (time_zone, planner_start_day, calendar_settings.show_calories, etc). Use Rails-style nested keys like |
| list_frozen_recipesA | List what's in the freezer. Each entry: { id, recipe_id, count, servings, frozen_on }. By default only returns active entries (count > 0); pass include_consumed=true to also see history (the API soft-deletes by zeroing the count rather than removing the row). |
| freeze_recipe_portionsA | Mark N portions of a previously cooked recipe as frozen. |
| delete_frozen_recipeA | Mark a frozen entry as consumed (the portion was eaten or thrown out). Soft-delete: API sets count to 0; the entry persists as history. |
| list_menusB | List saved menus. |
| get_shopping_listA | Get the current shopping list with sync metadata. |
| list_friendsA | List friends. |
| get_countsA | Get recipe-book counts: { friends, queued, frozen }. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/alex-zwingli/plan-to-eat-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server