Skip to main content
Glama

CourtReserve MCP by usefulapi

Get a member's reservations

courtreserve_get_member_reservations
Read-only

A member's upcoming (or dated) court bookings and event registrations: type, start/end, courts, event name and players. For a family member the reply covers the whole family. Give the member id or your own external id. Needs the Member role (Read). GET /api/v1/member/reservations.

Input Schema

NameRequiredDescriptionDefault
limitNoMost rows to return (default 100, max 500). The reply says when rows were left out.
end_dateNoOnly reservations ending on or before this club-local date/time (default: open-ended).
start_dateNoOnly reservations ending on or after this club-local date/time (default: now).
external_idNoThe member's id in your own system (the member's External Id).
organization_member_idNoCourtReserve member id (courtreserve_list_members). One of this or external_id is required.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A3.7/5.0
Behavior4/5

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

Annotations already cover the safety profile (readOnly, non-destructive), and the description adds genuinely non-obvious behavior: that a family member id returns the whole family's reservations, and that the Member (Read) role is required. The underlying endpoint is disclosed too. It does not describe pagination behavior itself, leaving that to the schema.

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 what is returned, then the identity rule, then the permission requirement. The field enumeration earns its place; nothing is padded. Slightly telegraphic phrasing ('type, start/end, courts') but efficient.

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 compensates by listing the returned fields, and it covers the identity and permission prerequisites. For a read-only, five-parameter filtered lookup this is close to complete; only the sibling-selection guidance is missing.

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 the schema already documents limit, date bounds and the two id parameters in detail. The description only restates the id choice and the default 'upcoming' window, adding marginal meaning beyond the structured fields. Baseline 3 is appropriate.

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 the resource precisely (a member's court bookings and event registrations) and even enumerates the returned fields (type, start/end, courts, event name, players). It is clearly member-scoped, which implicitly separates it from courtreserve_list_reservations, but it never names that sibling to make the distinction explicit.

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?

'Upcoming (or dated)' and 'give the member id or your own external id' imply the usage context, and the required Member (Read) role is stated. However, there is no explicit guidance on when to prefer this over courtreserve_list_reservations or courtreserve_list_event_registrations, so the agent must infer the choice.

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.