Skip to main content
Glama

Search dishes

search_dishes
Read-onlyIdempotent

Search 1,956 dishes from 26 cuisines by text, country, category, preparation technique, or canonical ingredient. Every ingredient in the corpus is linked to a canonical entity, so an ingredient filter also catches translations and spelling variants. Use it to get a slug for the other tools.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
formNoPreparation technique. One of: soup, stew, stir-fry, grill-roast, fritter, dumpling, stuffed-vegetable, flatbread-pastry, noodle, rice, cold-salad, dip-spread, pickle-ferment, egg, sandwich-wrap, porridge-mash, casserole-bake, cured-preserved, composed-plate, meat-salad, pancake-batter, marinated-cooked, syrup-pastry, fried-dough-sweet, cake, cookie, custard-pudding, sweet-pie-tart, fruit-dessert, frozen, confection, sweet-porridge, glutinous-dumpling, sweet-bread, layered-assembly, filled-pastry, sweet-pancake, starch-gel, hot-infusion, cold-cooler, juice, smoothie-shake, hot-milk-drink, fermented-drink, alcoholic-mixed, alcoholic-brew.
langNoLanguage for titles, ingredient names and URLs.en
limitNoResults per page (max 25).
queryNoFree text; needs at least 2 characters to take effect.
offsetNoRows to skip for paging. Pass back the `next_offset` from the previous response; it is null when there is no further page.
countryNoISO 3166-1 alpha-2 cuisine filter.
categoryNoDish type. DRINK covers both alcoholic and non-alcoholic; DESSERT is separate from FOOD, so a query for a sweet dish returns nothing under FOOD.
ingredientsNoCanonical ingredient names (e.g. ["tomato","garlic"]). A dish matches if it has ANY of them, but results are ranked by how many it has. Unrecognised names are reported back, not ignored.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
itemsYes
notesYes
totalYes
offsetYes
attributionYes
next_offsetYes
unresolved_ingredientsYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed3 schema fields changed
    • addedInput schema / properties / category / description
      Added value: +"Dish type. DRINK covers both alcoholic and non-alcoholic; DESSERT is separate from FOOD, so a query for a sweet dish returns nothing under FOOD."
    • addedInput schema / properties / limit / description
      Added value: +"Results per page (max 25)."
    • addedInput schema / properties / offset / description
      Added value: +"Rows to skip for paging. Pass back the `next_offset` from the previous response; it is null when there is no further page."
  2. First observed

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true and idempotentHint=true, so the safety profile is covered. The description adds valuable behavioral context: canonical ingredient linking catches translations/variants, unrecognized ingredients are reported back, and category semantics (DRINK covers both, DESSERT separate from FOOD) are disclosed. This goes beyond the annotations and helps the agent predict behavior.

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

Conciseness5/5

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

The description is two sentences with zero waste. The first sentence front-loads the core purpose and scope, and the second adds the key behavioral nuance and the practical use case (getting a slug). Every sentence earns its place.

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

Completeness4/5

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

For a search tool with 8 parameters, 100% schema coverage, and an output schema, the description is largely complete. It covers the main search dimensions, the canonical ingredient behavior, and the slug use case. It doesn't mention pagination or the next_offset field, but the schema already documents that, so the description need not repeat it. A 4 is fair given the richness of the schema and annotations.

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 description coverage is 100%, so the schema already documents all 8 parameters. The description adds a few semantic details not in the schema: the canonical ingredient matching behavior and the category note about DESSERT vs FOOD. However, most parameter meaning is already in the schema, so the description's added value is moderate. Baseline 3 is appropriate.

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?

The description states a specific verb ('Search'), a precise resource ('1,956 dishes from 26 cuisines'), and enumerates the search dimensions (text, country, category, preparation technique, canonical ingredient). It also distinguishes itself from siblings by noting it returns a slug for other tools, which is a clear differentiator.

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

Usage Guidelines4/5

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

The description gives clear context on when to use this tool: to search dishes and get a slug for other tools. It does not explicitly name alternatives or state when not to use it, but the sibling list and the slug mention imply its role as the entry point. A 4 is appropriate because the usage context is clear but exclusions are not explicit.

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