Create Total Hours booking
Book a total number of hours across a date range and let Resource Guru place them.
MCP tool resource_guru_write → create_total_hours_booking
write Confirm
Resource Guru fits the hours into free time inside the window. Hours that do not fit go to the waiting list and the response shows the remainder. A Total Hours booking covers one resource and cannot repeat, so use a placeholder for work you will staff later. By default you confirm each call; you can switch that off for this tool.
Parameters
| Name | Type | Description |
|---|---|---|
| resource_id integer required | integer | One person or placeholder, from list_resources. |
| start_date string required | string | First day of the window, YYYY-MM-DD. |
| end_date string required | string | Last day of the window, YYYY-MM-DD. |
| total_minutes integer required | integer | Total effort in minutes across the whole window. |
| effort_flexibility string required | string | How freely hours may be spread: fixed, limited or full. |
| project_id integer | integer | Project ID from list_projects. |
| details string | string | Notes on the booking. |
tools/call
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "resource_guru_write",
"arguments": {
"operation": "create_total_hours_booking",
"arguments": {
"resource_id": 1,
"start_date": "start date",
"end_date": "end date",
"total_minutes": 1,
"effort_flexibility": "effort flexibility"
}
}
}
} Example response
{
"content": [
{
"type": "text",
"text": "{ ... same JSON as structuredContent ... }"
}
],
"structuredContent": {
"id": 48213390,
"resource_ids": [
18300
],
"start_date": "2026-11-02",
"end_date": "2026-12-12",
"total_minutes": 4800,
"allocated_minutes": 4800,
"waiting_minutes": 0,
"project_id": 703110
},
"isError": false
}