Skip to main content
Glama

HotelRefund Price Tracker

Get price history for a tracking

get_price_history
Read-only

Return the recorded prices for one tracking (tracking_id): current, first, lowest and highest price, percentage change and trend since tracking started, and the time series of observed prices. Also returns booking_guidance — a book-now-or-wait signal computed from this stay's full tracked record (share of observations lower than now, distance from the median, overall spread, days left), and headline + summary sentences (in language: en, ko, ja or zh) that explain the read the same way the page does. track_page_url is the booking-decision page in that language. And report_url / csv_url: every observation with UTC timestamps as a printable page and a CSV, which people use as evidence for best-price-guarantee claims, refund requests and check-in negotiation. When available, seasonality adds the destination's forecast monthly rates for the hotel's star band (a separate scale from the tracked prices — it says whether the stay month is a high or low month for the city, and which nearby month is cheapest). A tracking created moments ago may report awaiting_first_price until its first check completes; no_rates means there is no sellable rate for these dates right now (sold out or not open yet) and it is re-checked daily.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
languageNoLanguage for booking_guidance.headline/summary and track_page_url: en (default), ko, ja or zh.
tracking_idYesTracking id from track_hotel_price or list_tracked_hotels.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.1/5.0
Behavior5/5

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

Goes well beyond the readOnlyHint/openWorldHint annotations: it names the awaiting_first_price and no_rates states and explains what each means (sold out/not open, re-checked daily), explains what report_url/csv_url are for (price-guarantee evidence, refunds, check-in negotiation), and warns that seasonality is on a separate scale from the tracked prices.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

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

The core return payload is front-loaded in the first sentence, but the description runs long and dense, packing fallback states, URL purposes and seasonality caveats into an undifferentiated block. For a two-parameter read tool with a fully documented schema, some of this prose is surplus rather than load-bearing.

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?

There is no output schema, so the description carries the full burden of describing returns, and it does so thoroughly — shape of the price series, the booking_guidance signal and its components, generated headline/summary text, export URLs, optional seasonality, and degraded states. An agent has everything needed to call and interpret it.

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%, so both parameters are already documented in the schema and the baseline is 3. The description adds only marginal meaning beyond that — it says language governs booking_guidance text and track_page_url, which the schema already states, and adds no format or sourcing detail for tracking_id.

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 ('Return the recorded prices for one tracking') and immediately scopes what is returned (current, first, lowest, highest, change, trend, time series). The tracked-record scope distinguishes it implicitly from siblings like get_current_price and get_hotel_price_calendar without needing to name them.

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?

Usage is implied by the description of the tracked-record scope and the awaiting_first_price / no_rates states, which tell the agent when results are meaningful. However, it never explicitly says when to choose this over get_current_price or get_hotel_price_calendar, and there are no stated exclusions or prerequisites beyond the tracking_id origin in the schema.

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