Skip to main content
Glama
Canada's Food Guide MCP Server

Canada's Food Guide MCP Server

Scale Recipe Servings

scale_recipe_servings

Adjust ingredient quantities to match a target serving count while preserving recipe proportions for different household sizes, events, or meal prep.

Instructions

Scale all ingredients in a recipe to match a target number of servings.

This tool calculates new ingredient amounts when you want to make more or fewer servings of a recipe. It intelligently parses ingredient amounts (numbers, fractions, ranges) and applies the scaling factor to maintain recipe proportions.

REMEMBER! Always share recipe url, and image_url, and title with users before returning full recipe details. This allows them to see the source and context of the recipe. REMEMBER! Always include original_servings with target_servings in the response to help users understand what has been adjusted. REMEMBER! Scaled recipes cooking times may vary, so users should check for doneness and adjust as needed.

The scaling process:

  • Calculates scale factor based on original vs target servings

  • Parses ingredient amounts from text (handles fractions, decimals, ranges)

  • Applies scaling to all measurable ingredients

  • Preserves units and ingredient names

  • Updates the recipe data with scaled amounts

Use this tool when:

  • Cooking for more or fewer people than the original recipe

  • Meal prepping larger batches

  • Adjusting recipes for different household sizes

  • Planning party or event cooking

  • Reducing recipe size for testing

Input Schema

NameRequiredDescriptionDefault
serving_inputYesContains session_id, recipe_id, and target_servings number. Target servings must be greater than 0.

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv3.0.0

TDQS

A3.7/5.0
Behavior4/5

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

With no annotations, the description carries the full burden and does disclose real behavior: it computes a scale factor from original vs target servings, parses numbers, fractions and ranges, preserves units and names, and 'updates the recipe data with scaled amounts', which signals mutation of stored recipe state. It does not cover failure modes (unparseable amounts), permission/auth needs, or reversibility, which is why it stops short of a 5.

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

Conciseness3/5

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

The first sentence is well front-loaded and the 'scaling process' bullets are scannable, but the content is padded: the scaling-process list largely restates the opening paragraph, and three shouted 'REMEMBER!' lines mix output-formatting policy and a cooking disclaimer into a tool definition. The use-case bullets could be compressed to one sentence.

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

Completeness3/5

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

An output schema exists and the single nested parameter is fully documented, so return values need no explanation. What is missing is sibling routing against scale_multiple_ingredients / compare_recipe_servings and any note on where the scaled result is persisted, which matters for a mutation-flavored tool in a crowded recipe toolset.

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 recipe_id, session_id and target_servings are already documented in the schema, including the greater-than-zero constraint. The description adds no syntax or semantics beyond the mention that original_servings should accompany target_servings in the response; baseline 3 applies when the schema does the heavy lifting.

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?

The opening sentence gives a specific verb and resource with scope: scale ALL ingredients in a recipe to a target serving count. The word 'all' implicitly separates it from siblings like scale_individual_ingredient and scale_multiple_ingredients, but those siblings are never named, so the agent must infer the boundary.

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 'Use this tool when' block lists five concrete scenarios (cooking for more/fewer people, meal prep, household size, event planning, reducing for testing), which is clear positive guidance. It never states when NOT to use it or which sibling to prefer when only some ingredients need scaling, so the routing decision against scale_multiple_ingredients is left open.

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