Calendar and bookings
Event types, free slots and bookings. 4 tools: 3 read, 1 write.
| Tool | Access | What it does |
|---|---|---|
nc_ |
read | List calendar bookings of the organization. |
nc_ |
write | Book an appointment on one of the user’s calendar event types. |
nc_ |
read | The free booking times of one calendar event type: exactly what its public booking page offers (working hours, special days, minimum notice, the booking window, existing bookings and blocked time are already applied). |
nc_ |
read | List the calendar event types (booking link options) configured for the authenticated user. |
nc_list_bookings
Section titled “nc_list_bookings”read Works with mcp:read.
List calendar bookings of the organization. upcoming: true = from now on, soonest first; otherwise newest first. Filter by host (the rep whose calendar it is), status, contact or date range (start time). total is the full match count.
| Argument | Type | Required | Description |
|---|---|---|---|
upcoming |
boolean | Only bookings starting from now, soonest first. | |
host |
string | Rep whose calendar / provider the booking is on: user id, email or name, or “me”. | |
status |
string | e.g. confirmed / cancelled / completed / no_show. | |
contact_id |
string | ||
from |
string | ISO: starting at/after this moment. | |
to |
string | ISO: starting before this moment. | |
limit |
integer | Default: 20 · Min 1 · Max 100 |
|
offset |
integer | Skip this many rows (paging). · Default: 0 · Min 0 |
nc_create_booking
Section titled “nc_create_booking”write Needs mcp:write on an OAuth or MCP-server token.
Book an appointment on one of the user’s calendar event types. Use nc_list_event_types to find an event_type_id. Provide date (YYYY-MM-DD), time (HH:MM, 24h, in the given timezone) and the customer’s name; email/phone optional. Optional provider_id pins the booking to a specific team member’s calendar. Returns the created booking, or an error if the slot conflicts.
| Argument | Type | Required | Description |
|---|---|---|---|
event_type_id |
string | yes | |
date |
string | yes | YYYY-MM-DD |
time |
string | yes | HH:MM, 24h, on the BUSINESS clock (the timezone calendar-availability returned for this event type) |
timezone |
string | Deprecated and ignored: date/time are always read on the business timezone. Leave unset. | |
customer_name |
string | yes | |
customer_email |
string | ||
customer_phone |
string | ||
answers |
object | Answers to the event type booking questions, keyed by question | |
provider_id |
string | Optional service_providers.id to pin the booking to a specific team member |
nc_get_available_slots
Section titled “nc_get_available_slots”read Works with mcp:read.
The free booking times of one calendar event type: exactly what its public booking page offers (working hours, special days, minimum notice, the booking window, existing bookings and blocked time are already applied). Times are HH:MM on the business clock (timezone; now is the current business time). Offer only these times, then book one with nc_create_booking using the same event_type_id and the date and time as listed.
| Argument | Type | Required | Description |
|---|---|---|---|
event_type_id |
string | yes | |
provider_id |
string | Optional service_providers.id: only this team member’s free times (pass the same one to nc_create_booking). | |
days |
integer | How many days ahead, today included. The calendar’s own booking window still applies. · Default: 14 · Min 1 · Max 31 |
|
max_slots |
integer | At most this many times in total, soonest first. · Default: 30 · Min 1 · Max 100 |
nc_list_event_types
Section titled “nc_list_event_types”read Works with mcp:read.
List the calendar event types (booking link options) configured for the authenticated user. Use this to discover event_type_id values when scheduling a booking.
No arguments.
