Skip to main content
Glama
This connector has been deprecated

Superseded by the canonical Dim Hour connector at https://glama.ai/mcp/connectors/com.dimhour.mcp/dim-hour (same server on its branded domain).

Server Details

Search nearly 20,000 verified restaurants and bars across 24 cities plus the New Mexico region, with venue detail and curated lists.

Ownership verified
Status
Healthy
Uptime
99.8% over 50 days
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL

TDQS

A3.6/5.0

Scored across 9 tools

Disambiguation2/5

`fetch` and `get_venue` are near-duplicates, both returning a full venue record, so an agent cannot reliably choose between them. `search`, `search_venues`, and `find_places` also overlap heavily, with distinctions that are subtle rather than clear-cut. Several tools have unclear boundaries.

Naming Consistency3/5

Most tools follow a verb_noun pattern (`find_places`, `get_hours`, `get_venue`, `list_cities`, `list_curated`, `list_new_venues`, `search_venues`), but bare verbs `fetch` and `search` break the convention. The mixed conventions remain readable, but they are not fully consistent.

Tool Count4/5

Nine tools is a reasonable, well-scoped count for a venue-discovery catalog. However, the redundant `fetch`/`get_venue` pair means not every tool clearly earns its place, so it is slightly over-provisioned rather than perfectly scoped.

Completeness4/5

The surface covers core discovery workflows: city listing, curated lists, new venues, search, venue details, and hours. Minor gaps remain, such as no direct reservation or booking operation, but the read-only browsing domain is largely complete.

Available Tools

9 tools
fetchFetch a Dim Hour venueA
Read-only
Inspect

Get the full Dim Hour record for one venue by the id returned from search: description, signature dishes, address, hours, phone, happy hour, reservation platform, awards, website and Instagram.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesVenue id from `search`, in the form 'city:id' e.g. 'nyc:1367'

Output Schema

ParametersJSON Schema
NameRequiredDescription
idYes
urlYes
textYes
titleYes
receiptYes
metadataNo

TDQS

A3.5/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false and a closed world, so the safety profile is covered. The description adds only the shape of the returned record; it says nothing about auth needs, missing-id behavior, or rate limits, which is acceptable but not rich given the lower bar set by annotations.

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?

One front-loaded sentence with no filler, and the identifier source is stated early. The trailing enumeration of return fields is somewhat redundant given an output schema exists, but it is compact and does not derail the sentence.

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 a single-parameter read tool with full schema coverage, an output schema, and annotations covering safety, the definition supplies enough to invoke it correctly. The one gap is that it does not resolve the overlap with the `get_venue` sibling.

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 coverage is 100% and the single `id` parameter is already documented with its 'city:id' format and `search` provenance. The description restates the same provenance, adding no syntax or format detail beyond the schema, so baseline 3 applies.

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?

States a specific verb+resource ('Get the full Dim Hour record for one venue') and names the identifier source, which is clear enough to act on. However, it never distinguishes itself from the sibling `get_venue`, which reads like the same operation, so an agent cannot tell the two apart from the description alone.

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

Usage Guidelines3/5

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

It gives one real precondition – the id must come from `search` – which is a genuine routing hint. But it offers no when-to-use/when-not guidance and no differentiation from `get_venue` or `search_venues`, so usage is only implied.

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

find_placesFind placesA
Read-only
Inspect

Find places for a specific occasion in one city — the task-shaped entry point. Give the city and what the evening needs (a cuisine, a neighborhood, a budget, a vibe) and it returns ranked, citable venues with a freshness receipt. Prefer this over search_venues when you are planning rather than browsing.

ParametersJSON Schema
NameRequiredDescriptionDefault
cityYesCity name or key from list_cities
limitNoMax results, default 6
max_priceNoMax price tier 1-4
looking_forNoWhat the occasion needs, e.g. 'omakase', 'patio', 'birthday dinner'
neighborhoodNoNarrow to a neighborhood

