Skip to main content
Glama

Publish a restaurant menu on TopFood

create_restaurant_menu

Creates a live, public digital restaurant menu on topfood.app from structured menu data. Returns the public menu URL, a QR code image and a claim link. The menu is immediately visible to anyone with the link. IMPORTANT: always show the user the claim link — it is how the restaurant owner takes ownership of the menu by creating a free TopFood account; unclaimed menus are deleted after the claim link expires. Dish allergen labelling is not supported yet: fold allergen notes into the dish description text.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
menusYesThe menus to publish (e.g. Food, Drinks). Max 400 dishes in total.
restaurantYesThe restaurant the menu belongs to.

TDQS

A4.6/5.0
Behavior5/5

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

Adds significant behavioral context beyond the annotations: menus are immediately public, ownership requires the claim link, unclaimed menus are deleted after expiration, and allergen labelling is unsupported. These are non-obvious side effects and limitations that the annotations (readOnlyHint=false, openWorldHint=true) do not convey.

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 tightly written sentences with no filler. The first sentence states purpose and return values; the second clarifies visibility; the third covers the critical claim-link workflow and a limitation. All content earns its place, and key information is front-loaded.

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?

Since there is no output schema, the description appropriately lists the return values and explains the essential follow-up action (showing the claim link). It covers the main workflow but omits some specifics such as the claim-link validity period and error behavior, though the rich input schema handles structural validation.

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

Parameters4/5

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

Schema description coverage is 100% and the schema already documents every field. The description goes beyond this by instructing how to handle allergen notes within dish descriptions, which is parameter-level guidance not present in the schema. It does not restate existing schema details.

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 opens with a specific action: 'Creates a live, public digital restaurant menu on topfood.app from structured menu data' and lists concrete return values (public menu URL, QR code, claim link). This clearly distinguishes it from the only sibling tool, report_problem, which serves a different purpose.

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 establishes clear context for when to use the tool — publishing a menu from structured data — and includes direct agent guidance ('always show the user the claim link'). It does not explicitly name exclusions or alternatives, but the only sibling (report_problem) is unrelated, so no competing use case is missed.

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.

TDQS

A4.4/5.0
Disambiguation5/5

The two tools have clearly separate purposes: one creates a restaurant menu and the other reports platform issues. There is no overlap or ambiguity in choosing between them.

Naming Consistency5/5

Both tool names use the same snake_case verb_noun pattern: create_restaurant_menu and report_problem. Naming is consistent and predictable.

Tool Count3/5

With only two tools, the server feels very thin, but each tool serves a distinct role: one primary domain operation and one generic feedback channel. It is borderline but not unreasonable for such a narrow purpose.

Completeness2/5

The domain surface only supports creating a menu; there are no tools to list, update, retrieve, or delete menus. Common lifecycle actions would cause obvious agent failures, and the report_problem tool is only a manual fallback rather than a real management operation.

Resources