Skip to main content
Glama

Search venues

search_venues
Read-only

Search Dim Hour's restaurant, bar and venue catalog. Pass city to search one city, or OMIT city to search more than 19,000 venues across every city at once (e.g. 'best ramen anywhere', 'michelin spots'). Returns ranked matches with score (0-100 quality), price tier, neighborhood, happy-hour info, and a dimhour.com link. Free-text query matches each content word individually across cuisine, dish, vibe, and name (filler like 'best' or 'tonight' is ignored) - one strong keyword beats a sentence; combine with filters.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
cityNoCity name or key, e.g. 'NYC', 'dallas'. OMIT to search ALL cities at once.
limitNoMax results, default 10
queryNoFree text; every content word must appear in name, cuisine, neighborhood, tags, dishes, or description (filler like 'best'/'tonight' is ignored). One strong keyword beats a full sentence.
cuisineNoFilter to a cuisine (substring match)
max_priceNoMax price tier 1-4 ($-$$$$)
min_scoreNoMinimum quality score 0-100
iconic_onlyNoOnly 'Iconic 50' venues (NYC has these today)
neighborhoodNoFilter to a neighborhood (substring match)
trending_onlyNoOnly trending venues
awards_containsNoOnly venues whose awards field matches, e.g. 'michelin', 'james beard', 'bib gourmand'
happy_hour_onlyNoOnly venues with happy hour info

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
cityNo
noteNo
scopeNo
venuesYes
showingYes
total_matchesYes

Schema Changelog

Changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. First observed

TDQS

A4/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false, so the safety profile is covered. The description adds meaningful behavioral detail beyond that: query content words are matched individually, filler words are ignored, results are ranked with a 0-100 score, and the response includes price tier, neighborhood, happy-hour info, and a link. No contradiction with annotations.

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 compact: three sentences that front-load the purpose and city behavior, then cover return fields and query strategy. There is no fluff, repetition, or unnecessary restatement of schema details. Every sentence contributes useful information.

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?

For an 11-parameter, all-optional tool, the description covers the essential behaviors: city scoping, query semantics, output contents, and combining filters. The output schema and annotations fill most remaining gaps. It could be more explicit about routing between this tool and the generic 'search' sibling, but an agent has enough context to invoke the tool correctly.

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 the input schema already documents all 11 parameters in detail; the baseline is 3. The description reinforces query matching semantics and provides useful examples, but it does not add substantial per-parameter meaning beyond what the schema already states. It earns some credit for the city behavior and keyword guidance, but not enough to exceed the baseline.

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 description states a specific verb and resource: it searches Dim Hour's restaurant, bar, and venue catalog. It also clarifies the core scoping decision (pass city vs. omit for all venues), which helps an agent understand what the tool targets. It stops short of 5 because it does not explicitly differentiate itself from the generic 'search' sibling.

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 gives clear context for using the tool: pass city to narrow to one city, omit it to search all 19,000+ venues, and use one strong keyword rather than a sentence. It also advises combining with filters. However, it does not mention alternatives or exclusions relative to siblings like 'search' or 'list_*', so it lacks explicit when-not-to-use guidance.

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

A3.8/5.0
Disambiguation2/5

fetch and get_venue both retrieve essentially the same full venue record, differing only by an extra long-form story field. Similarly, search and search_venues both search the same catalog and return ranked venue results, making it unclear which one an agent should call and creating real misselection risk.

Naming Consistency3/5

The list_* tools are consistent and readable, and most tools use snake_case verb_noun naming. However, fetch and search are bare verbs, and fetch vs get_venue introduces two different verbs for the same operation, so the overall pattern is mixed but still understandable.

Tool Count4/5

Seven tools is a reasonable size for a venue guide server, but the count is slightly padded because fetch duplicates get_venue and search duplicates search_venues. The effective surface is closer to five distinct tools, so the count is slightly over what is needed.

Completeness4/5

The read-only domain is well covered: city discovery, search, curated editorial lists, new venue updates, and full venue details are all present, and search naturally leads into detail retrieval. Minor gaps exist, such as no dedicated non-search way to browse all venues in a city, but the core workflows have no dead ends.

Resources