Skip to main content
Glama

Get property details

get_property_details
Read-onlyIdempotent

WHEN: use it after search_availability when the traveller wants to compare or see more detail about one specific category, or asks "tell me more about G4". WHAT IT RETURNS: description, max_guests, bedrooms (text + count), size_sqm, zone, generic location ("La Patacona, Alboraya — 30 m from the sea" / "Valencia city, close to the centre"), location_summary (how long to the old town, tram, airport…), highlights (terrace, sea views, pool, parking, m²), amenities (parking, pool_seasonal), up to 3 photos, trust (same block as search_availability), a booking_url_base to open the listing with no dates, and the Priority note. DO NOT ask here for the exact street address or access codes: they are only sent to the guest by email after a booking is confirmed. EXAMPLE: {"id":"G4","language":"en"}.

Input Schema

NameRequiredDescriptionDefault
idYesProperty/type ID (G1..G6 or G4B).
languageNoResponse language. Defaults to en.

Output Schema

NameRequiredDescriptionDefault
idYes
nameYes
zoneYes
trustYes
photosYes
bedroomsYes
locationYes
size_sqmYes
amenitiesYes
highlightsYes
max_guestsYes
descriptionYes
priority_urlYes
priority_noteYes
bedrooms_countYes
booking_url_baseYes
location_summaryYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed5 schema fields changed
    • addedOutput schema / properties / bedrooms_count
      Added value: +{
      +  "maximum": 9007199254740991,
      +  "minimum": -9007199254740991,
      +  "type": "integer"
      +}
    • addedOutput schema / properties / location_summary
      Added value: +{
      +  "type": "string"
      +}
    • addedOutput schema / properties / trust
      Added value: +{
      +  "additionalProperties": false,
      +  "properties": {
      +    "cancellation_note": {
      +      "type": "string"
      +    },
      +    "languages_spoken": {
      +      "items": {
      +        "type": "string"
      +      },
      +      "type": "array"
      +    },
      +    "parity_note": {
      +      "type": "string"
      +    },
      +    "payment_note": {
      +      "type": "string"
      +    },
      +    "rating_best": {
      +      "type": "number"
      +    },
      +    "rating_count": {
      +      "maximum": 9007199254740991,
      +      "minimum": -9007199254740991,
      +      "type": "integer"
      +    },
      +    "rating_source": {
      +      "const": "Booking.com",
      +      "type": "string"
      +    },
      +    "rating_value": {
      +      "type": "number"
      +    }
      +  },
      +  "required": [
      +    "rating_value",
      +    "rating_best",
      +    "rating_count",
      +    "rating_source",
      +    "parity_note",
      +    "cancellation_note",
      +    "payment_note",
      +    "languages_spoken"
      +  ],
      +  "type": "object"
      +}
    • addedOutput schema / properties / zone
      Added value: +{
      +  "enum": [
      +    "beach",
      +    "city"
      +  ],
      +  "type": "string"
      +}
    • changedOutput schema / required
      Previous value: -[
      -  "id",
      -  "name",
      -  "max_guests",
      -  "bedrooms",
      -  "size_sqm",
      -  "location",
      -  "highlights",
      -  "description",
      -  "amenities",
      -  "photos",
      -  "booking_url_base",
      -  "priority_note",
      -  "priority_url"
      -]New value: +[
      +  "id",
      +  "name",
      +  "zone",
      +  "max_guests",
      +  "bedrooms",
      +  "bedrooms_count",
      +  "size_sqm",
      +  "location",
      +  "location_summary",
      +  "highlights",
      +  "description",
      +  "amenities",
      +  "photos",
      +  "booking_url_base",
      +  "trust",
      +  "priority_note",
      +  "priority_url"
      +]
  2. First observed

TDQS

A4.6/5.0
Behavior5/5

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

The annotations already declare read-only, idempotent, closed-world, and non-destructive behavior. The description adds useful behavioral context beyond those annotations: it explains the return content, the privacy boundary around address/access codes, the booking URL base, and the trust/Priority notes.

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 front-loaded with WHEN, then returns, exclusions, and an example, which makes it easy to scan. It is somewhat lengthy because it enumerates many return fields even though an output schema exists, but the structure keeps the extra detail useful rather than noisy.

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?

Given the read-only annotations, full schema coverage, and existing output schema, the description is complete enough for reliable selection and invocation. It covers when to call it, what it returns, what not to ask for, and a concrete example.

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 both `id` and `language` are already well documented in the schema. The description adds an example invocation with `id: G4` and `language: en`, but this is only marginal additional semantic guidance, so the baseline of 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 states a specific retrieval action for one property/category ID and clearly distinguishes it from its predecessor `search_availability`. It also enumerates the kinds of details returned, so the agent can understand the tool’s scope without opening the output 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?

It gives explicit WHEN guidance: use it after `search_availability` when the traveller wants to compare or see more detail about one specific category. It also gives an explicit DO NOT: do not ask here for exact street address or access codes, which are sent post-booking.

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