booking_chest
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| CALCOM_API_KEY | Yes | Cal.com API key (starts with cal_) | |
| CALCOM_BASE_URL | No | Cal.com instance URL (default: https://api.cal.com) | https://api.cal.com |
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
} |
| logging | {} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| extensions | {
"io.modelcontextprotocol/ui": {}
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| get_my_profileA | Get current user profile (name, email, timezone, bio, defaultScheduleId, etc.). |
| update_my_profileA | Update current user profile (PATCH — send only fields to change). |
| list_timezonesA | List all 7,072 available city/timezone entries (no pagination — returns all at once). |
| refresh_api_keyA | Rotate the current API key. WARNING: The old key is invalidated IMMEDIATELY. The response contains the new key. You must update CALCOM_API_KEY in your environment before making any further requests. |
| list_schedulesB | List all availability schedules. |
| get_scheduleB | Get a schedule by ID. |
| create_scheduleC | Create an availability schedule. |
| update_scheduleB | Update a schedule (PATCH — send only fields to change). |
| delete_scheduleC | Delete a schedule. |
| list_event_typesA | List all event types (meeting types). |
| get_event_typeB | Get an event type by ID. |
| create_event_typeC | Create an event type (meeting type / booking page). |
| update_event_typeB | Update an event type (PATCH — partial update). |
| delete_event_typeC | Delete an event type. |
| list_event_type_webhooksA | List webhooks for a specific event type. |
| create_event_type_webhookC | Create a webhook for a specific event type. |
| update_event_type_webhookC | Update an event type webhook. |
| delete_event_type_webhookC | Delete an event type webhook. |
| list_private_linksB | List private booking links for an event type (Enterprise). |
| create_private_linkB | Create a private booking link for an event type (Enterprise). At least one of expires_at or max_usage_count is required. |
| update_private_linkC | Update a private booking link (Enterprise). |
| delete_private_linkB | Delete a private booking link (Enterprise). |
| get_available_slotsA | Get available booking slots for an event type. IMPORTANT: Use start/end (NOT startTime/endTime — those return a 400 error). |
| reserve_slotA | Temporarily reserve a slot before creating a booking. slotId is REQUIRED (use the slot ID from get_available_slots response). Reservation expires after a short window — create the booking before it lapses. |
| delete_slot_reservationC | Cancel a slot reservation. |
| list_bookingsC | List bookings with optional filters. |
| get_bookingB | Get a booking by ID. |
| create_bookingC | Create a booking (schedule a meeting). |
| cancel_bookingC | Cancel a booking. |
| reschedule_bookingB | Reschedule a booking to a new time slot. |
| mark_booking_no_showA | Mark one or more attendees as no-shows for a booking. |
| list_calendarsA | List connected calendars and destination calendar. Returns connectedCalendars (list of connected accounts) and destinationCalendar (where new bookings are created). Check isSelected on each calendar entry to see which are used for conflict detection. |
| get_calendar_busy_timesA | Get busy time ranges across connected calendars. calendars_to_load is REQUIRED (API returns 400 without it). |
| get_calendar_connect_urlB | Get OAuth authorization URL to connect a calendar. |
| check_calendar_connectionA | Check if a calendar type is connected. |
| set_destination_calendarA | Set the destination calendar where new bookings are created (PUT only, no GET). To retrieve current destination, use list_calendars() and check destinationCalendar field. |
| add_selected_calendarA | Mark a calendar for conflict detection (POST only, no GET). To see selected status, use list_calendars() and check connectedCalendars[].calendars[].isSelected. |
| remove_selected_calendarA | Remove a calendar from conflict detection. |
| save_ics_feedC | Subscribe to external ICS calendar feeds. |
| check_ics_feedC | Check ICS calendar feed subscription status. |
| list_webhooksA | List all user-level webhooks. |
| get_webhookB | Get a webhook by ID. |
| create_webhookA | Create a user-level webhook for real-time event notifications. IMPORTANT: Use |
| update_webhookA | Update a webhook (PATCH — partial update). |
| delete_webhookC | Delete a webhook. |
| list_teamsA | List all teams the current user belongs to. |
| get_teamB | Get team details by ID. |
| create_teamA | Create a new team. WARNING: Requires Stripe billing configuration. Will fail with InternalServerError if Stripe is not set up. For most use cases, use existing teams. |
| update_teamB | Update team details (PATCH — partial update). |
| delete_teamC | Delete a team. |
| list_team_bookingsC | List all bookings for a team's event types. |
| list_team_schedulesB | List availability schedules for team members. |
| list_team_membersB | List all members of a team with their roles. |
| create_team_membershipC | Add a user to a team. |
| get_team_membershipB | Get a team membership by ID. |
| update_team_membershipA | Update a team membership (PATCH — role, accepted, disableImpersonation). |
| delete_team_membershipB | Remove a member from a team. |
| list_team_event_typesB | List event types for a team. |
| create_team_event_typeB | Create a team event type. scheduling_type is REQUIRED for team event types (API returns validation error without it). |
| get_team_event_typeA | Get a team event type by ID. |
| update_team_event_typeA | Update a team event type (PATCH — partial update). |
| delete_team_event_typeC | Delete a team event type. |
| list_team_event_type_webhooksA | List webhooks for a team event type. Note: There are NO team-level webhooks — webhooks are always scoped to event types. |
| create_team_event_type_webhookC | Create a webhook for a team event type. |
| get_team_event_type_webhookB | Get a webhook for a team event type. |
| update_team_event_type_webhookC | Update a team event type webhook. |
| delete_team_event_type_webhookC | Delete a team event type webhook. |
| create_team_inviteC | Generate a team join invite link. Returns a token and inviteLink. Share the inviteLink with users to let them join the team. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/dsddet/booking_chest'
If you have feedback or need assistance with the MCP directory API, please join our Discord server