live · Productivity & Work · JSON · API for agents
List all duty rosters (当番表) the user has. Returns each roster's name, member count, and group count; the currently displayed roster is marked. Use to see what rosters exist or before switching rosters.
{
"name": "list_schedules",
"kind": "read",
"impl": "imperative",
"description": "List all duty rosters (当番表) the user has. Returns each roster's name, member count, and group count; the currently displayed roster is marked. Use to see what rosters exist or before switching rosters.",
"inputSchema": {
"type": "object",
"properties": {}
},
"page": "/"
}Get who is currently on duty for the active duty roster: each task group paired with its assigned member, plus the current rotation step. Use when the user asks who is on duty now.
{
"name": "get_current_assignments",
"kind": "read",
"impl": "imperative",
"description": "Get who is currently on duty for the active duty roster: each task group paired with its assigned member, plus the current rotation step. Use when the user asks who is on duty now.",
"inputSchema": {
"type": "object",
"properties": {}
},
"page": "/"
}Get the full setup of the active duty roster: member names, task groups, rotation mode (manual or date-based), and assignment mode. Use before editing or to explain how the roster is configured.
{
"name": "get_schedule_details",
"kind": "read",
"impl": "imperative",
"description": "Get the full setup of the active duty roster: member names, task groups, rotation mode (manual or date-based), and assignment mode. Use before editing or to explain how the roster is configured.",
"inputSchema": {
"type": "object",
"properties": {}
},
"page": "/"
}Get the public share URL of the active roster if it has already been shared. Does NOT create or publish a new link — sharing must be done by the user via the share button.
{
"name": "get_share_link",
"kind": "read",
"impl": "imperative",
"description": "Get the public share URL of the active roster if it has already been shared. Does NOT create or publish a new link — sharing must be done by the user via the share button.",
"inputSchema": {
"type": "object",
"properties": {}
},
"page": "/"
}Switch the active duty roster to the one with the given name. Use the exact roster name as shown by list_schedules.
{
"name": "switch_schedule",
"kind": "action",
"impl": "imperative",
"description": "Switch the active duty roster to the one with the given name. Use the exact roster name as shown by list_schedules.",
"inputSchema": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "Exact name of the roster to switch to"
}
},
"required": [
"name"
]
},
"page": "/"
}Move the active roster's rotation one step forward or backward. Only works for manually-rotated rosters; date-based rosters advance automatically by date and cannot be moved manually.
{
"name": "advance_rotation",
"kind": "action",
"impl": "imperative",
"description": "Move the active roster's rotation one step forward or backward. Only works for manually-rotated rosters; date-based rosters advance automatically by date and cannot be moved manually.",
"inputSchema": {
"type": "object",
"properties": {
"direction": {
"type": "string",
"enum": [
"forward",
"backward"
],
"description": "forward = next turn, backward = previous turn"
}
},
"required": [
"direction"
]
},
"page": "/"
}Switch how the active roster is displayed: cards, table, or calendar.
{
"name": "change_view",
"kind": "action",
"impl": "imperative",
"description": "Switch how the active roster is displayed: cards, table, or calendar.",
"inputSchema": {
"type": "object",
"properties": {
"view": {
"type": "string",
"enum": [
"cards",
"table",
"calendar"
],
"description": "Display mode"
}
},
"required": [
"view"
]
},
"page": "/"
}Create a new duty roster from a built-in template, identified by the template's name. The new roster becomes the active one.
{
"name": "create_schedule",
"kind": "write",
"impl": "imperative",
"description": "Create a new duty roster from a built-in template, identified by the template's name. The new roster becomes the active one.",
"inputSchema": {
"type": "object",
"properties": {
"template": {
"type": "string",
"description": "Name of the template to create from"
}
},
"required": [
"template"
]
},
"page": "/"
}Update the active roster's settings: name, pinned state, and/or assignment mode (member = one person per group, task = one person per task). Provide only the fields you want to change.
{
"name": "update_schedule",
"kind": "write",
"impl": "imperative",
"description": "Update the active roster's settings: name, pinned state, and/or assignment mode (member = one person per group, task = one person per task). Provide only the fields you want to change.",
"inputSchema": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "New roster name"
},
"pinned": {
"type": "boolean",
"description": "Pin or unpin the roster"
},
"assignment_mode": {
"type": "string",
"enum": [
"member",
"task"
],
"description": "Assignment mode"
}
}
},
"page": "/"
}Duplicate the active roster as a new copy (members, groups, and settings are copied; the copy becomes active).
{
"name": "duplicate_schedule",
"kind": "action",
"impl": "imperative",
"description": "Duplicate the active roster as a new copy (members, groups, and settings are copied; the copy becomes active).",
"inputSchema": {
"type": "object",
"properties": {}
},
"page": "/"
}Add a member (a person or team) to the active duty roster by name. A display color is assigned automatically.
{
"name": "add_member",
"kind": "write",
"impl": "imperative",
"description": "Add a member (a person or team) to the active duty roster by name. A display color is assigned automatically.",
"inputSchema": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "Name of the member to add"
}
},
"required": [
"name"
]
},
"page": "/"
}Remove a member from the active duty roster by name.
{
"name": "remove_member",
"kind": "write",
"impl": "imperative",
"description": "Remove a member from the active duty roster by name.",
"inputSchema": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "Name of the member to remove"
}
},
"required": [
"name"
]
},
"page": "/"
}Update a member of the active roster by name: rename and/or mark them as resting (skip = excluded from rotation) or active. Provide name plus the fields to change.
{
"name": "update_member",
"kind": "write",
"impl": "imperative",
"description": "Update a member of the active roster by name: rename and/or mark them as resting (skip = excluded from rotation) or active. Provide name plus the fields to change.",
"inputSchema": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "Current name of the member"
},
"new_name": {
"type": "string",
"description": "New name (rename)"
},
"skip": {
"type": "boolean",
"description": "true = rest (exclude from rotation), false = active"
}
},
"required": [
"name"
]
},
"page": "/"
}Set the active roster's rotation to a specific turn number (0 = initial). Only for manually-rotated rosters; date-based rosters advance automatically.
{
"name": "set_rotation",
"kind": "write",
"impl": "imperative",
"description": "Set the active roster's rotation to a specific turn number (0 = initial). Only for manually-rotated rosters; date-based rosters advance automatically.",
"inputSchema": {
"type": "object",
"properties": {
"rotation": {
"type": "number",
"description": "Turn number, 0 or greater"
}
},
"required": [
"rotation"
]
},
"page": "/"
}Configure how the active roster rotates. mode 'manual' = advance by hand; mode 'date' = auto-advance by date (requires start_date as YYYY-MM-DD and cycle_days). Optionally skip Saturdays / Sundays / Japanese holidays. Provide only the fields you want to change.
{
"name": "configure_rotation",
"kind": "action",
"impl": "imperative",
"description": "Configure how the active roster rotates. mode 'manual' = advance by hand; mode 'date' = auto-advance by date (requires start_date as YYYY-MM-DD and cycle_days). Optionally skip Saturdays / Sundays / Japanese holidays. Provide only the fields you want to change.",
"inputSchema": {
"type": "object",
"properties": {
"mode": {
"type": "string",
"enum": [
"manual",
"date"
],
"description": "Rotation mode"
},
"start_date": {
"type": "string",
"description": "Start date YYYY-MM-DD (date mode)"
},
"cycle_days": {
"type": "number",
"description": "Days per rotation, positive integer (date mode)"
},
"skip_saturday": {
"type": "boolean"
},
"skip_sunday": {
"type": "boolean"
},
"skip_holidays": {
"type": "boolean"
}
}
},
"page": "/"
}Open the browser print dialog for the active roster in its current view (cards / table / calendar).
{
"name": "print_schedule",
"kind": "action",
"impl": "imperative",
"description": "Open the browser print dialog for the active roster in its current view (cards / table / calendar).",
"inputSchema": {
"type": "object",
"properties": {}
},
"page": "/"
}