Skip to main content
Glama

booking

Server Details

Hôtel-Rooftop Les Voiles, Toulon Mourillon : disponibilités, tarifs réels et table au rooftop.

If you are the author of this connector, you can claim ownership by verifying the domain or GitHub account it belongs to. Claimed connector authors can inspect health checks, view analytics, and manage their listing.
Status
Healthy
Last Tested
Transport
Streamable HTTP · MCP 2025-06-18
URL

TDQS

A3.6/5.0

Scored across 12 tools

Disambiguation4/5

Most tools have clearly distinct purposes by resource and action, e.g. create_booking_session vs create_rooftop_reservation vs get_stay. However, `get_property_details` and `search` both supply hotel information, and `fetch` is a generic helper whose relation to `search` could blur boundaries, though descriptions help.

Naming Consistency4/5

All tool names use snake_case, and the majority follow a clear get_/create_/update_ verb_noun pattern. The bare verbs `search` and `fetch` deviate slightly from that convention but remain readable and predictable.

Tool Count5/5

12 tools is well within the ideal 3–15 range for this domain. Each tool appears to earn its place across hotel booking, rooftop reservation, information retrieval, and post-booking support.

Completeness4/5

The surface covers property details, availability, booking sessions, check-in, folio, stay lookup, rooftop availability, and rooftop reservation. Minor gaps exist: no explicit cancellation or modification tools (partly by design, since prepaid stays are non-refundable/non-modifiable) and no way to browse existing bookings without keys.

Available Tools

12 tools
create_booking_sessionA
Read-only
Inspect

Ouvre une session de réservation à l’Hôtel-Rooftop Les Voiles (Toulon, Mourillon) pour des dates et une occupation données. Rend la chambre et le tarif réellement disponibles, le prix total en centimes d’euro, et une URL pour finaliser. Seuls les tarifs PRÉPAYÉS se réservent par agent : le séjour est réglé en totalité à la réservation, et n’est pas remboursable. Rend une erreur claire si l’hôtel est complet ou fermé sur la période.

ParametersJSON Schema
NameRequiredDescriptionDefault
metaNoMétadonnées de protocole UCP.
bookingYes

TDQS

A3.7/5.0
Behavior4/5

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

With no output schema, the description usefully discloses return values (available room and rate, total price in euro cents, and a finalization URL) plus the prepaid-only, non-refundable payment policy and the failure mode when the hotel is full/closed. This goes well beyond the readOnly/openWorld annotations, though session lifetime and idempotency are not covered.

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?

Four front-loaded sentences in a logical order: purpose, return values, booking constraint, error behavior. No filler, though it is slightly longer than strictly necessary.

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 no output schema, the description adequately explains what comes back (room, rate, price, URL) and the key constraint and error case. It is broadly complete for a session-creation tool, with only gaps around multi-stay handling and the handoff to get_booking_session/update_booking_session.

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 only ~50% and the payload is deeply nested. The description adds meaning for 'dates et occupation' (mapping to stay_dates/occupancy) and the prepaid constraint tied to rate_plan, but says nothing about accommodation_type, property, or the meta/booker objects, so it only partially compensates for the coverage gap.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

Names a concrete verb ('Ouvre une session de réservation'), a named resource (session at Hôtel-Rooftop Les Voiles, Toulon/Mourillon) and scope (dates + occupancy). It is unambiguous what the tool does, but it never distinguishes itself from siblings like create_rooftop_reservation or get_booking_session.

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 rather than stated: the description notes only PREPAID rates can be booked by an agent, which is a genuine eligibility constraint. However there is no explicit when-to-use / when-not-to-use guidance and no routing to alternative siblings (e.g. for non-prepaid or rooftop bookings).

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

create_rooftop_reservationAInspect

Réserve une table au Rooftop des Voiles. La table est tenue IMMÉDIATEMENT et fermement : il n’y a rien à confirmer ensuite, et aucun paiement n’est demandé. Rend une erreur claire si le rooftop est fermé, complet, ou si le service du soir est passé.

ParametersJSON Schema
NameRequiredDescriptionDefault
dateYesLe soir, AAAA-MM-JJ.
nameYesNom au nom duquel la table est tenue.
noteNoAllergies, occasion, demande particulière.
timeNoCréneau, par exemple « 19h30 ». Le premier possible si absent.
emailNo
phoneNo
party_sizeYesNombre de couverts, 5 au maximum.

TDQS

A3.5/5.0
Behavior4/5

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

Annotations declare the write/open-world profile, and the description adds meaningful behavior: the table is held immediately and firmly, nothing needs confirming, no payment is required, and it returns a clear error when the rooftop is closed, full, or past dinner service. It does not cover auth or rate limits, but adds solid context beyond the annotations.

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?

Three tight sentences: purpose first, then behavioral guarantees, then failure behavior. Every sentence earns its place with no redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

No output schema exists, so the description carries the return-value burden; it describes error cases well but says nothing about the success response shape (e.g., confirmation reference). Adequate but leaves a gap for a write tool.

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?

With 71% schema description coverage the schema carries most of the load, and the description adds no parameter-level meaning (e.g., clarifying the time format or max party size). Baseline 3 is appropriate given the moderately high coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb+resource ('Réserve une table au Rooftop des Voiles'), so the agent knows exactly what action is performed. It does not explicitly distinguish itself from siblings like create_booking_session or get_rooftop_availability, so it falls just short of the top band.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explains the reservation's semantics (immediate hold, no payment, no confirmation) but never states when to choose this tool over the read-oriented siblings such as get_rooftop_availability or create_booking_session, nor any prerequisite like checking availability first. Usage must be inferred.

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

fetchB
Read-onlyIdempotent
Inspect

Le texte complet d’un résultat de search, par son identifiant.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYes

TDQS

B3.4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false and openWorldHint=false, so the safety profile is fully covered without the description. The description adds one useful contrast, that the response is the *full* text (implying search results are truncated/partial), but says nothing about pagination, size limits, or failure behavior for an unknown id.

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?

A single short sentence with zero filler, and the key dependency (`search`) is front-loaded. It is arguably too terse for a tool with a 0%-documented parameter, but nothing in it is wasted.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/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 burden of describing the return, and 'le texte complet' is only a partial answer for an agent trying to predict the response shape. Combined with a single undocumented parameter, the definition is minimally adequate but leaves real gaps.

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 0%, and the only stated semantics for `id` is 'par son identifiant' — it does clarify that the identifier comes from a `search` result, which is genuinely useful given the bare schema. However, it adds no format, type, or validity guidance beyond that, so it only partially compensates for the coverage gap.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a concrete verb+resource in context: it retrieves 'Le texte complet' (the full text) of a `search` result, keyed by identifier. Naming `search` as the producing sibling is what makes the otherwise generic name `fetch` interpretable, though it doesn't explicitly contrast with the other twelve sibling tools.

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 rather than stated: by tying itself to a `search` result, it signals it is a follow-up call to a prior search. There is no explicit when/when-not guidance, nor an explanation of why an agent would choose this over a `search` result that might already contain the text.

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

get_alternative_datesA
Read-onlyIdempotent
Inspect

Des séjours de même durée, proches des dates demandées, et réellement disponibles. Utile quand create_booking_session ne trouve rien : sur seize chambres, deux jours de décalage suffisent souvent. Rend jusqu’à trois propositions, de la plus proche à la plus lointaine, avec leur prix tout compris.

ParametersJSON Schema
NameRequiredDescriptionDefault
adultsNoNombre d’adultes. 2 par défaut.
end_dateYesDépart souhaité, AAAA-MM-JJ.
start_dateYesArrivée souhaitée, AAAA-MM-JJ.

TDQS

A4.1/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 open-world, so the safety profile is covered. The description adds behavior annotations can't express: it returns up to three ranked proposals (nearest to farthest) and includes all-inclusive pricing, which tells the agent what to expect back.

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?

Three tight sentences, front-loaded with the resource and the fallback trigger, then the return shape. No filler, though the 'sixteen rooms, two days' anecdote is more color than essential instruction.

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?

With no output schema, the description steps in to describe the return value (max three proposals, ordered, with total price) and the fallback context, while annotations cover safety. Only minor gaps remain, such as what happens when nothing is found within a reasonable window.

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%, with each of the three parameters documented in French including the adults default, so the schema carries the burden. The description only implies that start/end define the 'same duration' window and adds no syntax or format detail beyond the schema, making the 3 baseline correct.

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 concrete resource — stays of the same duration near the requested dates that are genuinely available — and frames its output (up to three proposals). It distinguishes itself from create_booking_session by naming that sibling as its fallback trigger, so an agent can tell them apart without opening either schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives an explicit trigger: use it when create_booking_session returns nothing, and reinforces this with the concrete 'two days of shift often suffice across sixteen rooms' heuristic. It doesn't state when NOT to use it (e.g. when exact dates are mandatory), so it stops short of the full when/when-not/alternatives trio.

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

get_booking_sessionC
Read-onlyIdempotent
Inspect

Relit une session de réservation ouverte, par son identifiant.

ParametersJSON Schema
NameRequiredDescriptionDefault
metaNo
bookingYes

TDQS

C2.7/5.0
Behavior2/5

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

Annotations already declare readOnlyHint, idempotentHint, openWorldHint and destructiveHint=false, so the safety profile is fully covered without the description. The only added context is the 'ouverte' qualifier; nothing is said about behavior on a closed or missing session, nor about what is returned.

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?

A single short, front-loaded sentence with no filler. Its brevity borders on under-specification rather than padding, which is the right failure mode for a simple read tool but leaves little to work with.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

No output schema exists, so the description should convey what a successful read returns (session shape, status) or what happens when the session is not open. With nested parameters and no return-value information at all, an agent cannot predict the result of calling it.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% for 2 parameters, so the description must carry the burden. 'Par son identifiant' clarifies that the nested booking.id is the lookup key, but the 'meta' object is never mentioned and the id's format (string/UUID) and the nested structure are left unexplained.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb ('Relit') and resource ('une session de réservation'), scoped to the open session identified by its id. It is reasonably distinguishable from create_booking_session and update_booking_session, but never names those siblings to make the boundary explicit.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives no when-to-use context, no prerequisites, and no alternative tools. The word 'ouverte' implies a constraint (only open sessions), but it is not stated as guidance and no sibling is referenced.

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

get_check_inA
Read-only
Inspect

Le code du portail, le numéro de chambre et le code de la porte — l’hôtel n’a pas de réception 24 h/24 et l’arrivée est autonome. Délivrés SEULEMENT le jour de l’arrivée, à partir de 15 h, et une fois la chambre faite. Sinon, dit ce qui manque et à partir de quand revenir.

ParametersJSON Schema
NameRequiredDescriptionDefault
stay_keyYes

TDQS

A3.7/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false, and openWorldHint=true, so the safety profile is covered. The description adds genuinely useful behavior beyond that: the tool is time- and state-gated, and on failure it returns remediation info rather than codes, which the agent needs to interpret a non-code response.

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 payload (returned codes) is front-loaded ahead of the availability constraints and the fallback behavior, so an agent gets the essential meaning in the first clause. One clause — explaining that the hotel has no 24h reception — is background rather than actionable, keeping it just short of maximally tight.

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?

For a single-parameter, read-only, gated tool with no output schema, the description covers what is returned, when it is available, and the failure mode. It omits only the meaning/source of stay_key and any authentication expectations.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

There is one required parameter (stay_key) with 0% schema description coverage, and the description never mentions it. With no schema documentation and no description-level explanation of what a stay_key is or how to obtain it, the agent gets no semantic support for the sole input.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific resource and enumerates exactly what it returns: the portal code, room number, and door code. This clearly separates it from siblings like get_stay or get_folio, though it never explicitly contrasts itself with an alternative tool by name.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It states the precise condition under which the codes are available — day of arrival, after 15:00, room cleaned — and what happens otherwise (it reports what is missing and when to retry). This is strong conditional context, but it is framed as hotel policy rather than 'use this tool when X, use another when Y', so no sibling alternative is offered.

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

get_folioB
Read-onlyIdempotent
Inspect

La note du séjour : le détail des prestations, ce qui est déjà réglé, et ce qui reste dû.

ParametersJSON Schema
NameRequiredDescriptionDefault
stay_keyYes

TDQS

B3.2/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false, and openWorldHint=true, so the safety profile is fully covered by structured data. The description adds useful output-content context (paid vs. outstanding amounts) but says nothing about auth needs, rate limits, or error behavior beyond the annotations.

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?

A single well-formed sentence that front-loads the resource and lists the three content dimensions. No filler, though it is a descriptive phrase rather than a directive statement of action.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple read-only tool whose annotations cover safety and with no output schema, the description usefully sketches the returned content (services, settled, outstanding). It remains incomplete about the required stay_key and any error or empty-result behavior, so it is adequate but not thorough.

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 0% for the single 'stay_key' parameter, so the schema provides only a name and type. The description does not mention the parameter at all, though the name 'stay_key' is reasonably self-explanatory. Baseline is 3 given one obvious parameter with no added descriptive value.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific resource ('la note du séjour' / the folio) and enumerates its content (services, what's paid, what's owed), so an agent understands what it returns. However it is phrased as a noun-phrase content summary rather than a verb+resource action, and it does nothing to distinguish this from the sibling get_stay/get_check_in.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no guidance on when to use this tool versus alternatives like get_stay or get_check_in, and no prerequisites or conditions are stated. The agent must infer usage purely from the name.

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

get_property_detailsA
Read-onlyIdempotent
Inspect

Tout ce qu’il faut savoir pour DÉCRIRE l’Hôtel-Rooftop Les Voiles à un client : situation, étoiles, horaires d’arrivée et de départ, équipements compris (et ce qui ne l’est pas), petit-déjeuner, rooftop, catégories de chambres, conditions tarifaires et taxe de séjour. Ne contient ni prix ni disponibilité : ceux-ci viennent de create_booking_session.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.7/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false and openWorldHint=true, so the safety profile is covered. The description adds genuine non-structural context by delimiting the payload's negative scope (no prices, no availability), which prevents an agent from assuming booking data is present. It does not mention auth requirements, data currency, or language/locale of the returned text.

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 sentences with no filler: the first front-loads the purpose and enumerates the payload, the second immediately carves out the excluded data and names the sibling that provides it. Every clause earns its place.

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?

With no output schema and no parameters, the description must carry the burden of telling the agent what comes back, and it enumerates the returned fields thoroughly. The read-only, idempotent nature is covered by annotations, so nothing an agent needs to call this correctly 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?

The tool takes zero parameters, so per the rubric the baseline is 4; the schema is empty and there is nothing for the description to disambiguate. The description correctly implies a no-argument fetch of a fixed property.

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 concrete resource (the Hôtel-Rooftop Les Voiles property sheet) and enumerates exactly which facts it returns — location, stars, check-in/out times, included/excluded amenities, breakfast, rooftop, room categories, rate conditions, tourist tax. It also distinguishes itself from the sibling that handles the other half of the domain, create_booking_session, which supplies prices and availability.

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?

Explicitly routes the agent: use this tool to describe the hotel, and do NOT use it for prices or availability — those come from `create_booking_session`. That is both a positive use condition and a named alternative for the excluded case, which is exactly the when/when-not/alternative pattern.

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

get_rooftop_availabilityA
Read-onlyIdempotent
Inspect

Les soirs où une table est libre au Rooftop des Voiles (Toulon), sur une période donnée. Dit pour chaque soir s’il est réservable, et sinon si le rooftop est FERMÉ ou COMPLET — les deux ne se disent pas de la même façon à un client. Le rooftop accueille jusqu’à 5 personnes par table.

ParametersJSON Schema
NameRequiredDescriptionDefault
end_dateYesDernier soir regardé, AAAA-MM-JJ.
party_sizeNoNombre de couverts. 2 par défaut.
start_dateYesPremier soir regardé, AAAA-MM-JJ.

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is covered. The description adds genuine behavioral context beyond that: it returns a per-evening status and explicitly distinguishes FERMÉ (closed) from COMPLET (full) as two different outcomes, plus a 5-person-per-table capacity limit that constrains what can be requested.

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?

Three sentences, front-loaded with the core purpose and scope. Most content earns its place, though the aside about how CLOSED and FULL 'ne se disent pas de la même façon à un client' is slightly conversational for a tool definition.

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?