Output Schema

ParametersJSON Schema
NameRequiredDescription
cityYes
noteNo
venuesYes
receiptYes
showingYes
total_matchesYes

TDQS

A4.5/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, openWorldHint=false and destructiveHint=false, so the safety profile is covered. The description adds genuinely new behavioral context beyond them: results are ranked, citable, and come with a 'freshness receipt'. It does not discuss rate limits or failure modes, keeping it short of a 5.

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 tight sentences, front-loaded with the core action and scope, followed by inputs and then the sibling-routing rule. No sentence is redundant.

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?

An output schema exists, so return values need not be explained, and annotations carry the safety profile. What remains - what the tool does, what to pass, and when to prefer it over the sibling - is all present.

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 five parameters are already documented, making 3 the baseline. The description loosely maps the occasion needs to inputs ('a cuisine, a neighborhood, a budget, a vibe') but adds no syntax or format detail beyond the schema.

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 (find places) plus the scope constraint 'in one city', and explicitly labels itself the task-shaped entry point. It distinguishes itself from the sibling search_venues by name, so an agent can route without opening either schema.

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?

Gives an explicit selection rule: 'Prefer this over search_venues when you are planning rather than browsing.' That names the alternative and the condition that chooses it, which is exactly what routing guidance should do.

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

get_hoursGet opening hoursA
Read-only
Inspect

Opening hours for one venue, from the Dim Hour catalog. ALWAYS returns as_of and never claims to be live — hours are catalog data, not a live feed, and the receipt says how old they are. Measured 2026-09-16, 82% of venues carry hours; when a venue has none this ABSTAINS and says so rather than guessing. Confirm with the venue before relying on it.

ParametersJSON Schema
NameRequiredDescriptionDefault
idNoVenue id from search_venues
cityYesCity name or key
nameNoVenue name (used if id not given)

Output Schema

ParametersJSON Schema
NameRequiredDescription
idYes
urlYes
cityYes
nameYes
hoursYes
receiptYes
warningYes

TDQS

A4.4/5.0
Behavior5/5

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

Annotations only cover the safety profile (readOnly, non-destructive, closed-world), while the description supplies genuinely additive behavior: it always returns an `as_of` receipt, explicitly refuses to pose as a live feed, abstains instead of guessing when a venue lacks hours, and quantifies coverage at 82%. That is exactly the beyond-annotations context this dimension rewards.

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?

Four sentences, front-loaded with what the tool returns and the provenance constraint, each sentence carrying distinct information (source, staleness receipt, abstention, coverage stat). The coverage-percentage detail is slightly peripheral but still earns its place as a reliability signal.

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?

An output schema exists, so return-value structure needn't be described, and the description still explains the one field that matters semantically (`as_of`). Combined with the abstention behavior and data-freshness disclosure, an agent has everything needed to call and interpret this 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 required `city` and optional `id`/`name` lookup parameters are already fully documented by the schema. The description adds no format, precedence, or disambiguation guidance beyond that, so the baseline of 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 and resource ('Opening hours for one venue') plus the data source ('the Dim Hour catalog'), which cleanly separates it from venue-detail siblings like get_venue and search_venues. An agent knows exactly what it will receive without opening a sibling schema.

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 clear context for use: one venue, catalog data, abstains when the venue has no hours, and a caveat to confirm with the venue before relying on it. It never routes the agent to a sibling (e.g., where to get hours another way, or which tool to use for other venue fields), so it falls short of explicit when-not/alternatives.

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

get_venueGet venue detailsB
Read-only
Inspect

Get the full Dim Hour record for one venue: description, signature dishes, address, hours, phone, happy hour, reservation platform, awards, website, Instagram, and (for Iconic 50 venues) the long-form story.

ParametersJSON Schema
NameRequiredDescriptionDefault
idNoVenue id from search_venues
cityYesCity name or key
nameNoVenue name (used if id not given)

Output Schema

