MyMealVault

Getting Started

MyMealVault assistant tool reference (MCP)

Public reference for all 17 MyMealVault MCP tools: OAuth scopes, read/write classification, side effects, and errors.

MyMealVault exposes 17 MCP tools at https://api.mymealvault.com/mcp. Each tool maps to one OAuth-protected public API operation. You sign in once on the MyMealVault consent screen; the assistant sends a bearer token on every tool call.

Classification summary

This table matches the live MCP registry in production (server version 2.0.0). Use it to understand read versus write tools and which writes are marked Sensitive.

ToolClassOAuth scopeSensitive
search_my_recipesReadreadNo
get_recipeReadreadNo
get_household_preferencesReadreadNo
get_meal_planReadreadNo
get_recipe_import_statusReadreadNo
create_recipeWritewriteNo
update_recipeWritewriteNo
import_recipe_from_urlWritewriteNo
create_meal_planWritewriteNo
add_meal_plan_itemWritewriteNo
replace_meal_plan_itemWritewriteNo
move_meal_plan_itemWritewriteNo
duplicate_meal_plan_itemWritewriteNo
remove_meal_plan_itemWritewriteNo
get_grocery_listWritewriteNo
delete_recipeWritewriteYes
create_instacart_shopping_linkWritewriteYes

get_grocery_list is classified as Write because it requires write scope and may create or resync the stored grocery list for the week. It is not a read-only peek at a static list.

Instacart handoff

create_instacart_shopping_linkcreates a shopping list page on Instacart from your MyMealVault grocery list. Checkout and payment happen on Instacart under Instacart's terms after you leave the assistant. MyMealVault never processes grocery payments.

Tool details

search_my_recipes (Read)

Setup: OAuth read or write scope. Inputs: optional query, filters, cursor. Outputs: bounded recipe summaries (default 20, max 50).Side effects: none. Errors: 401 if disconnected; missing or invalid bearer. A read-only OAuth grant is sufficient. Status: synchronous.

get_recipe (Read)

Setup: read scope. Inputs: recipeId. Outputs: full saved recipe (MCP omits third-party image provenance fields). Use after import completes. Side effects: none.

get_household_preferences (Read)

Setup: read scope. Outputs: household size, dietary preferences, planning mode, grocery settings. Side effects: none.

get_meal_plan (Read)

Setup: read scope. Inputs: optional targetDate (YYYY-MM-DD, week containing that date). Outputs: full week plan with titles and thumbnails. Do not call get_recipe for every planned item. Side effects: none.

get_recipe_import_status (Read)

Setup: read scope. Inputs: importJobId. Outputs: queued, processing, completed, or failed plus recipeId when done. Keep polling while queued or processing. Side effects: none.

create_recipe (Write)

Setup: write scope. Inputs: title, ingredients, instructions (required). Outputs: saved recipe id. Background enhancement may continue after the tool returns. Side effects: adds a recipe to your vault.

update_recipe (Write)

Setup: write scope. Inputs: recipeId and fields to change; omitted fields stay. Side effects: overwrites named fields. Confirm with the user before updating.

delete_recipe (Write, Sensitive)

Setup: write scope. Inputs: recipeId. Side effects: permanently removes the recipe and drops it from meal plans. Confirm before deleting.

import_recipe_from_url (Write)

Setup: write scope. Inputs: recipe page URL. Outputs: importJobId immediately; the recipe is not saved until get_recipe_import_status reports completed. Poll every 3 to 5 seconds for up to about two minutes. If import fails, save structured fields with create_recipe. Side effects: queues fetch of the user-supplied URL.

create_meal_plan (Write)

Setup: write scope. Inputs: optional targetDate. Creates a week plan if missing; returns existing plan without overwriting. Side effects: may create a new week plan.

add_meal_plan_item (Write)

Setup: write scope. Inputs: date (YYYY-MM-DD), meal section, recipe or placeholder. Side effects: adds to your private meal plan.

replace_meal_plan_item (Write)

Setup: write scope. Replaces one planned item. Side effects: overwrites that slot.

move_meal_plan_item (Write)

Setup: write scope. Moves an item between days or sections, optionally swapping. Side effects: reorders plan data without deleting recipes.

duplicate_meal_plan_item (Write)

Setup: write scope. Copies an item to another day or section. Side effects: additive copy; original remains.

remove_meal_plan_item (Write)

Setup: write scope. Removes one planned entry or clears a single-section meal. Side effects: deletes planned entries from the week.

get_grocery_list (Write)

Setup: write scope. Inputs: optional targetDate for the week. Outputs: grocery items with check state. Side effects: creates or resyncs the stored list when missing or stale; preserves checked and custom items. Offer Instacart only after the user agrees.

create_instacart_shopping_link (Write, Sensitive)

Setup: write scope. Inputs: same week targetDate as the grocery list. Outputs: Instacart shopping URL. Call get_grocery_list first when the list may be stale.

Related articles

Still need help?

If you could not find what you were looking for, reach out and we will get back to you.

Contact support