Skip to main content
Glama
chrischall

OurFamilyWizard MCP

by chrischall

gyg_search_tours

Read-only

Search GetYourGuide tours and activities by text, location, category, or date. Sort results by popularity, price, or rating. Get slim summaries or full records.

Instructions

Search GetYourGuide tours and activities. Filter by free text (or "iata:" for airports), location ID, category ID, and date range; sort by popularity, price, or rating. Returns slim summaries by default; pass view:"full" for the whole records.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
qNoFree-text search, e.g. "louvre skip the line" or "iata:jfk".
viewNoResponse shape: "compact" (default) drops fields the response already carries elsewhere; "full" returns every field this server understands. compact returns the slim tour projection (id, title, price, duration, rating, cancellation) and strips image URLs; "full" returns GetYourGuide's whole records.
limitNoMaximum number of items to return (1-500).
dateToNoLatest date, YYYY-MM-DD (or full YYYY-MM-DDThh:mm:ss).
offsetNoNumber of items to skip (0-based).
currencyNoCurrency for prices, ISO 4217 (e.g. USD, EUR). Defaults to GYG_CURRENCY when set.
dateFromNoEarliest date, YYYY-MM-DD (or full YYYY-MM-DDThh:mm:ss). Required when dateTo is set.
languageNoContent language (e.g. en, de). Defaults to GYG_LANGUAGE when set.
sortFieldNoSort field (API default: popularity).
categoryIdNoRestrict to a category ID.
locationIdNoRestrict to a location ID (city/POI/region).
extraParamsNoExtra raw query params to merge into the request verbatim (escape hatch for API drift).
sortDirectionNoSort direction (ignored for popularity).

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changedv2.0.0
    • changedInput schema / $schema
      Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
  2. Changed2 schema fields changedv1.3.1
    • removedInput schema / properties / compact
      Removed value: -{
      -  "default": false,
      -  "description": "Return slim tour summaries instead of full records (recommended for browsing).",
      -  "type": "boolean"
      -}
    • addedInput schema / properties / view
      Added value: +{
      +  "description": "Response shape: \"compact\" (default) drops fields the response already carries elsewhere; \"full\" returns every field this server understands. compact returns the slim tour projection (id, title, price, duration, rating, cancellation) and strips image URLs; \"full\" returns GetYourGuide's whole records.",
      +  "enum": [
      +    "compact",
      +    "full"
      +  ],
      +  "type": "string"
      +}
  3. First observedv1.1.2

TDQS

A4/5.0
Behavior4/5

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

The description adds behavioral context beyond the annotations: it states that by default it returns 'slim summaries' and that view:"full" returns whole records. This is helpful because readOnlyHint=true already signals a safe read operation, so the description need not restate that. It does not mention rate limits or auth, but for a read-only search tool with a safe hint, this is sufficient.

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 and front-loaded: it starts with the core purpose, then quickly lists the main search dimensions and the view behavior in two sentences. Every sentence contributes to understanding the tool's functionality, with no filler or redundant restatement of the name.

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 complexity (13 parameters, no output schema), the description covers the essential search behavior, filters, sorting, and the response view distinction. Pagination, currency, and language are left to the schema, which fully documents them. The absence of an output schema is partially mitigated by describing 'slim summaries' vs 'whole records,' though more detail on the returned structure could be useful. Overall, it is sufficient for correct invocation.

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. The description repeats the main filter concepts (free text, location ID, category ID, date range, sort) that are already fully documented in the schema. It adds minimal new meaning, such as the 'iata:' syntax, but that is also present in the q parameter description. Thus it does not significantly compensate 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?

The description opens with a specific verb and resource: 'Search GetYourGuide tours and activities.' It then lists concrete filter dimensions (free text, location ID, category ID, date range), sort fields, and the default/full view distinction. This clearly differentiates it from sibling list tools like gyg_list_category_tours and gyg_list_location_tours by emphasizing free-text search and general search capability.

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 description implies usage through the filters it supports (e.g., free-text search, iata codes), but it never explicitly states when to prefer this tool over siblings like gyg_list_category_tours or gyg_list_location_tours. There is no direct 'when not to use' guidance, leaving some selection inference to the agent. This meets the 'implied usage' level but lacks explicit alternatives.

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