Skip to main content
Glama
Crawlora-org

Crawlora MCP

Official

subway_menu

Retrieve a Subway store's complete menu with prices, nutrition facts, and allergen details for every product and size. Requires a store ID from the store lookup endpoint.

Instructions

Get one Subway store's full menu. Returns one Subway store's complete menu: every category, every product, and for each purchasable size (Footlong, 6-inch, etc.) its price, full nutrition panel (calories, fat, sodium, protein and more) and allergen disclosures. Store IDs come from a GET /subway/store result's store_id field. This endpoint currently covers US stores only: the upstream menu route it reads is not served for non-US stores, which return 404 -- see GET /subway/combos for the bundle/combo categories that are available in other markets. Categories carry is_main_category: true for human-browsable menu sections (Sandwiches, Drinks, Salads, ...) and false for Subway's own internal build/customization groupings, which are included for completeness but are not meant to be shown as menu sections on their own.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
store_idYesStore ID from a /subway/store result's store_id

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv1.16.2

TDQS

A4.6/5.0
Behavior4/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure. It discloses the US-only limitation, the 404 behavior for non-US stores, and the meaning of is_main_category (including that internal groupings are included but not meant to be shown as menu sections). This is substantial behavioral context beyond a simple 'get menu' statement. It doesn't mention pagination or response size, but for a single-store menu endpoint, the disclosed behaviors are quite thorough.

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

Conciseness4/5

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

The description is a single, information-dense paragraph that front-loads the core purpose ('Get one Subway store's full menu') before diving into details. Every sentence adds value: scope, contents, store ID source, US-only limitation, alternative tool, and is_main_category semantics. It's slightly long but each clause earns its place, and the structure is logical.

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

Completeness5/5

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

For a single-parameter tool with no output schema, the description is remarkably complete. It tells the agent what the tool returns (full menu with categories, products, prices, nutrition, allergens), how to get the required parameter, when it fails (non-US stores return 404), what alternative to use, and how to interpret a potentially confusing field (is_main_category). There's no output schema, so the description's detailed enumeration of return contents is essential and well-provided.

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% (store_id is described as 'Store ID from a /subway/store result's store_id'). The description reinforces this by stating 'Store IDs come from a GET /subway/store result's store_id field.' This adds a clear provenance for the parameter, which is valuable beyond the schema's own description. With full schema coverage and a single parameter, the description adds meaningful context about where to obtain the value.

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 clearly states the tool's function: 'Get one Subway store's full menu' and enumerates exactly what is included (every category, product, price, nutrition panel, allergen disclosures). It also distinguishes itself from sibling tools like subway_combos and subway_store by specifying the source of store IDs and the US-only limitation.

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

Usage Guidelines5/5

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

The description explicitly states when to use this tool (for a single store's full menu) and provides an alternative (GET /subway/combos for non-US bundle/combo categories). It also clarifies the US-only scope and the 404 behavior for non-US stores, which is critical for an agent deciding between tools.

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

Install Server

Other Tools