Skip to main content
Glama

Analyze a recipe

analyze_recipe
Read-onlyIdempotent

Totals one dish from its ingredient list and reports it per serving.

Ingredient quantities are for the whole dish, as a recipe states them. per_serving divides by servings, whole_recipe holds the undivided totals, and the assessment covers one serving.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "name": "<name>",
      "ingredients": "<ingredients>"
    },
    "name": "analyze_recipe"
  }
}

Input Schema

NameRequiredDescriptionDefault
nameYesDish name, e.g. Moussaka.
servingsNoServings the recipe yields. Defaults to 1.
ingredientsYesIngredients, each with a food name or fdc_id and a portion or grams, e.g. {"food": "eggplant", "portion": "2 medium"}.

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint, non-destructive and closed-world, so the safety profile is covered. The description adds real context beyond them: input quantities are whole-dish as written in the recipe, and the assessment output is expressed per serving rather than per dish. It does not mention failure modes, such as an unresolvable ingredient name or portion string.

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?

Four short sentences, zero filler, with the core operation front-loaded and the serving-vs-whole-dish distinction immediately after. Every line carries information an agent needs.

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?

With an output schema present, the description need not enumerate return fields, and it correctly focuses on the dish/serving semantics that the schema cannot express. What remains thin is behavior on unresolvable or ambiguous ingredients (name vs fdc_id vs portion vs grams), which matters given a 400-item ingredient array.

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 name, servings, and the ingredient object fields, making 3 the baseline. The description adds one genuinely useful clarification: the servings parameter is the divisor for per_serving and is not applied to whole_recipe, which resolves a real ambiguity. It says nothing about grams-versus-portion precedence or fdc_id versus food name, which the schema only lightly hints at.

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

Purpose4/5

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

"Totals one dish from its ingredient list and reports it per serving" gives a concrete verb (totals), a concrete resource (one dish's ingredient list), and a scope (per serving) that distinguishes it from a meal- or plan-level analyzer. It stops short of naming the sibling it differs from, so an agent must infer that analyze_meal handles multiple dishes.

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

Usage Guidelines3/5

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

The phrase "one dish" implies the single-recipe use case and implicitly contrasts with broader meal/plan analysis, but there is no explicit when-to-use or when-not-to-use statement and no named alternative. The agent can infer the fit, but the definition does not route it.

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