ParametersJSON Schema
NameRequiredDescription
idYes
latNo
lngNo
urlYes
nameYes
tagsYes
hoursYes
phoneYes
priceNo
scoreNo
storyNo
awardsYes
dishesYes
iconicNo
openedNo
addressYes
cuisineYes
receiptYes
websiteYes
photoUrlYes
trendingNo
city_nameYes
instagramYes
happy_hourYes
highlightsNo
price_tierNo
descriptionYes
reservationYes
neighborhoodYes
other_locationsNo

TDQS

B3.2/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, openWorldHint=false and destructiveHint=false, so the safety profile is covered. The description adds useful context about the breadth of the record and the Iconic 50 long-form story variant, but says nothing about lookup failure behavior or the id-vs-name resolution rule.

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?

A single front-loaded sentence that immediately names the resource and then lists the payload. The field enumeration is long but each item is informative, so it largely earns its place.

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 an output schema present, the description need not explain return values, yet it usefully previews them. Only minor gaps remain: no statement of the id/name fallback logic or what happens when the venue is not found.

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 baseline is 3 and the schema already explains id, city, and name, including that id comes from search_venues. The description adds no parameter-level detail beyond noting the Iconic 50 variant.

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?

States a specific verb and resource ('Get the full Dim Hour record for one venue') and enumerates the returned fields, making it clear this is a single-record lookup rather than a list. It does not explicitly distinguish itself from siblings like fetch or get_hours, so it stops short of a 5.

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

Usage Guidelines2/5

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

No when-to-use guidance, no prerequisites, and no mention of alternatives such as search_venues (which is only referenced inside the schema, not the description). The agent must infer that this is a follow-up to a search.

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

list_citiesList citiesA
Read-only
Inspect

List the 26 cities Dim Hour covers, with the city key to pass to the other tools.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
citiesYes

TDQS

A4.1/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false, and openWorldHint=false, so the safety profile is fully covered by structured data. The description adds the dataset's bounded scope (a fixed set of 26 cities), which is genuinely useful behavioral context, but says nothing about ordering, auth, or resumability — appropriate for a simple read-only list.

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?

A single sentence with zero filler, front-loading the action and immediately stating the practical payoff of the returned key. Nothing can be trimmed without losing information.

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 zero-parameter, read-only enumeration with an output schema present, the description supplies everything an agent needs: what is returned, how many entries, and how the result is consumed downstream. Return-format details are correctly left to the output schema.

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?

The tool takes zero parameters, so there is nothing to document; the baseline of 4 applies. The description correctly implies no input is needed to retrieve the full list.

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 (List) and resource (cities Dim Hour covers), and adds scope plus the reason the output matters — the city key feeds the other tools. This clearly separates it from the venue-oriented siblings like list_curated, list_new_venues, and find_places.

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

Usage Guidelines3/5

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

The phrase 'the city key to pass to the other tools' implies the intended workflow (call this first, then use the key elsewhere), which is useful implicit guidance. However, there is no explicit when-to-use/when-not statement or named alternative, so the guidance remains inferred rather than stated.

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

list_curatedList editorial listsA
Read-only
Inspect

Dim Hour's editorial themed lists for a city (e.g. 'Unmarked Doors' speakeasies). Without list_id: returns all list titles. With list_id: returns that list's venues with editorial notes.

ParametersJSON Schema
NameRequiredDescriptionDefault
cityYesCity name or key
list_idNoA list id from the no-arg call

Output Schema

ParametersJSON Schema
NameRequiredDescription
idNo
cityYes
noteNo
listsNo
titleNo
venuesNo
receiptYes
subtitleNo

TDQS

A4.1/5.0
Behavior4/5

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

Annotations already cover the safety profile (readOnlyHint=true, destructiveHint=false, openWorldHint=false), so the bar is lower. The description still adds value by disclosing that behavior changes with list_id and what each mode returns (titles vs. venues plus editorial notes), which the annotations 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?

