bulk_delete
ChatGPTPermanently delete up to 50 tasks in one call. This cannot be undone. Items are processed independently, deepest first, so a parent and its own children can be deleted together; a failing item does not stop the others. Run it first with dry_run true: it returns the exact per-item outcome (including how many nested tasks each delete removes) and changes nothing, and needs no confirmation. Then set confirm to true only after the user explicitly confirms. A task with nested tasks needs include_subtasks true unless its children are also in the list.
bulk_move
ChatGPTMove up to 50 tasks in one call, applied in order, each one independently: a failing item does not stop or undo the others. Each result has status ok or error with a code (see move_task). The call is only an error when nothing succeeded; check failed otherwise. Use dry_run to see the exact outcome without changing anything.
bulk_update_status
ChatGPTSet the same status on up to 50 tasks in one call, each independently. Done completes open subtasks and InProgress starts not-started ones, exactly like update_task; Blocked and Archived change only the task itself. Container (bucket) tasks stop that cascade at their boundary. Hard to undo: the previous statuses are not recorded, and Done or NotStarted on a parent changes every nested task. Confirm with the user before using it on parents or projects.
complete_task
ChatGPTMark a task as Done via the app's completion flow. Set include_subtasks to also complete everything nested under it (use for projects or parent tasks).
create_task
ChatGPTCreate a task or project. Optionally nest it under a parent task/project via parent_id. Dates are ISO 8601 timestamps.
delete_task
ChatGPTPermanently delete a task using the same authorization and recursive deletion flow as the TASKn app. This cannot be undone. Set confirm to true only after the user explicitly confirms. If the task has nested subtasks, include_subtasks must also be true.
get_daily_stats
ChatGPTToday's task stats for the user: completed_today, in_progress, created_today.
get_task
ChatGPTGet one task or project by id in the same shape the app renders: full details plus a subtasks array (with statuses) and active share records. Use this after list_projects to see what is InProgress or free to take on inside a project.
get_task_feed
ChatGPTGet the user's ranked task feed (same ordering as the TASKn home screen). Returns top-level tasks/projects with metadata like top_parent_id and share info.
list_projects
ChatGPTList the user's projects in their chosen priority order — the same order as the project chips on the TASKn home screen, so the FIRST project is the highest priority. Each project includes a progress fraction (0..1). By default fully completed projects (progress = 1) are hidden, matching the app.
list_shared_tasks
ChatGPTList active task shares involving the user — tasks shared with them, by them, or both.
move_task
ChatGPTMove a task, with everything nested under it, to a new parent or to the top level. The task keeps its id, history and subtasks (unlike copy-and-delete). new_parent_id is required: pass a task/project id to nest under it, or null for the top level. position is the 0-based place among the new siblings (default: last). Errors carry a code in brackets: [cycle] the destination is the task or inside it, [not_found], [shared_boundary] moving between two different trees is refused when either is shared, [subtree_too_large] over 500 nested tasks. Moving to the current parent is a no-op that succeeds.
promote_task
ChatGPTGraduate an idea into a real task. Creates a NEW task under target_parent_id with the same name, urgency and dates, and a description made of the original description, a "## Build split" checklist of the original's subtasks (three levels deep), and a footer naming the original. By default the original and everything under it is archived in place (not deleted), so history is kept and it drops out of the feed. Calling it again for an already-archived original returns the first result instead of creating a second task. Buckets cannot be promoted. Errors carry a bracketed code such as [cycle], [not_found] or [description_too_long].
search_tasks
ChatGPTFull-text search across the user's tasks by name/description.
update_task
ChatGPTUpdate fields on an existing task. Only provided fields change. Set clear_due_date to remove the due date.
complete_task
Claudecreate_task
Claudedelete_task
Claudeget_daily_stats
Claudeget_task
Claudeget_task_feed
Claudelist_projects
Claudelist_shared_tasks
Claudesearch_tasks
Claudeupdate_task
Claude