Create a draft shift
Add a shift to a location as a draft that only managers see.
MCP tool deputy_write → create_shift
write Confirm
Adds one shift as a draft, so it shows to managers and not to the team until publish_shifts runs. Leave employee_id out to create an open shift. Returns the shift_id. It never notifies anyone. By default you confirm each call; you can switch that off for this tool.
Parameters
| Name | Type | Description |
|---|---|---|
| location_id integer required | integer | Location ID from list_locations. |
| date date required | date | Day of the shift, YYYY-MM-DD. |
| start string required | string | Start time, HH:MM. |
| end string required | string | End time, HH:MM. |
| employee_id integer | integer | Employee ID from list_employees. Default: open shift. |
tools/call
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "deputy_write",
"arguments": {
"operation": "create_shift",
"arguments": {
"location_id": 1,
"date": "2026-10-01",
"start": "start",
"end": "end"
}
}
}
} Example response
{
"content": [
{
"type": "text",
"text": "{ ... same JSON as structuredContent ... }"
}
],
"structuredContent": {
"shift_id": 733,
"date": "2026-10-26",
"start": "09:00",
"end": "17:00",
"employee": "Ana Lopez",
"state": "draft"
},
"isError": false
}