Skip to main content
Glama

School meal menu

get_meals
Read-onlyIdempotent

School meal menu (breakfast/lunch/dinner) for a day, this week, next week or this month, with calories, macronutrients and allergens per dish. Pass the user's allergies to flag dishes that contain them. No meals on weekends and school holidays.

Input Schema

NameRequiredDescriptionDefault
dateNoDate as YYYY-MM-DD or YYYYMMDD (Korea time). Omit for today.
mealNoOnly this meal. Most schools serve lunch only.
rangeNoInstead of one day: this week (Mon–Fri), next week, or this month
eduCodeYesOffice of education code from search_schools, e.g. 'B10'
allergiesNoAllergies to flag, in English or Korean, e.g. ['milk', 'peanut'] or ['우유', '땅콩']. 19 Korean standard allergens.
schoolCodeYesSchool code from search_schools, e.g. '7010082'

Schema Changelog

Changes observed during successful MCP inspections.

  1. 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 readOnly/idempotent/non-destructive behavior, and the description adds real context beyond them: weekend/holiday gaps in coverage and the flagging semantics of the allergies input. It stops short of describing response shape or what happens when a date falls on a holiday, which would be the final increment.

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?

Three short sentences with zero filler; the resource and its scopes come first, the allergy behavior second, and the availability constraint last. Nothing is redundant with the title.

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 no output schema, the description usefully discloses what each dish carries (calories, macros, allergens). For a read-only lookup tool this is nearly complete; only the behavior on holidays or empty ranges is left implicit.

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 all six parameters are already documented in detail (date formats, enums, code sources, allergy list). The description restates the allergy-flagging behavior and date scopes but adds no syntax or format detail beyond the schema, so the baseline 3 applies.

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?

States a specific verb+resource (school meal menu for breakfast/lunch/dinner) plus the time scopes it supports and the data fields returned (calories, macronutrients, allergens). This is clearly distinct from siblings like get_schedule, get_timetable, and get_school_info.

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?

Gives actionable use context: pass the user's allergies to flag matching dishes, and note that there are no meals on weekends or school holidays. It does not explicitly route the agent between siblings (e.g., when to prefer get_timetable instead), but the resource boundary is obvious enough that this is a minor gap.

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