Skip to main content
Glama
Better Mealie MCP

Better Mealie MCP

๐Ÿฒ Better Mealie MCP

An MCP server exposing every Mealie API endpoint โ€” all 250+ operations, none excluded. Manage recipes, meal plans, shopping lists, households and more from any AI assistant, in natural language.


Built with FastMCP from_openapi: tools are generated straight from Mealie's OpenAPI spec, so the server stays in sync with Mealie and nothing is hand-maintained. See TOOLS.md for the full tool list.

๐Ÿ’ฌ What can you do with it?

You say

What happens

"Add a chicken tikka masala recipe from this URL"

Scrapes and imports the recipe

"What can I cook with what's in my pantry?"

Searches recipes by your ingredients

"Plan my dinners for next week"

Creates meal-plan entries

"Build a shopping list for those meals"

Generates a consolidated shopping list

"Tag all my soups as 'winter'"

Bulk-updates recipe tags

Related MCP server: Mealie MCP Server

๐Ÿง™ Setup Wizard

โ†’ Open the Setup Wizard

Don't hand-write JSON. The wizard walks you through every choice and emits a ready-to-paste config for your combination:

  • Install โ€” Docker image or from source.

  • Client โ€” Claude Code, Claude Desktop, Cursor, VS Code, Gemini CLI, or ChatGPT (it knows each one's config shape).

  • Connection โ€” stdio or HTTP, API token or username/password.

  • Limit tools (optional) โ€” trim the 259 tools to just the groups you need, for leaner context or clients that cap tool counts. Start from a pack (Cooking, Meal planning, Sharing & browse, Admin & users) or pick groups individually; tap a group's โ“˜ to see every tool inside it. Your choice is baked into the generated config as MEALIE_INCLUDE_TAGS.

๐Ÿš€ Setup

Docker (GHCR image):

docker pull ghcr.io/djwmarcx/better-mealie-mcp
docker run -i --rm \
  -e MEALIE_BASE_URL=http://host.docker.internal:9925 \
  -e MEALIE_API_TOKEN=... \
  ghcr.io/djwmarcx/better-mealie-mcp            # stdio; add `--http 8000` for HTTP

Images are published on each release, tagged <mealie-version> and latest. Inside a container, localhost is the container โ€” point MEALIE_BASE_URL at host.docker.internal (macOS/Windows) or your host's LAN IP (Linux).

From source:

git clone https://github.com/djwmarcx/better-mealie-mcp
cd better-mealie-mcp
uv sync                     # install deps
cp .env.example .env        # then edit .env with your Mealie URL + token

Auth (set in .env or the environment):

Var

Meaning

MEALIE_BASE_URL

Mealie base URL (default http://localhost:9925)

MEALIE_API_TOKEN

Long-lived API token (preferred) โ€” Mealie โ†’ Profile โ†’ Manage API Tokens

MEALIE_USERNAME / MEALIE_PASSWORD

Alternative: logs in at startup to fetch a token

MEALIE_TIMEOUT

Per-request timeout, seconds (default 60)

MEALIE_VERIFY_SSL

Verify TLS cert; false to accept self-signed (default true)

MCP_SERVER_NAME

MCP name advertised to clients (default Mealie)

MEALIE_INCLUDE_TAGS

Expose only these API groups, comma-separated (e.g. recipes,organizers,foods). Fewer tools = leaner context / fits clients that cap tool counts

MEALIE_EXCLUDE_TAGS

Expose everything except these groups (e.g. admin,households)

MEALIE_SLIM_SCHEMAS

Trim redundant schema noise โ€” default true (see modes below)

MEALIE_SLIM_AGGRESSIVE

Also collapse nullable anyOf unions โ€” default false

MEALIE_VALIDATE_OUTPUT

Emit per-tool output schemas + validate results โ€” default false

Groups are the first path segment of the API (recipes, households, admin, organizers, users, explore, foods, units, โ€ฆ). Unset = every tool. INCLUDE wins if both are set. See TOOLS.md for the current groups and what's in each, or let the Setup Wizard pick them โ€” its group picker (with one-click packs like Cooking or Meal planning) fills MEALIE_INCLUDE_TAGS for you.

Context size (schema detail)

Every tool this server exposes ships its JSON schema to the model on every request โ€” that "idle context" is pure overhead until a tool is actually called. With all 259 tools the full schemas are ~240k tokens, so the server trims them. Three preset modes (all endpoints stay callable โ€” only the schema detail the model sees changes):

Mode

Env

Idle context

What it does

Lean (default)

(none โ€” the default)

~61k tok

Drops redundant titles (FastAPI auto-generates them from field names) and echoed defaults, and omits output/response schemas. No loss of callable capability.

Leanest

MEALIE_SLIM_AGGRESSIVE=true

~51k tok

Everything Lean does, plus collapses nullable anyOf:[{X},{null}] unions to X (drops the explicit "null allowed" hint).

Full

MEALIE_SLIM_SCHEMAS=falseMEALIE_VALIDATE_OUTPUT=true

~240k tok

Complete, untrimmed input and output schemas, with client-side result validation. Use only if your client relies on structured-output schemas.

Everything the model needs to make a correct call (format, real descriptions, required fields) is kept in every mode. Combine with tag filtering above to shrink further โ€” the Setup Wizard shows a live token estimate for your exact combination.

โ–ถ๏ธ Run

uv run better-mealie-mcp             # stdio transport (for MCP clients)
uv run better-mealie-mcp --http 8000 # streamable-http on 127.0.0.1:8000
uv run server.py                     # same server, back-compat entry
fastmcp run fastmcp.json             # via FastMCP project config (stdio)
fastmcp run fastmcp-http.json        # via FastMCP project config (http)

In --http mode the bind address comes from MCP_HOST (default 127.0.0.1; the Docker image sets 0.0.0.0 so -p port mapping works).

๐Ÿงช Test against a local Mealie (Docker)

docker run -d --name mealie -p 9925:9000 \
  -e ALLOW_SIGNUP=true -e BASE_URL=http://localhost:9925 -e TZ=UTC \
  ghcr.io/mealie-recipes/mealie:latest

Default admin login: changeme@example.com / MyPassword.

๐Ÿ“ Notes

  • Exposing every endpoint is a lot of tools โ€” a lot of idle context. Most clients handle it fine. If yours caps tool counts or you want a leaner context, trim the toolset with MEALIE_INCLUDE_TAGS / MEALIE_EXCLUDE_TAGS (see Setup) or the wizard's group picker.

Versioning

This MCP's version mirrors the Mealie version its spec targets โ€” MCP 3.20.1 โ‡’ Mealie v3.20.1. The server advertises it to clients, and VERSIONS.md maps every release to its Mealie version and date.

MCP-only changes (features/fixes with no Mealie version change) ship as a revision of the same Mealie version: the REVISION counter bumps and the release/image tag gains a -r<n> suffix โ€” e.g. v3.20.1-r2 (-r1 is the base and carries no suffix). A new Mealie version resets the counter. :latest always points at the newest build.

openapi.json is a vendored copy of Mealie's spec. The update-spec workflow runs daily and auto-tracks the latest stable Mealie release (mealie:latest): it boots that image, reads its real version from /api/app/about (MEALIE_VERSION), pulls /openapi.json, regenerates TOOLS.md + counts, and โ€” only when the spec actually changed โ€” bumps the version and opens a pull request (main is protected, so every change lands via PR). When that PR merges, release-on-spec cuts a release (spec attached, notes listing added/removed tools). Volatile server-clock defaults are stripped so an unchanged run is a true no-op.

To freeze on one release instead of tracking latest, set MEALIE_TAG_DEFAULT in the workflow to a specific tag (e.g. v3.20.1), or run it manually with a mealie_tag input (latest, nightly, or any tag).

  • A few endpoints (list_auth_oauth*) return 500 unless OIDC is configured on the Mealie side โ€” that's Mealie behavior, not the server.

๐Ÿ“„ License

MIT License

Available Tools

283 tools
create_admin_backupsCreate Admin BackupsD

Create One

Inputs: accept-language. Returns: object

create_admin_backups_by_file_name_restoreCreate Admin Backups By File Name RestoreD

Import One

Inputs: file_name (required), accept-language. Returns: object

create_admin_backups_uploadCreate Admin Backups UploadC

Upload a .zip File to later be imported into Mealie

Inputs: archive (required), accept-language. Returns: object

create_admin_debug_openai_by_providerCreate Admin Debug Openai By ProviderD

Debug Openai

Inputs: provider_id (required), image, accept-language. Returns: object

create_admin_emailCreate Admin EmailC

Send Test Email

Inputs: email (required), accept-language. Returns: object

create_admin_groupsCreate Admin GroupsD

Create One

Inputs: name (required), accept-language. Returns: object

create_admin_groups_by_group_ai_providers_providersCreate Admin Groups By Group Ai Providers ProvidersC

Create Ai Provider

Inputs: name (required), model (required), group_id (required), apiKey, +5 more. Returns: object

create_admin_householdsCreate Admin HouseholdsD

Create One

Inputs: name (required), groupId, accept-language. Returns: object

create_admin_maintenance_clean_imagesCreate Admin Maintenance Clean ImagesA

Purges all the images from the filesystem that aren't .webp

Inputs: accept-language. Returns: object

create_admin_maintenance_clean_recipe_foldersCreate Admin Maintenance Clean Recipe FoldersA

Deletes all the recipe folders that don't have names that are valid UUIDs

Inputs: accept-language. Returns: object

create_admin_maintenance_clean_tempCreate Admin Maintenance Clean TempD

Clean Temp

Inputs: accept-language. Returns: object

create_admin_usersCreate Admin UsersD

Create One

Inputs: email (required), fullName (required), password (required), username (required), +13 more. Returns: object

create_admin_users_password_reset_tokenCreate Admin Users Password Reset TokenC

Generates a reset token and returns it. This is an authenticated endpoint

Inputs: email (required), accept-language. Returns: object

create_admin_users_unlockCreate Admin Users UnlockD

Unlock Users

Inputs: force, accept-language. Returns: object

create_auth_logoutCreate Auth LogoutD

Logout

Inputs: accept-language.

create_auth_oauth_native_tokenCreate Auth Oauth Native TokenA

Exchange a native client's authorization code for a Mealie token.

The native client owns PKCE and state, so the exchange happens server-side without a browser session cookie. This lets passkey-capable system-browser logins (e.g. Pocket ID) work, which the cookie-coupled web callback cannot support.

Inputs: code (required), redirect_uri (required), code_verifier (required), nonce.

create_auth_refreshCreate Auth RefreshA

Exchange a valid session token for a fresh one.

The new token carries over the remember-me choice recorded on the old one, so refreshing doesn't downgrade a remembered session to one that dies with the browser.

Inputs: no named parameters.

create_auth_tokenCreate Auth TokenD

Get Token

Inputs: password, username, remember_me.

create_commentsCreate CommentsD

Create One

Inputs: text (required), recipeId (required), accept-language. Returns: object

create_foodsCreate FoodsD

Create One

Inputs: name (required), id, extras, aliases, +6 more. Returns: object

create_groups_ai_providers_providersCreate Groups Ai Providers ProvidersD

Create Ai Provider

Inputs: name (required), model (required), apiKey, baseUrl, +4 more. Returns: object

create_groups_ai_providers_providers_by_provider_testCreate Groups Ai Providers Providers By Provider TestA

Test connectivity for an already-saved provider.

Accepts optional unsaved edits to test against instead of what's in the database - e.g. while editing a provider, the caller may have changed the model/base_url but left the API key blank (meaning "keep the existing one"), so a plain "unsaved" test can't be used since it has no way to supply that key. An overrides.apiKey of "" is treated the same way: keep the saved key rather than testing with an empty one.

Inputs: provider_id (required), body, accept-language. Returns: object

create_groups_ai_providers_providers_testCreate Groups Ai Providers Providers TestA

Test connectivity for a provider configuration before it has been saved.

Inputs: name (required), model (required), apiKey, baseUrl, +4 more. Returns: object

create_groups_labelsCreate Groups LabelsD

Create One

Inputs: name (required), color, accept-language. Returns: object

create_groups_labels_mergeCreate Groups Labels MergeA

Merges the from_id label into the to_id label, then deletes from_id.

Inputs: toId (required), fromId (required), accept-language. Returns: object

create_groups_migrationsCreate Groups MigrationsC

Start Data Migration

Inputs: archive (required), migration_type (required), accept-language, add_migration_tag. Returns: object

create_groups_seeders_foodsCreate Groups Seeders FoodsD

Seed Foods

Inputs: locale (required), accept-language. Returns: object

create_groups_seeders_unitsCreate Groups Seeders UnitsD

Seed Units

Inputs: locale (required), accept-language. Returns: object

create_households_cookbooksCreate Households CookbooksD

Create One

Inputs: name (required), slug, public, position, +3 more. Returns: object

create_households_events_notificationsCreate Households Events NotificationsD

Create One

Inputs: name (required), appriseUrl, accept-language. Returns: object

create_households_events_notifications_by_item_testCreate Households Events Notifications By Item TestD

Test Notification

Inputs: item_id (required), accept-language.

create_households_invitationsCreate Households InvitationsC

Create Invite Token

Inputs: uses (required), groupId, householdId, accept-language. Returns: object

create_households_invitations_emailCreate Households Invitations EmailD

Email Invitation

Inputs: email (required), token (required), accept-language. Returns: object

create_households_mealplansCreate Households MealplansD

Create One

Inputs: date (required), text, endDate, recipeId, +3 more. Returns: object

create_households_mealplans_icalCreate Households Mealplans IcalA

Enables the meal plan iCal feed, replacing any existing token so old feed URLs stop working

Inputs: accept-language. Returns: object

create_households_mealplans_randomCreate Households Mealplans RandomC

create_random_meal is a route that provides the randomized functionality for meal planners. It operates by following the rules set out in the household's meal plan settings. If no settings are set, it will return any random meal.

Refer to the meal plan settings routes for more information on how rules can be applied to the random meal selector.

Inputs: date (required), endDate, entryType, accept-language. Returns: object

create_households_mealplans_rulesCreate Households Mealplans RulesD

Create One

Inputs: day, entryType, accept-language, queryFilterString. Returns: object

create_households_recipe_actionsCreate Households Recipe ActionsD

Create One

Inputs: url (required), actionType (required), accept-language. Returns: object

create_households_recipe_actions_by_item_trigger_by_reciCreate Households Recipe Actions By Item Trigger By ReciD

Trigger Action

Inputs: item_id (required), recipe_slug (required), recipe_scale, accept-language.

create_households_shopping_itemsCreate Households Shopping ItemsD

Create One

Inputs: shoppingListId (required), id, food, note, +12 more. Returns: object

create_households_shopping_items_create_bulkCreate Households Shopping Items Create BulkD

Create Many

Inputs: body (required), accept-language. Returns: object

create_households_shopping_listsCreate Households Shopping ListsD

Create One

Inputs: name, extras, createdAt, update_at, +1 more. Returns: object

create_households_shopping_lists_by_item_recipeCreate Households Shopping Lists By Item RecipeC

Add Recipe Ingredients To List

Inputs: body (required), item_id (required), accept-language. Returns: object

create_households_shopping_lists_by_item_recipe_by_rec_2Create Households Shopping Lists By Item Recipe By Rec 2C

Remove Recipe Ingredients From List

Inputs: item_id (required), recipe_id (required), body, accept-language. Returns: object

create_households_shopping_lists_by_item_recipe_by_recipCreate Households Shopping Lists By Item Recipe By RecipC

Add Single Recipe Ingredients To List

Inputs: item_id (required), recipe_id (required), body, accept-language. Returns: object

create_households_webhooksCreate Households WebhooksD

Create One

Inputs: scheduledTime (required), url, name, enabled, +2 more. Returns: object

create_households_webhooks_by_item_testCreate Households Webhooks By Item TestD

Test One

Inputs: item_id (required), accept-language.

create_households_webhooks_rerunCreate Households Webhooks RerunB

Manually re-fires all previously scheduled webhooks for today

Inputs: accept-language.

create_organizers_categoriesCreate Organizers CategoriesC

Creates a Category in the database

Inputs: name (required), accept-language.

create_organizers_categories_mergeCreate Organizers Categories MergeA

Merges the from_id category into the to_id category, then deletes from_id.

Inputs: toId (required), fromId (required), accept-language. Returns: object

create_organizers_tagsCreate Organizers TagsC

Creates a Tag in the database

Inputs: name (required), accept-language.

create_organizers_tags_mergeCreate Organizers Tags MergeA

Merges the from_id tag into the to_id tag, then deletes from_id.

Inputs: toId (required), fromId (required), accept-language. Returns: object

create_organizers_toolsCreate Organizers ToolsD

Create One

Inputs: name (required), accept-language, householdsWithTool. Returns: object

create_organizers_tools_mergeCreate Organizers Tools MergeB

Merges the from_id tool into the to_id tool, then deletes from_id.

Inputs: toId (required), fromId (required), accept-language. Returns: object

create_parser_ingredientCreate Parser IngredientC

Parse Ingredient

Inputs: ingredient (required), parser, accept-language. Returns: object

create_parser_ingredientsCreate Parser IngredientsD

Parse Ingredients

Inputs: ingredients (required), parser, accept-language. Returns: object

create_recipesCreate RecipesC

Takes in a JSON string and loads data into the database as a new entry

Inputs: name (required), accept-language. Returns: object

create_recipes_bulk_actions_categorizeCreate Recipes Bulk Actions CategorizeC

Bulk Categorize Recipes

Inputs: recipes (required), categories (required), accept-language.

create_recipes_bulk_actions_deleteCreate Recipes Bulk Actions DeleteC

Bulk Delete Recipes

Inputs: recipes (required), accept-language.

create_recipes_bulk_actions_exportCreate Recipes Bulk Actions ExportC

Bulk Export Recipes

Inputs: recipes (required), exportType, accept-language.

create_recipes_bulk_actions_settingsCreate Recipes Bulk Actions SettingsD

Bulk Settings Recipes

Inputs: recipes (required), settings (required), accept-language.

create_recipes_bulk_actions_tagCreate Recipes Bulk Actions TagC

Bulk Tag Recipes

Inputs: tags (required), recipes (required), accept-language.

create_recipes_by_slug_assetsCreate Recipes By Slug AssetsC

Upload a file to store as a recipe asset

Inputs: file (required), icon (required), name (required), slug (required), +2 more. Returns: object

create_recipes_by_slug_assets_urlCreate Recipes By Slug Assets UrlC

Download an image from a URL and store it as a recipe asset.

Inputs: url (required), slug (required), includeTags, accept-language, +1 more. Returns: object

create_recipes_by_slug_duplicateCreate Recipes By Slug DuplicateC

Duplicates a recipe with a new custom name if given

Inputs: slug (required), name, accept-language. Returns: object

create_recipes_by_slug_imageCreate Recipes By Slug ImageD

Scrape Image Url

Inputs: url (required), slug (required), includeTags, accept-language, +1 more. Returns: object

create_recipes_create_aiCreate Recipes Create AiA

Create a recipe from any combination of content (HTML, JSON, or text), images, and a URL, using AI. Optionally specify a language for it to translate the recipe to.

Inputs: url, images, content, accept-language, +2 more. Returns: object

create_recipes_create_ai_streamCreate Recipes Create Ai StreamB

Create a recipe from any combination of content (HTML, JSON, or text), images, and a URL, using AI, streaming progress via SSE

Inputs: url, images, content, accept-language, +2 more.

create_recipes_create_html_or_jsonCreate Recipes Create Html Or JsonB

Takes in raw HTML or a https://schema.org/Recipe object as a JSON string and parses it like a URL.

A complete recipe exported from Mealie (the JSON from an export zip, or the recipe as returned by the API) is imported with its full structure instead of being parsed as schema.org.

Inputs: data (required), url, includeTags, accept-language, +1 more. Returns: object

create_recipes_create_html_or_json_streamCreate Recipes Create Html Or Json StreamB

Takes in raw HTML or a https://schema.org/Recipe object as a JSON string and parses it like a URL, streaming progress via SSE.

A complete recipe exported from Mealie (the JSON from an export zip, or the recipe as returned by the API) is imported with its full structure instead of being parsed as schema.org.

Inputs: data (required), url, includeTags, accept-language, +1 more.

create_recipes_create_urlCreate Recipes Create UrlC

Takes in a URL and attempts to scrape data and load it into the database

Inputs: url (required), includeTags, accept-language, includeCategories. Returns: object

create_recipes_create_url_bulkCreate Recipes Create Url BulkC

Takes in a URL and attempts to scrape data and load it into the database

Inputs: imports (required), accept-language.

create_recipes_create_url_streamCreate Recipes Create Url StreamC

Takes in a URL and attempts to scrape data and load it into the database, streaming progress via SSE

Inputs: url (required), includeTags, accept-language, includeCategories.

create_recipes_create_zipCreate Recipes Create ZipC

Create recipe from archive

Inputs: archive (required), accept-language.

create_recipes_test_scrape_urlCreate Recipes Test Scrape UrlC

Test Parse Recipe Url

Inputs: url (required), useOpenAI, accept-language.

create_recipes_timeline_eventsCreate Recipes Timeline EventsD

Create One

Inputs: subject (required), recipeId (required), eventType (required), image, +4 more. Returns: object

create_shared_recipesCreate Shared RecipesD

Create One

Inputs: recipeId (required), expiresAt, accept-language. Returns: object

create_unitsCreate UnitsD

Create One

Inputs: name (required), id, extras, aliases, +9 more. Returns: object

create_users_api_tokensCreate Users Api TokensD

Create api_token in the Database

Inputs: name (required), integrationId, accept-language. Returns: object

create_users_by_id_favorites_by_slugCreate Users By Id Favorites By SlugC

Adds a recipe to the user's favorites

Inputs: id (required), slug (required), accept-language.

create_users_by_id_imageCreate Users By Id ImageC

Updates a User Image

Inputs: id (required), profile (required), accept-language.

create_users_by_id_ratings_by_slugCreate Users By Id Ratings By SlugC

Sets the user's rating for a recipe

Inputs: id (required), slug (required), rating, isFavorite, +1 more.

create_users_forgot_passwordCreate Users Forgot PasswordC

Sends an email with a reset link to the user

Inputs: email (required), accept-language.

create_users_registerCreate Users RegisterC

Register New User

Inputs: email (required), fullName (required), password (required), username (required), +9 more. Returns: object

create_users_reset_passwordCreate Users Reset PasswordC

Resets the user password

Inputs: email (required), token (required), password (required), passwordConfirm (required).

delete_admin_backups_by_file_nameDelete Admin Backups By File NameD

Delete One

Inputs: file_name (required), accept-language. Returns: object

delete_admin_groups_by_group_ai_providers_prompts_by_proDelete Admin Groups By Group Ai Providers Prompts By ProC

Reset a prompt to the default

Inputs: group_id (required), prompt_name (required), accept-language. Returns: object

delete_admin_groups_by_group_ai_providers_providers_by_pDelete Admin Groups By Group Ai Providers Providers By PD

Delete Ai Provider

Inputs: group_id (required), provider_id (required), accept-language. Returns: object

delete_admin_groups_by_itemDelete Admin Groups By ItemD

Delete One

Inputs: item_id (required), accept-language. Returns: object

delete_admin_households_by_itemDelete Admin Households By ItemD

Delete One

Inputs: item_id (required), accept-language. Returns: object

delete_admin_users_by_itemDelete Admin Users By ItemD

Delete One

Inputs: item_id (required), accept-language. Returns: object

delete_comments_by_itemDelete Comments By ItemD

Delete One

Inputs: item_id (required), accept-language. Returns: object

delete_foods_by_itemDelete Foods By ItemD

Delete One

Inputs: item_id (required), accept-language. Returns: object

delete_groups_ai_providers_prompts_by_prompt_nameDelete Groups Ai Providers Prompts By Prompt NameC

Reset a prompt to the default

Inputs: prompt_name (required), accept-language. Returns: object

delete_groups_ai_providers_providers_by_providerDelete Groups Ai Providers Providers By ProviderC

Delete Ai Provider

Inputs: provider_id (required), accept-language. Returns: object

delete_groups_labels_by_itemDelete Groups Labels By ItemD

Delete One

Inputs: item_id (required), accept-language. Returns: object

delete_groups_reports_by_itemDelete Groups Reports By ItemD

Delete One

Inputs: item_id (required), accept-language.

delete_households_cookbooks_by_itemDelete Households Cookbooks By ItemD

Delete One

Inputs: item_id (required), accept-language. Returns: object

delete_households_events_notifications_by_itemDelete Households Events Notifications By ItemD

Delete One

Inputs: item_id (required), accept-language.

delete_households_mealplans_by_itemDelete Households Mealplans By ItemD

Delete One

Inputs: item_id (required), accept-language. Returns: object

delete_households_mealplans_icalDelete Households Mealplans IcalC

Disables the meal plan iCal feed

Inputs: accept-language. Returns: object

delete_households_mealplans_rules_by_itemDelete Households Mealplans Rules By ItemD

Delete One

Inputs: item_id (required), accept-language. Returns: object

delete_households_recipe_actions_by_itemDelete Households Recipe Actions By ItemD

Delete One

Inputs: item_id (required), accept-language. Returns: object

delete_households_shopping_itemsDelete Households Shopping ItemsC

Delete Many

Inputs: ids, accept-language. Returns: object

delete_households_shopping_items_by_itemDelete Households Shopping Items By ItemD

Delete One

Inputs: item_id (required), accept-language. Returns: object

delete_households_shopping_lists_by_itemDelete Households Shopping Lists By ItemD

Delete One

Inputs: item_id (required), accept-language. Returns: object

delete_households_webhooks_by_itemDelete Households Webhooks By ItemD

Delete One

Inputs: item_id (required), accept-language. Returns: object

delete_organizers_categories_by_itemDelete Organizers Categories By ItemA

Removes a recipe category from the database. Deleting a category does not impact a recipe. The category will be removed from any recipes that contain it

Inputs: item_id (required), accept-language.

delete_organizers_tags_by_itemDelete Organizers Tags By ItemA

Removes a recipe tag from the database. Deleting a tag does not impact a recipe. The tag will be removed from any recipes that contain it

Inputs: item_id (required), accept-language.

delete_organizers_tools_by_itemDelete Organizers Tools By ItemD

Delete One

Inputs: item_id (required), accept-language. Returns: object

delete_recipes_bulk_actions_export_purgeDelete Recipes Bulk Actions Export PurgeA

Remove all exports data, including items on disk without database entry

Inputs: accept-language. Returns: object

delete_recipes_by_slugDelete Recipes By SlugB

Deletes a recipe by slug

Inputs: slug (required), accept-language.

delete_recipes_by_slug_imageDelete Recipes By Slug ImageC

Delete Recipe Image

Inputs: slug (required), accept-language.

delete_recipes_timeline_events_by_itemDelete Recipes Timeline Events By ItemD

Delete One

Inputs: item_id (required), accept-language. Returns: object

delete_shared_recipes_by_itemDelete Shared Recipes By ItemD

Delete One

Inputs: item_id (required), accept-language.

delete_units_by_itemDelete Units By ItemD

Delete One

Inputs: item_id (required), accept-language. Returns: object

delete_users_api_tokens_by_tokenDelete Users Api Tokens By TokenC

Delete api_token from the Database

Inputs: token_id (required), accept-language. Returns: object

delete_users_by_id_favorites_by_slugDelete Users By Id Favorites By SlugB

Removes a recipe from the user's favorites

Inputs: id (required), slug (required), accept-language.

get_admin_backups_by_file_nameGet Admin Backups By File NameC

Returns a token to download a file

Inputs: file_name (required), accept-language. Returns: object

get_admin_groups_by_group_ai_providers_providers_by_provGet Admin Groups By Group Ai Providers Providers By ProvD

Get Ai Provider

Inputs: group_id (required), provider_id (required), accept-language. Returns: object

get_admin_groups_by_itemGet Admin Groups By ItemD

Get One

Inputs: item_id (required), accept-language. Returns: object

get_admin_households_by_itemGet Admin Households By ItemD

Get One

Inputs: item_id (required), accept-language. Returns: object

get_admin_users_by_itemGet Admin Users By ItemD

Get One

Inputs: item_id (required), accept-language. Returns: object

get_comments_by_itemGet Comments By ItemD

Get One

Inputs: item_id (required), accept-language. Returns: object

get_explore_groups_by_group_slug_cookbooks_by_itemGet Explore Groups By Group Slug Cookbooks By ItemD

Get One

Inputs: item_id (required), group_slug (required), accept-language. Returns: object

get_explore_groups_by_group_slug_foods_by_itemGet Explore Groups By Group Slug Foods By ItemD

Get One

Inputs: item_id (required), group_slug (required), accept-language. Returns: object

get_explore_groups_by_group_slug_households_by_householdGet Explore Groups By Group Slug Households By HouseholdD

Get Household

Inputs: group_slug (required), household_slug (required), accept-language. Returns: object

get_explore_groups_by_group_slug_organizers_categories_bGet Explore Groups By Group Slug Organizers Categories BD

Get One

Inputs: item_id (required), group_slug (required), accept-language. Returns: object

get_explore_groups_by_group_slug_organizers_tags_by_itemGet Explore Groups By Group Slug Organizers Tags By ItemD

Get One

Inputs: item_id (required), group_slug (required), accept-language. Returns: object

get_explore_groups_by_group_slug_organizers_tools_by_iteGet Explore Groups By Group Slug Organizers Tools By IteD

Get One

Inputs: item_id (required), group_slug (required), accept-language. Returns: object

get_explore_groups_by_group_slug_recipes_by_recipe_slugGet Explore Groups By Group Slug Recipes By Recipe SlugD

Get Recipe

Inputs: group_slug (required), recipe_slug (required), accept-language. Returns: object

get_foods_by_itemGet Foods By ItemD

Get One

Inputs: item_id (required), accept-language. Returns: object

get_groups_ai_providers_providers_by_providerGet Groups Ai Providers Providers By ProviderD

Get Ai Provider

Inputs: provider_id (required), accept-language. Returns: object

get_groups_households_by_household_slugGet Groups Households By Household SlugC

Get One Household

Inputs: household_slug (required), accept-language. Returns: object

get_groups_labels_by_itemGet Groups Labels By ItemD

Get One

Inputs: item_id (required), accept-language. Returns: object

get_groups_members_by_username_orGet Groups Members By Username OrC

Returns a single user belonging to the current group

Inputs: username_or_id (required), accept-language. Returns: object

get_groups_reports_by_itemGet Groups Reports By ItemD

Get One

Inputs: item_id (required), accept-language. Returns: object

get_households_cookbooks_by_itemGet Households Cookbooks By ItemD

Get One

Inputs: item_id (required), accept-language. Returns: object

get_households_events_notifications_by_itemGet Households Events Notifications By ItemD

Get One

Inputs: item_id (required), accept-language. Returns: object

get_households_mealplans_by_itemGet Households Mealplans By ItemD

Get One

Inputs: item_id (required), accept-language. Returns: object

get_households_mealplans_ical_by_tokenGet Households Mealplans Ical By TokenB

Public iCal feed of the household's meal plan. No authentication is required; access is controlled by the secret token in the URL.

Inputs: token (required), tz, lang, side, +12 more.

get_households_mealplans_rules_by_itemGet Households Mealplans Rules By ItemD

Get One

Inputs: item_id (required), accept-language. Returns: object

get_households_recipe_actions_by_itemGet Households Recipe Actions By ItemD

Get One

Inputs: item_id (required), accept-language. Returns: object

get_households_self_recipes_by_recipe_slugGet Households Self Recipes By Recipe SlugC

Returns recipe data for the current household

Inputs: recipe_slug (required), accept-language. Returns: object

get_households_shopping_items_by_itemGet Households Shopping Items By ItemD

Get One

Inputs: item_id (required), accept-language. Returns: object

get_households_shopping_lists_by_itemGet Households Shopping Lists By ItemD

Get One

Inputs: item_id (required), accept-language. Returns: object

get_households_webhooks_by_itemGet Households Webhooks By ItemD

Get One

Inputs: item_id (required), accept-language. Returns: object

get_media_recipes_by_recipe_assets_by_file_nameGet Media Recipes By Recipe Assets By File NameC

Returns a recipe asset

Inputs: file_name (required), recipe_id (required).

get_media_recipes_by_recipe_images_by_file_nameGet Media Recipes By Recipe Images By File NameC

Takes in a recipe id, returns the static image. This route is proxied in the docker image and should not hit the API in production

Inputs: file_name (required), recipe_id (required).

get_media_recipes_by_recipe_images_timeline_by_timelineGet Media Recipes By Recipe Images Timeline By TimelineB

Takes in a recipe id and event timeline id, returns the static image. This route is proxied in the docker image and should not hit the API in production

Inputs: file_name (required), recipe_id (required), timeline_event_id (required).

get_media_users_by_user_by_file_nameGet Media Users By User By File NameC

Takes in a recipe slug, returns the static image. This route is proxied in the docker image and should not hit the API in production

Inputs: user_id (required), file_name (required).

get_organizers_categories_by_itemGet Organizers Categories By ItemC

Returns a list of recipes associated with the provided category.

Inputs: item_id (required), accept-language. Returns: object

get_organizers_categories_slug_by_category_slugGet Organizers Categories Slug By Category SlugC

Returns a category object with the associated recieps relating to the category

Inputs: category_slug (required), accept-language.

get_organizers_tags_by_itemGet Organizers Tags By ItemC

Returns a list of recipes associated with the provided tag.

Inputs: item_id (required), accept-language. Returns: object

get_organizers_tags_slug_by_tag_slugGet Organizers Tags Slug By Tag SlugD

Get One By Slug

Inputs: tag_slug (required), accept-language. Returns: object

get_organizers_tools_by_itemGet Organizers Tools By ItemD

Get One

Inputs: item_id (required), accept-language. Returns: object

get_organizers_tools_slug_by_tool_slugGet Organizers Tools Slug By Tool SlugC

Get One By Slug

Inputs: tool_slug (required), accept-language. Returns: object

get_recipes_by_slugGet Recipes By SlugB

Takes in a recipe's slug or id and returns all data for a recipe

Inputs: slug (required), accept-language. Returns: object

get_recipes_shared_by_tokenGet Recipes Shared By TokenD

Get Shared Recipe

Inputs: token_id (required). Returns: object

get_recipes_timeline_events_by_itemGet Recipes Timeline Events By ItemD

Get One

Inputs: item_id (required), accept-language. Returns: object

get_shared_recipes_by_itemGet Shared Recipes By ItemD

Get One

Inputs: item_id (required), accept-language. Returns: object

get_units_by_itemGet Units By ItemD

Get One

Inputs: item_id (required), accept-language. Returns: object

get_users_self_ratings_by_recipeGet Users Self Ratings By RecipeC

Get Logged In User Rating For Recipe

Inputs: recipe_id (required), accept-language. Returns: object

list_admin_aboutList Admin AboutC

Get general application information

Inputs: accept-language. Returns: object

list_admin_about_checkList Admin About CheckD

Check App Config

Inputs: accept-language. Returns: object

list_admin_about_statisticsList Admin About StatisticsC

Get App Statistics

Inputs: accept-language. Returns: object

list_admin_backupsList Admin BackupsD

Get All

Inputs: accept-language. Returns: object

list_admin_emailList Admin EmailC

Get general application information

Inputs: accept-language. Returns: object

list_admin_groupsList Admin GroupsD

Get All

Inputs: page, orderBy, perPage, queryFilter, +4 more. Returns: object

list_admin_groups_by_group_ai_providers_promptsList Admin Groups By Group Ai Providers PromptsD

Get Ai Prompts

Inputs: group_id (required), accept-language. Returns: object

list_admin_householdsList Admin HouseholdsD

Get All

Inputs: page, orderBy, perPage, queryFilter, +4 more. Returns: object

list_admin_maintenanceList Admin MaintenanceC

Get the maintenance summary

Inputs: accept-language. Returns: object

list_admin_maintenance_storageList Admin Maintenance StorageC

Get Storage Details

Inputs: accept-language. Returns: object

list_admin_usersList Admin UsersD

Get All

Inputs: page, orderBy, perPage, queryFilter, +4 more. Returns: object

list_app_aboutList App AboutB

Get general application information

Inputs: no named parameters. Returns: object

list_app_about_startup_infoList App About Startup InfoC

returns helpful startup information

Inputs: no named parameters. Returns: object

list_app_about_themeList App About ThemeA

Get's the current theme settings

Inputs: no named parameters. Returns: object

list_auth_oauthList Auth OauthC

Oauth Login

Inputs: no named parameters.

list_auth_oauth_callbackList Auth Oauth CallbackC

Oauth Callback

Inputs: no named parameters.

list_auth_oauth_native_configList Auth Oauth Native ConfigA

Return the parameters a native client needs to build its own OIDC authorization request.

Inputs: no named parameters. Returns: object

list_auth_reverse_proxyList Auth Reverse ProxyC

Authenticate a user using a username forwarded by a trusted reverse proxy header

Inputs: no named parameters.

list_commentsList CommentsD

Get All

Inputs: page, orderBy, perPage, queryFilter, +4 more. Returns: object

list_explore_groups_by_group_slug_cookbooksList Explore Groups By Group Slug CookbooksD

Get All

Inputs: group_slug (required), page, search, orderBy, +6 more. Returns: object

list_explore_groups_by_group_slug_foodsList Explore Groups By Group Slug FoodsD

Get All

Inputs: group_slug (required), page, search, orderBy, +6 more. Returns: object

list_explore_groups_by_group_slug_householdsList Explore Groups By Group Slug HouseholdsD

Get All

Inputs: group_slug (required), page, orderBy, perPage, +5 more. Returns: object

list_explore_groups_by_group_slug_organizers_categoriesList Explore Groups By Group Slug Organizers CategoriesD

Get All

Inputs: group_slug (required), page, search, orderBy, +6 more. Returns: object

list_explore_groups_by_group_slug_organizers_tagsList Explore Groups By Group Slug Organizers TagsD

Get All

Inputs: group_slug (required), page, search, orderBy, +6 more. Returns: object

list_explore_groups_by_group_slug_organizers_toolsList Explore Groups By Group Slug Organizers ToolsD

Get All

Inputs: group_slug (required), page, search, orderBy, +6 more. Returns: object

list_explore_groups_by_group_slug_recipesList Explore Groups By Group Slug RecipesD

Get All

Inputs: group_slug (required), page, tags, foods, +16 more. Returns: object

list_explore_groups_by_group_slug_recipes_suggestionsList Explore Groups By Group Slug Recipes SuggestionsD

Suggest Recipes

Inputs: group_slug (required), foods, limit, tools, +11 more. Returns: object

list_foodsList FoodsD

Get All

Inputs: page, search, orderBy, perPage, +5 more. Returns: object

list_foods_emptyList Foods EmptyB

Returns a list of foods that are not used by any recipe

Inputs: accept-language. Returns: object

list_groups_ai_providers_promptsList Groups Ai Providers PromptsD

Get Ai Prompts

Inputs: accept-language. Returns: object

list_groups_ai_providers_settingsList Groups Ai Providers SettingsC

Get Ai Provider Settings

Inputs: accept-language. Returns: object

list_groups_householdsList Groups HouseholdsC

Get All Households

Inputs: page, orderBy, perPage, queryFilter, +4 more. Returns: object

list_groups_labelsList Groups LabelsD

Get All

Inputs: page, search, orderBy, perPage, +5 more. Returns: object

list_groups_labels_emptyList Groups Labels EmptyB

Returns a list of labels that are not used by any food or shopping list item

Inputs: accept-language. Returns: object

list_groups_membersList Groups MembersB

Returns all users belonging to the current group

Inputs: page, orderBy, perPage, queryFilter, +4 more. Returns: object

list_groups_preferencesList Groups PreferencesC

Get Group Preferences

Inputs: accept-language. Returns: object

list_groups_reportsList Groups ReportsD

Get All

Inputs: report_type, accept-language. Returns: object

list_groups_selfList Groups SelfB

Returns the Group Data for the Current User

Inputs: accept-language. Returns: object

list_groups_storageList Groups StorageC

Get Storage

Inputs: accept-language. Returns: object

list_households_cookbooksList Households CookbooksD

Get All

Inputs: page, orderBy, perPage, queryFilter, +4 more. Returns: object

list_households_events_notificationsList Households Events NotificationsD

Get All

Inputs: page, orderBy, perPage, queryFilter, +4 more. Returns: object

list_households_invitationsList Households InvitationsC

Get Invite Tokens

Inputs: accept-language. Returns: object

list_households_mealplansList Households MealplansD

Get All

Inputs: page, orderBy, perPage, end_date, +7 more. Returns: object

list_households_mealplans_icalList Households Mealplans IcalB

Returns the token for the household's meal plan iCal feed, or null if the feed is disabled

Inputs: accept-language. Returns: object

list_households_mealplans_rulesList Households Mealplans RulesD

Get All

Inputs: page, orderBy, perPage, queryFilter, +4 more. Returns: object

list_households_mealplans_todayList Households Mealplans TodayC

Get Todays Meals

Inputs: accept-language.

list_households_membersList Households MembersC

Returns all users belonging to the current household

Inputs: page, orderBy, perPage, queryFilter, +4 more. Returns: object

list_households_preferencesList Households PreferencesD

Get Household Preferences

Inputs: accept-language. Returns: object

list_households_recipe_actionsList Households Recipe ActionsD

Get All

Inputs: page, orderBy, perPage, queryFilter, +4 more. Returns: object

list_households_selfList Households SelfC

Returns the Household Data for the Current User

Inputs: accept-language. Returns: object

list_households_shopping_itemsList Households Shopping ItemsD

Get All

Inputs: page, orderBy, perPage, queryFilter, +4 more. Returns: object

list_households_shopping_listsList Households Shopping ListsD

Get All

Inputs: page, orderBy, perPage, queryFilter, +4 more. Returns: object

list_households_statisticsList Households StatisticsD

Get Statistics

Inputs: accept-language. Returns: object

list_households_webhooksList Households WebhooksD

Get All

Inputs: page, orderBy, perPage, queryFilter, +4 more. Returns: object

list_media_docker_validate_txtList Media Docker Validate TxtC

Get Validation Text

Inputs: no named parameters.

list_organizers_categoriesList Organizers CategoriesC

Returns a list of available categories in the database

Inputs: page, search, orderBy, perPage, +5 more. Returns: object

list_organizers_categories_emptyList Organizers Categories EmptyA

Returns a list of categories that do not contain any recipes

Inputs: accept-language. Returns: object

list_organizers_tagsList Organizers TagsC

Returns a list of available tags in the database

Inputs: page, search, orderBy, perPage, +5 more. Returns: object

list_organizers_tags_emptyList Organizers Tags EmptyA

Returns a list of tags that do not contain any recipes

Inputs: accept-language.

list_organizers_toolsList Organizers ToolsD

Get All

Inputs: page, search, orderBy, perPage, +5 more. Returns: object

list_organizers_tools_emptyList Organizers Tools EmptyB

Returns a list of tools that are not used by any recipe

Inputs: accept-language. Returns: object

list_recipesList RecipesD

Get All

Inputs: page, tags, foods, tools, +15 more. Returns: object

list_recipes_bulk_actions_exportList Recipes Bulk Actions ExportD

Get Exported Data

Inputs: accept-language. Returns: object

list_recipes_bulk_actions_export_by_export_downloadList Recipes Bulk Actions Export By Export DownloadC

Returns a token to download a file

Inputs: export_id (required), accept-language.

list_recipes_by_slug_commentsList Recipes By Slug CommentsC

Get all comments for a recipe

Inputs: slug (required), accept-language. Returns: object

list_recipes_by_slug_exportsList Recipes By Slug ExportsC

Parameters

template_name: The name of the template to use to use in the exports listed. Template type will automatically be set on the backend. Because of this, it's important that your templates have unique names. See available names and formats in the /api/recipes/exports endpoint.

Inputs: slug (required), template_name (required), accept-language.

list_recipes_exportsList Recipes ExportsC

Get Recipe Formats And Templates

Inputs: accept-language. Returns: object

list_recipes_shared_by_token_zipList Recipes Shared By Token ZipB

Get a recipe and its original image as a Zip file

Inputs: token_id (required).

list_recipes_suggestionsList Recipes SuggestionsD

Suggest Recipes

Inputs: foods, limit, tools, orderBy, +10 more. Returns: object

list_recipes_timeline_eventsList Recipes Timeline EventsD

Get All

Inputs: page, orderBy, perPage, queryFilter, +4 more. Returns: object

list_shared_recipesList Shared RecipesD

Get All

Inputs: recipe_id, accept-language. Returns: object

list_unitsList UnitsD

Get All

Inputs: page, search, orderBy, perPage, +5 more. Returns: object

list_users_by_id_favoritesList Users By Id FavoritesC

Get user's favorited recipes

Inputs: id (required), accept-language. Returns: object

list_users_by_id_ratingsList Users By Id RatingsC

Get user's rated recipes

Inputs: id (required), accept-language. Returns: object

list_users_selfList Users SelfB

Get Logged In User

Inputs: accept-language. Returns: object

list_users_self_favoritesList Users Self FavoritesC

Get Logged In User Favorites

Inputs: accept-language. Returns: object

list_users_self_ratingsList Users Self RatingsC

Get Logged In User Ratings

Inputs: accept-language. Returns: object

list_utils_downloadList Utils DownloadB

Uses a file token obtained by an active user to retrieve a file from the operating system.

Inputs: token.

patch_recipesPatch RecipesD

Patch Many

Inputs: body (required), accept-language.

patch_recipes_by_slugPatch Recipes By SlugC

Updates a recipe by existing slug and data.

Inputs: slug__path (required), id, name, slug, +33 more.

patch_recipes_by_slug_last_madePatch Recipes By Slug Last MadeC

Update a recipe's last made timestamp

Inputs: slug (required), timestamp (required), accept-language.

update_admin_groups_by_group_ai_providers_prompts_by_proUpdate Admin Groups By Group Ai Providers Prompts By ProB

Append to or override a prompt. The group-wide instructions (global) can only be appended.

Inputs: mode (required), content (required), group_id (required), prompt_name (required), +1 more. Returns: object

update_admin_groups_by_group_ai_providers_providers_by_pUpdate Admin Groups By Group Ai Providers Providers By PC

Update Ai Provider

Inputs: name (required), model (required), group_id (required), provider_id (required), +6 more. Returns: object

update_admin_groups_by_itemUpdate Admin Groups By ItemD

Update One

Inputs: id (required), name (required), item_id (required), preferences, +2 more. Returns: object

update_admin_households_by_itemUpdate Admin Households By ItemD

Update One

Inputs: id (required), name (required), groupId (required), item_id (required), +2 more. Returns: object

update_admin_users_by_itemUpdate Admin Users By ItemD

Update One

Inputs: id (required), email (required), group (required), groupId (required), +19 more. Returns: object

update_comments_by_itemUpdate Comments By ItemD

Update One

Inputs: id (required), text (required), item_id (required), accept-language. Returns: object

update_foods_by_itemUpdate Foods By ItemD

Update One

Inputs: name (required), item_id (required), id, extras, +7 more. Returns: object

update_foods_mergeUpdate Foods MergeD

Merge One

Inputs: toFood (required), fromFood (required), accept-language. Returns: object

update_groups_ai_providers_prompts_by_prompt_nameUpdate Groups Ai Providers Prompts By Prompt NameA

Append to or override a prompt. The group-wide instructions (global) can only be appended.

Inputs: mode (required), content (required), prompt_name (required), accept-language. Returns: object

update_groups_ai_providers_providers_by_providerUpdate Groups Ai Providers Providers By ProviderC

Update Ai Provider

Inputs: name (required), model (required), provider_id (required), apiKey, +5 more. Returns: object

update_groups_ai_providers_settingsUpdate Groups Ai Providers SettingsD

Update Ai Provider Settings

Inputs: audioProviderId (required), imageProviderId (required), defaultProviderId (required), accept-language. Returns: object

update_groups_labels_by_itemUpdate Groups Labels By ItemD

Update One

Inputs: id (required), name (required), groupId (required), item_id (required), +2 more. Returns: object

update_groups_preferencesUpdate Groups PreferencesD

Update Group Preferences

Inputs: privateGroup, accept-language, showAnnouncements. Returns: object

update_households_cookbooksUpdate Households CookbooksC

Update Many

Inputs: body (required), accept-language. Returns: object

update_households_cookbooks_by_itemUpdate Households Cookbooks By ItemD

Update One

Inputs: name (required), item_id (required), slug, public, +4 more. Returns: object

update_households_events_notifications_by_itemUpdate Households Events Notifications By ItemD

Update One

Inputs: id (required), name (required), groupId (required), item_id (required), +5 more. Returns: object

update_households_mealplans_by_itemUpdate Households Mealplans By ItemD

Update One

Inputs: id (required), date (required), userId (required), groupId (required), +7 more. Returns: object

update_households_mealplans_rules_by_itemUpdate Households Mealplans Rules By ItemD

Update One

Inputs: item_id (required), day, entryType, accept-language, +1 more. Returns: object

update_households_permissionsUpdate Households PermissionsD

Set Member Permissions

Inputs: userId (required), canInvite, canManage, canOrganize, +2 more. Returns: object

update_households_preferencesUpdate Households PreferencesD

Update Household Preferences

Inputs: recipePublic, firstDayOfWeek, accept-language, privateHousehold, +6 more. Returns: object

update_households_recipe_actions_by_itemUpdate Households Recipe Actions By ItemD

Update One

Inputs: url (required), groupId (required), item_id (required), actionType (required), +2 more. Returns: object

update_households_shopping_itemsUpdate Households Shopping ItemsD

Update Many

Inputs: body (required), accept-language. Returns: object

update_households_shopping_items_by_itemUpdate Households Shopping Items By ItemD

Update One

Inputs: item_id (required), shoppingListId (required), food, note, +12 more. Returns: object

update_households_shopping_lists_by_itemUpdate Households Shopping Lists By ItemD

Update One

Inputs: id (required), userId (required), groupId (required), item_id (required), +6 more. Returns: object

update_households_shopping_lists_by_item_label_settingsUpdate Households Shopping Lists By Item Label SettingsD

Update Label Settings

Inputs: body (required), item_id (required), accept-language. Returns: object

update_households_webhooks_by_itemUpdate Households Webhooks By ItemD

Update One

Inputs: item_id (required), scheduledTime (required), url, name, +3 more. Returns: object

update_organizers_categories_by_itemUpdate Organizers Categories By ItemC

Updates an existing Tag in the database

Inputs: name (required), item_id (required), accept-language. Returns: object

update_organizers_tags_by_itemUpdate Organizers Tags By ItemC

Updates an existing Tag in the database

Inputs: name (required), item_id (required), accept-language. Returns: object

update_organizers_tools_by_itemUpdate Organizers Tools By ItemD

Update One

Inputs: name (required), item_id (required), accept-language, householdsWithTool. Returns: object

update_recipesUpdate RecipesD

Update Many

Inputs: body (required), accept-language.

update_recipes_by_slugUpdate Recipes By SlugC

Updates a recipe by existing slug and data.

Inputs: slug__path (required), id, name, slug, +33 more.

update_recipes_by_slug_imageUpdate Recipes By Slug ImageC

Update Recipe Image

Inputs: slug (required), image (required), extension (required), accept-language. Returns: object

update_recipes_timeline_events_by_itemUpdate Recipes Timeline Events By ItemD

Update One

Inputs: item_id (required), subject (required), image, eventMessage, +1 more. Returns: object

update_recipes_timeline_events_by_item_imageUpdate Recipes Timeline Events By Item ImageC

Update Event Image

Inputs: image (required), item_id (required), extension (required), accept-language. Returns: object

update_units_by_itemUpdate Units By ItemD

Update One

Inputs: name (required), item_id (required), id, extras, +10 more. Returns: object

update_units_mergeUpdate Units MergeD

Merge One

Inputs: toUnit (required), fromUnit (required), accept-language. Returns: object

update_users_by_itemUpdate Users By ItemD

Update User

Inputs: email (required), item_id (required), id, admin, +13 more.

update_users_passwordUpdate Users PasswordC

Resets the User Password

Inputs: newPassword (required), accept-language, currentPassword.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelogโ€ฆ

    TDQS

    D1.9/5.0

    Scored across 283 tools

    Disambiguation2/5

    Many tools are near-duplicates of one another: `list_groups_ai_providers_prompts`, `list_admin_groups_by_group_ai_providers_prompts`, and `list_admin_groups_by_group_ai_providers_providers_by_prov` all appear to fetch AI prompts/providers, and the same pattern repeats for categories, tags, tools, foods, and households across admin/group/explore scopes. Descriptions are almost uniformly generic ('Get One', 'Get All', 'Create One'), so an agent gets no help in choosing between the household, group, and admin variants. Several names are truncated mid-word ('_by_prov', '_by_recip', 'categories_b'), making the intended target impossible to infer from the name alone.

    Naming Consistency2/5

    There is a recognizable verb prefix convention (list_/get_/create_/update_/delete_/patch_), which saves this from being chaotic. However, names are literal renderings of URL paths, producing 60+ character identifiers that are truncated at arbitrary points, and at least one tool (`create_households_shopping_lists_by_item_recipe_by_rec_2`) has a numeric disambiguation suffix, which is a naming failure. Nearly duplicate names differing only in scope prefix make length-based confusion likely.

    Tool Count1/5

    283 tools is an extreme mismatch for what is essentially one recipe-management application; it is a wholesale 1:1 mirror of the Mealie OpenAPI spec. Dozens of tools exist only because admin, group, and explore path variants were each generated separately. An agent cannot practically select from a surface this size without heavy filtering.

    Completeness4/5

    As a full API mirror, the surface covers essentially every lifecycle operation in the domain: recipe CRUD, bulk actions, imports/scraping, organizers, meal plans, shopping lists, households, users, auth, backups, and media. The redundancy across scopes actually guarantees no capability is missing, though it is far more than complete rather than efficiently complete.

    Maintenance

    ActivityNo data
    ResponsivenessOutdated data

    Related MCP Connectors

    Related MCP Servers

    • A
      license
      Not graded
      quality
      D
      maintenance
      Enables AI assistants to interact with Mealie for recipe management, meal planning, and shopping list operations. Supports searching and managing recipes, creating meal plans, and generating shopping lists from recipes or meal plans.
      7
      MIT
    • A
      license
      A
      quality
      C
      maintenance
      Enables AI assistants to manage recipes, meal plans, and shopping lists in Mealie through natural language, supporting CRUD operations and URL-based recipe imports.
      27
      480 npm
      8
      MIT