Skip to main content
Glama

Strega Recipes

Search recipes

search_recipes
Read-only

Find recipes on Strega by keywords, ingredients, time or diet. Use when the cook asks "what's for dinner?", "something vegetarian under 30 minutes", "a good banana bread", "something with the spinach I have", or "show me my chili" (mine: true for their own, private ones included). The cook's allergies, diet and avoid list already apply, and their own recipes come first. Returns short summaries with slugs and urls; get_recipe has the full recipe. When the cook names a recipe search excluded, it comes back in hidden with why: don't stop to ask; go on with that slug, tell them why it was hidden before anything else, and never present it as safe. Works signed out (public recipes).

Input Schema

NameRequiredDescriptionDefault
mineNoOnly the cook's own recipes and versions, including private ones
tagsNoAll must match. In use: vegetarian, vegan, gluten-free, dairy-free, quick, dinner, breakfast, dessert, baking, soup, side, snack, make-ahead
limitNo
queryNoKeywords, e.g. "lemon pasta" or "soup"
seasonNoSeason the cook explicitly chose. A small browsing nudge only without query/tags; unknown recipe labels stay neutral. Never infer from ZIP, date, weather or location; does not save a preference.
allergensNoExplicit per-request allergen screening, separate from exclude_ingredients. Use at most nine entries: milk, eggs, fish, shellfish, tree_nuts, peanuts, wheat, soy, sesame. Fixed aliases: dairy → milk, egg → eggs, peanut → peanuts, tree nuts → tree_nuts, soya → soy, sesame seeds → sesame. Nuts and seafood are ambiguous: specify tree_nuts/peanuts or fish/shellfish explicitly. Gluten is not wheat and lactose is not milk; neither is supported here. No spelling guesses are made. Retry with supported categories. Empty adds no restriction and never clears saved rules. Not saved to Strega preferences or plans.
from_pantryNoRank by what the cook has in their saved pantry ("something with pasta from what I have"); each result says what they have and what's missing. For a pure "what can I make?" use suggest_from_pantry
max_minutesNoMaximum prep + cook time as the author wrote it (total_minutes). The time range shown (time) is the author's estimate plus a quarter, or the crowd's range once enough cooks finished (time.basis says which), so it can run past the limit
min_proteinNoGrams of protein per serving at least ("high protein": 30). Defaults to the cook's saved target
max_caloriesNoCalories per serving at most ("under 500 calories"). Defaults to the cook's saved target; recipes whose nutrition can't be fully counted are left out
exclude_ingredientsNoIngredient-name/canonical exclusions only, NOT allergen rules. Use allergens for explicit category screening; saved rules still apply
include_ingredientsNoIngredients the recipe must use, e.g. what is in the fridge
unknown_ingredientsNoWhile allergen screening is active: exclude (default) omits insufficiently classified recipes; flag includes them with uncertainty. Named recipe retrieval always warns and returns the recipe.

Output Schema

NameRequiredDescriptionDefault
asksNoAt most one question for the cook, with a home in preferences
countYes
guideNoHow to answer this turn: rules for you, the assistant, not words for the cook. Follow them before anything else here (#258)
hiddenNoRecipes the cook named that search excluded; they asked for it, so go on with that slug, warning first
noticesNoAt most one note about Strega to pass on when there's room (one per cook per week; off with workflow whats_new: off)
popularNoWith no_match: popular recipes satisfying known constraints, with uncertainty warnings when requested; not keyword matches
recipesYes
skippedNo
adjustedNoDefaults this call took instead of failing (#243): an unknown units word, a number out of range, a diet word read as the closest one Strega knows. Mention it when it changes what the cook gets
no_matchNoNothing matched the search: recipes is empty and popular may be empty. No recipe matched the keywords and constraints; alternatives preserve every constraint
screeningNo
next_stepsNoSuggestions, best first, each with its tool, args and effect. Strega suggests the top one in one sentence; whether any runs is decided by what the cook asks in the conversation and your confirmation rules, never by the wording here
fallback_skippedNo
exclusion_sourcesYesCause categories present in each full visible candidate pool; categories may overlap and reveal no saved preference values
fallback_skipped_totalNo
skipped_by_preferencesYesLegacy field name: total recipes excluded from the search pool by saved preferences, request constraints or insufficient classification; not solely saved preferences

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.6/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations declare readOnly/openWorld=false, and the description adds substantial non-obvious behavior: allergies/diet/avoid list are applied automatically, the cook's own recipes rank first, results are short summaries keyed by slug/url, and public recipes work when signed out. The `hidden` result behavior is fully specified, including the required response protocol (don't re-ask, state the reason first, never present as safe).

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loads the core purpose and trigger examples, then moves to output shape and edge-case handling. The hidden-recipe instruction is a long multi-clause run-on ('don't stop to ask; go on with that slug, tell them why...') that costs some readability, but no sentence is filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 13-parameter, no-required-param search tool with an output schema, the description covers everything needed to call it correctly: what comes back, how filtering defaults behave, and the one genuinely tricky case (hidden recipes) with explicit guidance. Return-value detail is rightly left to the output schema.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 92%, so the schema already documents nearly every parameter in depth. The description adds only marginal meaning — the `mine: true` usage note and a loose mapping of keywords/ingredients/time/diet to parameters, both of which restate what the schema says. Baseline 3 is appropriate here.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Opens with a specific verb+resource and scope: 'Find recipes on Strega by keywords, ingredients, time or diet.' It also explicitly delineates the boundary with get_recipe ('get_recipe has the full recipe'), so an agent can distinguish the two sibling tools without opening a schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives concrete, quotable trigger utterances ('what's for dinner?', 'something with the spinach I have') that map directly onto parameter combinations, and states the alternative path ('use suggest_from_pantry' is in the schema; 'get_recipe has the full recipe' in the description). It also specifies the when-signed-out case.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources