Skip to main content
Glama

Make a booking link

booking_links_create

Make a link offering times free_times_find found for a named meeting, for the person to send to one guest. The guest, with no account, picks one of these times in their own time zone and gives a name and address; the time is checked again against every calendar and the person's working hours, buffers, notice and daily maximum, and booked once, in the calendar the person named to receive bookings; a time no longer free is replaced by others up to the link's last, within those hours - Monday to Friday 09:00-17:00 where they stored none. The answer names the link's id and when it closes, 14 days after it is made, and a time after then is refused. The page a guest opens names nobody but the meeting, so put the person's own name in subject, e.g. Intro call with Sam Lee. An event holds its time as its provider's own free/busy shows it: on Google unless shown as available or declined - an invitation not yet answered or answered maybe included - and on Outlook only when shown busy or away, so an Outlook tentative answer leaves its time free; a cancelled event holds none.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
timesYesEach time offered, its start with its offset.
minutesNoMeeting length in minutes; the stored one where omitted.
subjectYesThe meeting's name, as whoever opens the link reads it.
guestZoneNoThe time zone of the guest the link is for, only as the person names it; the answer gives each time in it under guest too.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A3.8/5.0
Behavior5/5

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

Annotations only declare the generic write/non-destructive profile, and the description goes well beyond that: 14-day expiry and refusal of later times, re-validation against calendars, working hours, buffers, notice and daily maximum, the fallback Mon-Fri 09:00-17:00 hours, and the Google vs Outlook free/busy semantics. This is exactly the operational context an agent cannot get from structured fields.

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

Conciseness2/5

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

The content is delivered as a single dense block with spliced clauses and dashes, so it is hard to scan and front-load. Much of the behavior is worth stating, but the run-on prose and lack of any structure make the useful parts costly to extract.

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 carries the return burden and does state that the answer gives the link id and close time. It also covers expiry and booking behavior, though it never mentions the actual link/URL the guest receives, leaving one small return-value 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 adds real meaning beyond the schema: it tells the agent to embed the host's name in subject ("Intro call with Sam Lee") and clarifies that times are re-checked and guestZone surfaces each time in the guest's zone, neither of which the schema states.

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 concrete verb and resource ("Make a link") with the artifact's shape: times from free_times_find, a named meeting, one guest. It is distinguishable from sibling tools like polls_create or booking_page_set in intent, but it never names or contrasts those siblings directly.

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 implies a prerequisite chain ("times free_times_find found") and describes the downstream guest flow, so usage is inferable. However there is no explicit when-to-use / when-not guidance versus the poll and booking-page siblings, leaving the agent to infer selection.

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