No output schema exists, so the description must carry the return semantics — and it does: per-evening bookable/closed/full status. Annotations cover safety, params are fully described in the schema, and capacity is noted. Complete enough to call correctly, with only the absence of sibling routing as a minor gap.

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 is 3. The description goes beyond the schema by surfacing the capacity constraint ('jusqu'à 5 personnes par table'), which directly informs the optional party_size parameter and its default — meaningful semantics the schema does not convey.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/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: per-evening table availability at a named venue (Rooftop des Voiles, Toulon) over a date range. It implicitly distinguishes itself as the read/availability check versus the write siblings (create_rooftop_reservation, create_booking_session), but never names an alternative such as get_alternative_dates to sharpen the boundary.

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 only implied (check availability before booking); there is no explicit when-to-use, when-not-to-use, or named alternative. The note about communicating CLOSED vs FULL differently to a client hints at the intent but does not route the agent between sibling tools.

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

get_stayA
Read-onlyIdempotent
Inspect

Relit un séjour déjà réservé : dates, numéro de réservation, chambre attribuée. Exige la clé du séjour (stay_key), celle remise dans la confirmation. Rappel : un séjour réservé par agent est prépayé — il n’est ni annulable, ni modifiable.

ParametersJSON Schema
NameRequiredDescriptionDefault
stay_keyYesLa clé remise dans la confirmation.

TDQS

A3.7/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false, so the safety profile is covered structurally. The description adds real business context beyond that: the stay is prepaid, non-cancellable and non-modifiable, and the key must come from the confirmation.

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?

Three short sentences, front-loaded with the action and return fields, then the required key, then the business caveat. No filler, though the final reminder sentence is tangential to the retrieval action.

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?

With no output schema, the description usefully names the returned fields (dates, booking number, assigned room). Combined with the annotations covering read-only/idempotent semantics, an agent has enough to call this correctly; only the sibling routing remains unaddressed.

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?

There is a single parameter with 100% schema description coverage, so the schema already documents stay_key as 'La clé remise dans la confirmation.' The description repeats that same provenance without adding format, length, or validation detail, so the baseline of 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description gives a specific verb+resource ('Relit un séjour déjà réservé') and enumerates what is returned: dates, booking number, assigned room. It is clear enough to distinguish from read siblings like get_folio or get_check_in, though it never names them or explicitly contrasts its scope.

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?

It states the precondition (the stay_key handed over in the confirmation) and hints at the mutation boundary by noting an agent-booked stay is prepaid and neither cancellable nor modifiable. However, it never says when to prefer this over get_booking_session or get_check_in, so usage is only implied.

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

update_booking_sessionB
Idempotent
Inspect

Enregistre le client qui réserve (booker) sur une session ouverte. Le nom du client est nécessaire pour conclure une réservation ; cet outil permet de le fournir après l’ouverture de la session.

ParametersJSON Schema
NameRequiredDescriptionDefault
idNo
metaNo
bookingNo

TDQS

B3.2/5.0
Behavior3/5

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

Annotations already declare mutation (readOnlyHint false), idempotency, open-world, and non-destructive behavior. The description adds that the session must be open and that the booker is required to finalize a reservation, but omits auth needs or what happens if the session is closed.

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 tightly written sentences: the first defines the action, the second explains its timing and necessity. No redundant information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a mutation tool with nested parameters and no output schema, the description is incomplete: it does not document the required identifiers or the booker object structure, and does not state what happens on success or failure.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 0% and the description only identifies the 'booker' concept, leaving the id, meta, booking.id, and individual booker fields (email, name, phone) unexplained. It adds minimal meaning beyond the raw schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb ('Enregistre') and resource ('le client qui réserve') on an open session, distinguishing it from read/create siblings in context. It does not name the sibling, but the timing ('après l’ouverture') makes the role clear.

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?

Provides timing context ('après l’ouverture de la session') and the need for booker to conclude a reservation, which implies when to call it. However, it does not explicitly contrast with alternatives like create_booking_session or get_booking_session, so the agent must infer.

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

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 12 tool updates
    • First observedcreate_booking_session
    • First observedcreate_rooftop_reservation
    • First observedfetch
    • First observedget_alternative_dates
    • First observedget_booking_session
    • First observedget_check_in
    • First observedget_folio
    • First observedget_property_details
    • First observedget_rooftop_availability
    • First observedget_stay
    • First observedsearch
    • First observedupdate_booking_session

Related MCP Connectors

Related MCP Servers

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources