Resources
The MCP integration is in preview - tools, parameters, and behavior may change between releases.
The resource tools cover three concerns: looking up resources and their metadata, checking availability for a known resource, and discovering unknown resources that match a job's requirements.
List resources
Tool: list_resources
Returns all resources visible to the API key, with basic information.
| Parameter | Type | Required | Description |
|---|---|---|---|
displayNameFilter | string | No | Filter by resource display name (partial match) |
Example prompt
"List all resources."
Get resource details
Tool: get_resource_details
Returns detailed information for a single resource: skills, capacity, calendar, and contact details.
| Parameter | Type | Required | Description |
|---|---|---|---|
resourceDisplayName | string | Yes | The display name of the resource |
capacityStartDate | string | No | Start date for capacity and calendar information (ISO 8601) |
capacityEndDate | string | No | End date for capacity and calendar information (ISO 8601) |
Example prompt
"Get details for resource John Smith."
Get resource availability
Tool: get_resource_availability
Returns all availability periods (both available and unavailable) for one resource over a time range. Periods can be any length - this is the raw availability timeline.
Use this only when the assistant needs to render or reason over a complete calendar view. For "find me a free slot", prefer find_available_slots.
| Parameter | Type | Required | Description |
|---|---|---|---|
resourceDisplayName | string | Yes | The display name of the resource |
startDateTime | string | Yes | Start date and time (ISO 8601) |
endDateTime | string | Yes | End date and time (ISO 8601) |
timeZone | string | Yes | IANA timezone identifier (e.g. Europe/Brussels) |
Example prompt
"Show me all availability periods for John Smith next week."
Find available slots
Tool: find_available_slots
Returns slots of a specified duration that fit inside the resource's availability over a date range. This is the preferred tool for scheduling questions of the form "when is X free for N hours?".
| Parameter | Type | Required | Description |
|---|---|---|---|
resourceDisplayName | string | Yes | The display name of the resource |
startDate | string | Yes | Start of the search range (ISO 8601) |
durationInMinutes | number | Yes | Duration of the slot, e.g. 30, 60, 120 |
timeZone | string | Yes | IANA timezone identifier |
endDate | string | No | End of the search range (defaults to the same day as startDate) |
Example prompt
"When is John Smith available for a 2-hour meeting this week?"
Check time slot availability
Tool: check_time_slot_availability
Validates whether one specific time window is available for one resource. Returns a yes/no answer plus any conflicting periods.
| Parameter | Type | Required | Description |
|---|---|---|---|
resourceDisplayName | string | Yes | The display name of the resource |
startDateTime | string | Yes | Start of the slot to check (ISO 8601) |
timeZone | string | Yes | IANA timezone identifier |
endDateTime | string | No | End of the slot (defaults to one hour after startDateTime) |
Example prompt
"Is John Smith available on January 15th at 2 PM?"
Get recommendations
Tool: get_recommendations
The discovery tool. Finds resources matching a set of skills, roles, and/or location, and returns the best available slots for each candidate. Use it when the user does not yet know which resource should do the work.
For moving an existing appointment to another resource, use reschedule_appointment - not get_recommendations.
Time window
| Parameter | Type | Required | Description |
|---|---|---|---|
startDate | string | Yes | Start of the availability search window in UTC (ISO 8601) |
endDate | string | Yes | End of the availability search window in UTC (ISO 8601) |
timeZone | string | Yes | IANA timezone identifier |
Filters
| Parameter | Type | Required | Description |
|---|---|---|---|
requirements | string | No | Skills filter - what the resource can do (e.g. plumbing, electrical work, HVAC). Comma-separated. |
resourceTypes | string | No | Role filter - what the resource is (e.g. technician, engineer, driver). Comma-separated. |
duration | string | No | Required duration in ISO 8601 format (e.g. PT2H, PT30M) |
granularity | string | No | Time-slot granularity in ISO 8601 format (e.g. PT15M, PT30M, PT1H) |
Location
| Parameter | Type | Required | Description |
|---|---|---|---|
locationAddress | string | No | Address string used for proximity scoring |
locationCountry | string | No | Country code for geocoding (e.g. US, BE, GB) |
locationLatitude | number | No | Latitude (alternative to locationAddress) |
locationLongitude | number | No | Longitude (alternative to locationAddress) |
locationMode | string | No | home (default) or actual - base proximity on home address or current GPS location |
maxDistanceKm | number | No | Maximum distance in kilometers for the resource filter |
Example prompt
"Who is available this week for a 2-hour job near London (UK) with the skill electrician?"