Two sentences, no filler, and the core purpose is front-loaded before the mode differences. Every clause carries information the agent needs.

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 a read-only, two-parameter tool with an output schema, the description covers purpose and both modes sufficiently. It omits anything about result limits, pagination, or empty-list behavior, which is the only remaining gap.

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 coverage is 100%, so both parameters are already documented and the baseline would be 3. The description goes beyond the schema by explaining the behavioral effect of presence/absence of list_id, giving the agent mode semantics rather than just a type.

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 — 'editorial themed lists for a city' — and grounds it with a concrete example ('Unmarked Doors' speakeasies). It is clear enough to separate from siblings like search_venues and list_new_venues by resource type, though it never names an alternative tool explicitly.

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?

It spells out the two operating modes and their trigger condition: omit list_id to browse all list titles, pass list_id to drill into that list's venues. That is real when-to-use guidance, but there is no statement of when not to use it or which sibling to prefer for other listing needs.

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

list_new_venuesList new venuesA
Read-only
Inspect

Venues recently added to the Dim Hour catalog — across all 26 cities or one city. Use for 'what's new on Dim Hour' / new-opening alerts / weekly digests. Scored places to eat and drink come first; hotels, malls, museums and landmarks carry no score and follow them. Recency orders within each group. Dates earlier than 2026-06-06 are estimates reconstructed from history.

ParametersJSON Schema
NameRequiredDescriptionDefault
cityNoOptional city name or key; omit for all cities
daysNoLook-back window in days, default 30 (max 90)
limitNoMax results, default 25

Output Schema

ParametersJSON Schema
NameRequiredDescription
cityYes
venuesYes
receiptYes
showingYes
total_newYes
window_daysYes
feed_generatedNo

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already declare readOnly/openWorld=false/destructive=false, but the description adds real behavioral context: grouped result ordering (scored eat/drink first, un-scored venue types after), recency ordering within groups, and a data-quality caveat that dates before 2026-06-06 are reconstructed estimates. Pagination behavior is not mentioned, keeping it short of a 5.

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 sentences, front-loaded with scope and purpose, then usage, then result semantics and the date caveat. No filler and nothing repeated from structured fields.

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?

