Enterprise Reservation Tools For MCP
PrimeCal exposes organisation-aware reservation operations through MCP so agents can work with the enterprise reservation system without bypassing application rules.
What These Tools Are For
Use these tools when an agent needs to:
- discover which organisations it can access
- switch the active organisation safely
- list resource types and resources inside that organisation
- calculate availability with the same blocking rules used by public booking
- create or review reservations without handling Stripe directly
Tool Surface
Organisation Context
primecal_organisations_listprimecal_organisations_active_setprimecal_organisations_billing_status_getprimecal_organisations_billing_settings_updateprimecal_organisations_stripe_onboardingLink_createprimecal_organisations_payments_debug_get
These tools let the agent discover and switch the active organisation. Later resource and reservation calls inherit that active organisation automatically.
The billing tools are admin-only and are intended for:
- checking whether Stripe is connected and usable
- updating billing-safe defaults such as the organisation currency
- preparing a Stripe onboarding handoff URL
- debugging payment-backed reservation state without exposing Stripe secrets
Reservation Catalog And Availability
primecal_resourceTypes_listprimecal_resources_listprimecal_reservations_availability_listcheck_pool_capacitysimulate_pool_pricingconfigure_resource_pool_mode
Availability uses the same domain logic as public booking:
- existing reservations
- resource-type scoping
- managed-user calendar blocking
Pool-specific MCP additions:
check_pool_capacityevaluates a pool resource type and returns bothavailableResourceCountandavailableQuantitysimulate_pool_pricingsupports eitherstartTimeplusendTimeor a directdurationHoursinput for quote-only scenariosconfigure_resource_pool_modelets an admin-scoped agent switch a resource type betweenSINGLE_RESOURCE,POOL, andBOTH
Reservation Reads And Writes
primecal_reservations_listprimecal_reservations_getprimecal_reservations_create
primecal_reservations_create is intentionally narrow:
- it creates reservations only
- it does not create Checkout sessions
- it does not expose Stripe account identifiers or webhook state
Permission And Scope Model
Agent access is constrained at multiple layers:
- the agent API key authenticates the call
- the agent permission model controls which action keys are allowed
- organisation and resource-type scopes reduce what each tool can target
- the underlying PrimeCal services still enforce owner and role boundaries
OrganisationUser requirement: primecal_reservations_create ultimately calls POST /api/reservations. The backend requires the authenticated user (the agent owner) to have an OrganisationUser record in the target organisation. Without it the call returns 403 Forbidden. The owner's activeOrganisationId must also match the organisation that owns the resource type being reserved. Ensure the agent owner has organisation membership before calling reservation-write tools.
Supported enterprise reservation scopes:
organisationIdsresourceTypeIds