Skip to main content
Glama

Get availability and prices

cup24_get_availability
Read-onlyIdempotent

Retrieve real-time appointment slots and prices for private clinics on cup24.it by city, service, clinic, or doctor, with paginated results for booking.

Instructions

Real-time availability and prices on cup24.it, from private clinics. Pass one of:

  • service_ids + city: one service in a city; several combinable lab tests are booked together and priced as one visit

  • clinic_id (optionally with one service id): what that clinic can do soonest

  • doctor_id: that doctor's availability

Returns slots: one per clinic and day, with that day's free times, service, price in EUR (full_price_eur and price_note on promotions), clinic, rating, address, coordinates, distance in km from the city centre, doctor, slot_id for cup24_get_slot_times, and booking_url to book on the website. Results come in chronological pages: when slots is not empty, call again with page=next_page for later dates.

Input Schema

NameRequiredDescriptionDefault
cityNoCity or zone slug from cup24_search_cities, e.g. 'firenze'
pageNoPage of results, 1 = first
sortNo'date' = earliest first (default), 'price' = cheapest first, 'distance' = nearest firstdate
whenNoOnly slots: oggi (today), domani (tomorrow), settimana (this week), prossima-settimana (next week), prossimo-mese (next month)
clinic_idNoClinic id from cup24_search (clinics) or from a slot's clinic_id
doctor_idNoDoctor id from cup24_search (doctors)
service_idsNoService ids from cup24_search, e.g. ['57d1785cdb86a']; several only for combinable lab tests

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.2.0

TDQS

A4.7/5.0
Behavior4/5

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

Annotations already declare this as a read-only, idempotent, non-destructive, open-world operation. The description adds meaningful behavior beyond that: results are real-time, come in chronological pages, and should be continued with page=next_page when slots is not empty. It does not discuss auth, rate limits, or errors, but the annotations lower the need for that.

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 front-loaded with what the tool does, then bullet-lists the valid parameter combinations, then explains returns and pagination. It is fairly long but well structured and every section adds needed information, especially because there is no output schema.

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?

For a 7-parameter, no-required-parameter read tool with no output schema, the description covers the important invocation modes, return fields, slot_id handoff to cup24_get_slot_times, booking_url, and pagination. An agent has enough context to call it correctly.

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 coverage is 100%, so the baseline would be 3. The description adds useful semantics not in the schema: service_ids can be combined only for combinable lab tests and are priced as one visit, and clinic_id may be used with one service id to find that clinic's soonest availability.

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 verb and resource: it gets real-time availability and prices from private clinics on cup24.it. It also distinguishes itself from cup24_get_slot_times by indicating that returned slot_id values are for that sibling, and it makes the three main lookup modes explicit.

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 selection guidance with 'Pass one of' followed by three concrete parameter combinations: service_ids + city, clinic_id, or doctor_id. This tells an agent how to invoke the tool for different intents and names the downstream tool for a slot's detailed times.

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