Skip to main content
Glama

UPFRONT tickets

find_ticket_groups
Read-onlyIdempotent

UPFRONT's own listings for one event that can be bought now, cheapest first. event_id is UPFRONT's event id (eventId in event results); this does not search by name or place.

quantity: the exact number of tickets needed together ("for two people" is 2). When set, only listings that sell that many as ONE group are returned; two separate listings can't be combined into one group. max_price/min_price: the per-ticket price in dollars, fees included. max_total_price: the budget for the whole group, in dollars, as the user stated it ("$200 for two" is 200). Needs quantity; UPFRONT works out the per-ticket limit from it. section: a section name or number ("112", "Floor", "Mezzanine"): only that section's listings. limit: how many listings to return (default 10, at most 25). eticket_only / instant_download_only: only listings with that delivery method. min_days_before_event / max_days_before_event: only listings released within that window before the event ("last-minute").

Returns:

  • totalListings, lowestAllInPrice, highestAllInPrice: across every listing matching the filters, not only those returned.

  • listings: the cheapest matches, each with section, row, allInPrice (per ticket, every fee included), totalAllInPrice (the group's price, when quantity is set), quantities (how many can be bought together from this listing), notes, standardSection, deliveryMethods and url.

  • moreListings: how many matched but weren't returned. Parking-only listings are left out, except on a parking event, where every listing is a parking pass.

notes (what the seller wrote, e.g. "Obstructed view") and standardSection (UPFRONT's name for the section, when matched) are the only view or location signals on a listing; there is no view-quality score. When they say nothing, no view information is available for that listing. Distance, height, cover and a picture of the view come from UPFRONT's section facts, at venues with an UPFRONT seating chart.

url is the link to buy exactly that listing (section, row and quantity) on UPFRONT; it is null only when the listing can't be bought.

{"error": "search_failed"} means the lookup failed after retries, not that no tickets exist. An empty listings list with no error means nothing matched the filters passed; it says nothing about why.

Input Schema

NameRequiredDescriptionDefault
limitNo
sectionNo
event_idYes
quantityNo
max_priceNo
min_priceNo
eticket_onlyNo
max_total_priceNo
instant_download_onlyNo
max_days_before_eventNo
min_days_before_eventNo

Output Schema

NameRequiredDescriptionDefault
errorNo
listingsYes
quantityNo
moreListingsYes
totalListingsYes
lowestAllInPriceYes
highestAllInPriceYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A5/5.0
Behavior5/5

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

Annotations already declare read-only, idempotent, non-destructive, and closed-world behavior. The description adds substantial context: grouping semantics for quantity, fee-inclusive pricing, error behavior, parking exclusion, and view/location signals available on listings.

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?

The description is long but appropriately sized for 11 parameters and nuanced return behavior. It is front-loaded with purpose and sorting behavior, then organized into parameter and return-value sections with no filler.

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?

Despite a separate output schema, the description adds important operational context about return values, error semantics, parking handling, and view information. Everything an agent needs to invoke and interpret the tool is present.

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

Parameters5/5

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

Schema description coverage is 0%, so the description carries the full burden and does so thoroughly. It explains every parameter's meaning, units, dependencies, grouping constraints, and defaults, including that max_total_price requires quantity.

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 specifically that this returns UPFRONT's own listings for one event, sorted cheapest first, and explicitly says it does not search by name or place. This distinguishes it from find_events and the other sibling tools.

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?

Explains that event_id comes from event results and that this tool cannot be used to search by name or place. It also clarifies the parking-only exception and how to interpret an empty result versus a search_failed error.

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