To-dos and time
Keep a ticket's checklist and record the time spent on it.
With these tools an assistant can read and add to a ticket's to-do checklist, tick items off, and log the minutes someone worked on the ticket.
| Tool | What it does | Role needed | Changes data? |
|---|---|---|---|
list_todos | Lists a ticket's to-do checklist, in order | viewer | read-only |
add_todo | Adds a to-do to the end of the checklist, optionally assigned and due | editor | adds |
complete_todo | Marks a to-do done, or not done | editor | adds |
log_time | Records minutes worked on a ticket, optionally billable | editor | adds |
list_time_logs | Lists time logged on a ticket, newest first, with the total | viewer | read-only |
Source: _TOOLS in services/runtime/src/runtime/mcp/tools.py, handlers
_list_todos, _add_todo, _complete_todo, _log_time and _list_time_logs.
Every tool here takes ticket_id. A ticket you cannot see, or one that does not
exist, gets the same "not found" answer.
list_todos
- Returns
todosandtotal. - At most 200 to-dos come back.
totalis the full count, so a largertotalthan rows means the list was cut.
Source: _list_todos and _TODOS_MAX in
services/runtime/src/runtime/mcp/tools.py.
add_todo
- Inputs:
title(1 to 240 characters) is required.assignee_idanddue_atare optional. assignee_idmust be an active member of the workspace. Take it fromlist_members. Anyone else is refused.due_atmust be an ISO-8601 date-time with a UTC offset.- Returns the new to-do as
list_todosshows it, including the assignee's name.
Source: _add_todo and _as_read_back in
services/runtime/src/runtime/mcp/tools.py.
complete_todo
- Inputs:
ticket_idandtodo_id.donedefaults to true; senddone: falseto un-tick an item. - Changes nothing but the done flag, so calling it twice is safe.
- Returns the to-do as
list_todosshows it.
log_time
- Inputs:
minutesis required, from 1 to 43,199 (just under 30 days).descriptionis optional, up to 600 characters.billabledefaults to false. - Returns the new entry as
list_time_logsshows it.
Source: _log_time and _TIME_LOG_MINUTES_MAX in
services/runtime/src/runtime/mcp/tools.py.
list_time_logs
- Returns
total_minutes,entries_totalandentries, newest first. - At most 200 entries come back.
total_minutesandentries_totalalways cover every entry, including any that were cut.
Source: _list_time_logs and _TIME_LOGS_MAX in
services/runtime/src/runtime/mcp/tools.py.