With an output schema present, return values need not be explained, and the description covers scope, ordering/grouping, and the estimate caveat for early dates. An agent has everything needed to call it 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 city/days/limit are already documented in the schema with defaults and bounds. The description only alludes to the city parameter ('all 26 cities or one city') and adds no syntax or format detail beyond the schema — 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+scope: venues 'recently added to the Dim Hour catalog', across all 26 cities or one city. The recency qualifier cleanly distinguishes it from siblings like search_venues, find_places and list_curated.

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 concrete use cases ('what's new on Dim Hour', new-opening alerts, weekly digests), which tells the agent when this tool is the right pick. It stops short of naming an alternative tool or stating when not to use it.

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

search_venuesSearch venuesA
Read-only
Inspect

Search Dim Hour's restaurant, bar and venue catalog. Pass city to search one city, or OMIT city to search more than 20,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.

ParametersJSON Schema
NameRequiredDescriptionDefault
cityNoCity name or key, e.g. 'NYC', 'dallas'. OMIT to search ALL cities at once.
sortNoResult order. Default score_desc (highest quality first).
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.
fieldsNoReturn only these fields on each venue, to keep a result small. `id`, `name` and `url` are always included — `url` is the citation link.
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

ParametersJSON Schema
NameRequiredDescription
cityNo
noteNo
scopeNo
venuesYes
receiptYes
showingYes
total_exactYes
total_matchesYes

TDQS

A4.1/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false and a closed (non-open-world) catalog, so the safety profile is covered. The description adds useful behavioral detail beyond that: the ranked return shape (score, price tier, neighborhood, happy hour, citation link) and the fact that queries are tokenized word-by-word with filler ignored.

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?

Three dense sentences, front-loaded with purpose then scope then query mechanics; nothing is padded. It is slightly information-packed, but each clause carries actionable signal.

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 13-parameter, optional-only search tool with an output schema present, the description covers scope, query semantics, return contents, and filter combination. Nothing an agent needs to call it correctly is missing.

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 coverage is 100%, so the baseline is 3. The description goes further by explaining the query matching model ('one strong keyword beats a sentence') and the cross-parameter interaction with filters, which helps an agent compose calls rather than just fill fields.

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?

States a specific verb and resource ('Search Dim Hour's restaurant, bar and venue catalog') and immediately clarifies the two search scopes (one city vs all cities). It does not explicitly differentiate itself from close siblings like `search`, `find_places`, or `get_venue`, so it stops short of a 5.

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 clear operational guidance: pass `city` for one city, OMIT it for the 20k-venue global sweep, with example intents. It does not say when to prefer this tool over `find_places` or `search`, so there is no explicit alternative routing.

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

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 8 tool updates
    • Changedfetch1 field changed
      • addedOutput schema / properties / receipt / properties / scope_note
        Added value: +{
        +  "type": [
        +    "string",
        +    "null"
        +  ]
        +}
    • Changedfind_places1 field changed
      • addedOutput schema / properties / receipt / properties / scope_note
        Added value: +{
        +  "type": [
        +    "string",
        +    "null"
        +  ]
        +}
    • Changedget_hours1 field changed
      • addedOutput schema / properties / receipt / properties / scope_note
        Added value: +{
        +  "type": [
        +    "string",
        +    "null"
        +  ]
        +}
    • Changedget_venue1 field changed
      • addedOutput schema / properties / receipt / properties / scope_note
        Added value: +{
        +  "type": [
        +    "string",
        +    "null"
        +  ]
        +}
    • Changedlist_curated1 field changed
      • addedOutput schema / properties / receipt / properties / scope_note
        Added value: +{
        +  "type": [
        +    "string",
        +    "null"
        +  ]
        +}
    • Changedlist_new_venues1 field changed
      • addedOutput schema / properties / receipt / properties / scope_note
        Added value: +{
        +  "type": [
        +    "string",
        +    "null"
        +  ]
        +}
    • Changedsearch1 field changed
      • addedOutput schema / properties / receipt / properties / scope_note
        Added value: +{
        +  "type": [
        +    "string",
        +    "null"
        +  ]
        +}
    • Changedsearch_venues1 field changed
      • addedOutput schema / properties / receipt / properties / scope_note
        Added value: +{
        +  "type": [
        +    "string",
        +    "null"
        +  ]
        +}
  2. 1 tool update
    • Changedget_hours2 fields changed
      • addedOutput schema / properties / warning
        Added value: +{
        +  "type": "string"
        +}
      • changedOutput schema / required
        Previous value: -[
        -  "city",
        -  "id",
        -  "name",
        -  "hours",
        -  "url",
        -  "receipt"
        -]New value: +[
        +  "city",
        +  "id",
        +  "name",
        +  "hours",
        +  "warning",
        +  "url",
        +  "receipt"
        +]

Related MCP Connectors

Related MCP Servers

  • F
    license
    Not graded
    quality
    Not graded
    maintenance
    An AI-native restaurant discovery service that enables searching and receiving natural language recommendations for over 2,200 restaurants across 15+ US cities. It provides tools for accessing detailed restaurant info, curated lists, and cuisine-specific searches through the Model Context Protocol.
    -
  • A
    license
    A
    quality
    D
    maintenance
    Search 8,000+ corporate event venues across 40+ cities. Tools for venue search by capacity/category, pricing guides, expert advice articles, and inquiry handoff. Read-only, PII-redacted, UTM-attributed.
    7
    9 npm
    MIT
  • A
    license
    A
    quality
    D
    maintenance
    Enables restaurant discovery and reservations across multiple providers (Resy, Google Places, Yelp, Tock) with auditable and secure two-step booking.
    10
    MIT
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources