Skip to main content
Glama

get_accommodation_details

Read-onlyIdempotent

One group from list_accommodations (group_id): type, room_types, meal/board options, distance, amenities, age and min-stay rules, and week prices for startDate and currency. Use after list_accommodations, before save_trip or calculate_trip_price, or to answer questions about one option. Week prices are indicative; call calculate_trip_price for a checkout total.

Input Schema

NameRequiredDescriptionDefault
localeNoResponse language and site context. One of en, nl, da, sv.
currencyNoISO 4217 currency for prices in this call. Usually EUR.EUR
group_idYesAccommodation group id from list_accommodations.
startDateNoCourse start calendar date (YYYY-MM-DD). Typically a Monday from list_starting_dates.

Output Schema

NameRequiredDescriptionDefault
groupNoAccommodation group from GET /v3/accommodations/{id} (v2 grouping): labels, classification, room and meal options, facilities, rules, and pricing hints for the requested start date.
successYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changed
    • removedOutput schema / properties / data
      Removed value: -{
      -  "additionalProperties": true,
      -  "type": "object"
      -}
    • addedOutput schema / properties / group
      Added value: +{
      +  "additionalProperties": true,
      +  "description": "Accommodation group from GET /v3/accommodations/{id} (v2 grouping): labels, classification, room and meal options, facilities, rules, and pricing hints for the requested start date.",
      +  "properties": {
      +    "amenities": {
      +      "description": "Facilities and highlighted amenities.",
      +      "items": {
      +        "additionalProperties": true,
      +        "type": "object"
      +      },
      +      "type": "array"
      +    },
      +    "classification": {
      +      "additionalProperties": true,
      +      "description": "Accommodation type, class, and room metadata.",
      +      "type": "object"
      +    },
      +    "distance": {
      +      "additionalProperties": true,
      +      "description": "Distance-to-school summary (string or structured object from the API).",
      +      "type": [
      +        "string",
      +        "object",
      +        "null"
      +      ]
      +    },
      +    "group_name": {
      +      "description": "Grouped title when room-type grouping is enabled.",
      +      "type": "string"
      +    },
      +    "id": {
      +      "description": "Group id (matches group_id).",
      +      "type": "string"
      +    },
      +    "location": {
      +      "additionalProperties": true,
      +      "description": "Address, distance_to_school, and travel-time hints.",
      +      "type": "object"
      +    },
      +    "meal_options": {
      +      "description": "Board/meal plans with pricing_for_requested_weeks when not split by room_types.",
      +      "items": {
      +        "additionalProperties": true,
      +        "type": "object"
      +      },
      +      "type": "array"
      +    },
      +    "name": {
      +      "description": "Display name of the accommodation group.",
      +      "type": "string"
      +    },
      +    "occupancy": {
      +      "additionalProperties": true,
      +      "description": "Minimum/maximum age and occupancy limits.",
      +      "type": "object"
      +    },
      +    "room_types": {
      +      "description": "Room variants, each with meal_options, stay_length, and week pricing.",
      +      "items": {
      +        "additionalProperties": true,
      +        "type": "object"
      +      },
      +      "type": "array"
      +    },
      +    "stay_length": {
      +      "additionalProperties": true,
      +      "description": "Minimum and maximum stay in weeks.",
      +      "type": "object"
      +    }
      +  },
      +  "type": "object"
      +}
  2. Changed8 schema fields changed
    • addedInput schema / properties / currency / description
      Added value: +"ISO 4217 currency for prices in this call. Usually EUR."
    • addedInput schema / properties / currency / examples
      Added value: +[
      +  "EUR"
      +]
    • addedInput schema / properties / group_id / description
      Added value: +"Accommodation group id from list_accommodations."
    • addedInput schema / properties / locale / description
      Added value: +"Response language and site context. One of en, nl, da, sv."
    • addedInput schema / properties / locale / examples
      Added value: +[
      +  "en",
      +  "nl",
      +  "da",
      +  "sv"
      +]
    • addedInput schema / properties / startDate / description
      Added value: +"Course start calendar date (YYYY-MM-DD). Typically a Monday from list_starting_dates."
    • addedInput schema / properties / startDate / examples
      Added value: +[
      +  "2026-09-07"
      +]
    • changedOutput schema / (root)
      Previous value: -nullNew value: +{
      +  "additionalProperties": true,
      +  "properties": {
      +    "data": {
      +      "additionalProperties": true,
      +      "type": "object"
      +    },
      +    "success": {
      +      "const": true
      +    }
      +  },
      +  "required": [
      +    "success"
      +  ],
      +  "type": "object"
      +}
  3. First observed

TDQS

A4.7/5.0
Behavior4/5

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

Annotations already declare readOnly, idempotent, non-destructive and closed-world, so the safety profile is covered. The description adds a genuinely non-obvious behavioral caveat: week prices are indicative only and a real checkout total requires calculate_trip_price. It does not cover auth/permission needs or response volume, so it stops 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?

Two tight sentences, front-loaded with what is returned, then the sequencing and the price caveat. Every clause carries information; no filler or restatement of the name.

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-structure explanation is unnecessary, and the description still supplies the one thing outside structured fields an agent needs: trust level of prices and where to get the authoritative total. Combined with 100% schema coverage, nothing material 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 description coverage is 100%, so 3 is the baseline. The description goes slightly beyond it by tying specific parameters to output semantics ('week prices for startDate and currency'), clarifying that startDate and currency key the price figures returned. No extra syntax or format detail (e.g., valid date range) is added.

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 (get) and resource (details of one accommodation group) and enumerates the returned facets: type, room_types, board options, distance, amenities, age/min-stay rules, week prices. It explicitly positions itself as 'One group from list_accommodations (group_id)', distinguishing it from the sibling that lists many.

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 explicit sequencing: 'Use after list_accommodations, before save_trip or calculate_trip_price, or to answer questions about one option.' It names both the prerequisite sibling and the downstream siblings, plus the disambiguating condition (questions about a single option).

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