Skip to main content
Glama

Find free calendar slots

find_free_slots
Read-onlyIdempotent

AI Agents (inside one system): Use to see when a calendar of an AI agent's system still has room, such as before proposing a time to a customer, for at most 31 days at a time. Not for what is booked already (use search_records on appointments).

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "system": "<system>",
      "calendar": "<calendar>",
      "from": "<from>",
      "to": "<to>"
    },
    "name": "find_free_slots"
  }
}

Input Schema

NameRequiredDescriptionDefault
toYesThe last day or moment, ISO 8601, at most 31 days later; a day counts in full.
fromYesThe first day or moment, ISO 8601, such as 2026-11-02.
userNoOnly the slots of this user on a shared calendar, by the id describe_record_type gives with include users.
systemYesWhich AI agent: the system's id from get_ai_agent_options, or the name of the system or its connection. Ask the person which AI agent they mean unless they named it in this conversation; never pick one yourself.
calendarYesThe id of the calendar, as describe_record_type gives it with include stages on appointments.
time_zoneNoThe IANA time zone to give the slots in, such as Europe/Amsterdam.

Output Schema

NameRequiredDescriptionDefault
noticeYes
resultYes
statusYes
systemIdYes
operationYes
truncatedYes
systemNameYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • changedInput schema / properties / system / description
      Previous value: -"Which AI agent: the system's id from get_ai_agents_info, or the name of the system or its connection. Ask the person which AI agent they mean unless they named it in this conversation; never pick one yourself."New value: +"Which AI agent: the system's id from get_ai_agent_options, or the name of the system or its connection. Ask the person which AI agent they mean unless they named it in this conversation; never pick one yourself."
  2. Added

TDQS

A3.9/5.0
Behavior3/5

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

The annotations already declare readOnlyHint, idempotentHint, destructiveHint=false and openWorldHint, so the safety profile needs no restatement. The description adds the 31-day window limit, but that limit is also stated in the schema description for 'to', and the description says nothing about output shape, pagination, or what happens when no slots exist. With annotations carrying the behavior burden, a 3 is appropriate.

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 guidance is front-loaded into two compact sentences, with the exclusion placed last, and there is no filler. The parenthetical '(inside one system)' and the repetition of 'AI agent's system' slightly cloud the opening clause, which keeps it from being a 5.

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?

Output schema exists, so return values need not be explained, and all six parameters are documented in the schema. The description covers purpose, the customer-proposal use case, the booking exclusion, and the date-range cap, and only a note on behavior when the range exceeds 31 days or yields no slots could be added.

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%, and each parameter already documents its own format, provenance and edge cases (ISO 8601, id source, IANA time zone, day counts in full). The description adds no parameter-level meaning beyond repeating the 31-day cap, so this matches the baseline 3 for a fully documented 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?

It states a specific verb and resource: finding free slots on an AI agent's calendar, and it distinguishes this from search_records, which returns what is already booked. The phrasing 'Use to see when a calendar of an AI agent's system still has room' is awkward and indirect, but the agent can still tell what the tool returns and how it differs from the sibling search_records.

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 an explicit trigger ('before proposing a time to a customer'), an explicit exclusion ('Not for what is booked already'), and names the alternative tool to use instead ('use search_records on appointments'). It also states the 31-day-at-a-time operating limit, which is the main constraint on how the agent should call it.

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