Bookwhen MCP server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| BOOKWHEN_API_KEY | Yes | Your API key, sent as the HTTP Basic username with a blank password. | |
| BOOKWHEN_BASE_URL | No | The base URL for the Bookwhen API. Defaults to https://api.bookwhen.com/v2. | https://api.bookwhen.com/v2 |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| list_eventsA | List events (classes, courses, workshops) with date, attendee limit and count, tags and location ID. The API returns events from today onwards unless |
| get_eventA | One event with its location, every ticket type with availability (number issued, taken, spaces left, cost), its leaders and its attachments, side-loaded in a single call. |
| list_event_ticketsB | Every ticket type for one event with availability: number issued (null = no limit), number taken (booked or reserved in checkout), spaces left, availability window, cost, and whether it is a group ticket (min/max people) or a course ticket (books all events in the course). |
| get_ticketC | One ticket type with its availability and cost, and the event(s) it books onto (all events in the course for a course ticket). |
| list_locationsA | Venues with address, extra directions, coordinates and a static map image URL. Optionally filter by text in the address or in the additional info. |
| get_locationB | One venue: address, additional info, coordinates and map image URL. |
| list_class_passesA | Class passes (pre-purchased bundles of bookings) with usage allowance, type (personal or any attendee), number available and day restriction. Filters: title or details text, usage type, and cost, usage_allowance or use_restricted_for_days as an exact value or comparison (gt, gte, lt, lte, eq). Cost values are in the currency's smallest unit, as in the spec's example filter[cost][gte]=2000. |
| list_leadersA | Leaders (published admin profiles: the people running or teaching sessions) with name, job title, location, bio, website and social links. Their contact email and phone are only returned with include_contact_details. |
| get_attachmentB | One file attached to an event: title, file name, type, size and the download URL (the spec says to use this URL rather than the one it forwards to). |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 9 tools
Tools are largely distinct, with clear get/list pairs for events, tickets, and locations. get_event side-loads tickets, leaders, and attachments that other specialized tools also expose, creating mild overlap, but descriptions help an agent choose correctly.
All tool names use consistent snake_case with get_ or list_ prefixes and follow a predictable verb_noun pattern. There are no mixed conventions or vague verbs.
With 9 tools, the server is well-scoped for a read-oriented event-booking query surface. Each tool covers a distinct resource or action without obvious redundancy.
The surface covers read/query operations across events, tickets, locations, leaders, attachments, and class passes. However, it lacks any create, update, delete, or booking/checkout operations, which is a notable lifecycle gap for a booking platform.