Skip to main content
Glama

Search venues and destinations

search
Read-onlyIdempotent

Search published venues and destinations together in one call, each result tagged with its kind (venue or destination); pass kind to scope to one type, query to match names and venue descriptions, and city to narrow venues, then use search_venues or search_destinations for type-specific filters such as cuisine, hours or area.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
cityNoNarrow VENUES to this city (case-insensitive); destinations have no city and are not narrowed by it. Call list_cities for the exact values.
kindNoScope to 'venue' or 'destination'; omit to return both, each tagged kind.
limitNoMaximum number of items to return.
queryNoMatch venue names/descriptions and destination names; omit for all.
cursorNoNumber of items to skip; pass `next_cursor` from the previous page.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
itemNo
itemsNo
reasonNo
sampleNo
sourceNoFR-13: which approved revision an answer was read from, and how fresh. ``source`` is ``approved-content-revision:<id>`` for every read that answers from one venue, and the literal ``directory`` for the two cross-venue reads, which have no single revision to cite.
statusYes
paginationNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changed
    • changedInput schema / properties / query / anyOf
      Previous value: -[
      -  {
      -    "type": "string"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]New value: +[
      +  {
      +    "maxLength": 256,
      +    "type": "string"
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
    • addedOutput schema / properties / sample
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "boolean"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null,
      +  "title": "Sample"
      +}
  2. First observed

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint false, so the safety profile is covered. The description adds useful context: it searches only 'published' items, and each result is tagged with its kind. It doesn't mention pagination but the cursor parameter is self-explanatory. 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.

Conciseness4/5

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

The description is a single, dense sentence that packs all key information without redundancy. It is front-loaded with the main purpose, then parameter guidance, then alternative tool routing. It is slightly long but earns its length with substantive content.

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?

Given the tool's complexity (combined search with 5 parameters) and that the schema fully documents each parameter, the description covers the core usage and directs to more specific tools. It does not describe return format, but an output schema exists. The only minor gap is no mention of the cursor/next_cursor behavior, but that's implied by the schema.

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 parameters are fully documented. The description adds marginal detail, such as clarifying that query matches venue descriptions as well as names, but this is already implied in the schema for the query field. The description does not significantly add meaning beyond the schema, so a baseline 3 is appropriate.

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 searches published venues and destinations together in one call, with each result tagged by kind. It explicitly mentions the resource and the action, and differentiates itself from search_venues and search_destinations by noting those are for type-specific filters. This makes the purpose unambiguous.

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 provides explicit usage guidance: pass kind to scope to one type, query to match names and venue descriptions, and city to narrow venues. It also explicitly says 'then use search_venues or search_destinations for type-specific filters', giving clear when-to-use versus alternatives. This is excellent routing information.

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