Tools in this category
| Tool | Mutating | Description |
|---|---|---|
list_tasks |
no | List tasks with optional filtering. By default, tasks in finished statuses and finished projects are hidden — set includeFinishedTasks / includeFinishedProjects to include them. Use rangeStart/rangeEnd to filter tasks that overlap a calendar date range. Each task includes customFieldValues keyed by its task type’s custom field keys. |
get_task |
no | Fetch a single task by UUID or display ID (e.g. "T-7"), including its status, type, tags, dates, flag state, and customFieldValues (keyed by the task type’s custom field keys). |
create_task |
yes | Create a new task. Status is optional — it defaults to the user’s first open/backlog status if omitted (use list_task_statuses only when the user wants a specific status). Priority defaults to medium. Bug is a task TYPE (use list_task_types), not a status. |
update_task |
yes | Update a task. Only the supplied fields change; omit a field to leave it untouched. Prefer flag_task over passing flagged/flagDescription here. Logged in the MCP audit trail. |
flag_task |
yes | Flag or unflag a task with an optional description. Use this rather than update_task when flagging is the intent. |
bulk_update_tasks |
yes | Apply per-id partial updates to many tasks in one call. Each item is { id, data } where data accepts the same fields as update_task. |
bulk_delete_tasks |
yes | Delete many tasks in one call by UUID or display ID. Prefer this over looping delete_task. Each id is logged separately in the audit trail. |
delete_task |
yes | Delete a task by UUID or display ID. Cascades to comments and time entries attached to the task. Logged in the MCP audit trail. |
list_tasks
Mutating: no
List tasks with optional filtering. By default, tasks in finished statuses and finished projects are hidden — set includeFinishedTasks / includeFinishedProjects to include them. Use rangeStart/rangeEnd to filter tasks that overlap a calendar date range. Each task includes customFieldValues keyed by its task type’s custom field keys.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
page |
number | no | Page number (default: 1) |
limit |
number | no | Items per page (default: 20, max: 50) |
status |
string | no | Filter by statusId |
type |
string | no | Filter by task typeId (e.g. "bug") |
projectDisplayId |
string | no | Filter by project display ID |
projectDisplayIds |
array | no | Filter by multiple project display IDs |
unassigned |
boolean | no | Only tasks with no project |
undatedOnly |
boolean | no | Only tasks with no startDate and no deadline |
clientDisplayId |
string | no | Filter by the project's client display ID |
search |
string | no | Search in name, description, project name, tags |
priority |
string (high | medium | low) |
no | Filter by priority |
flagged |
boolean | no | true = only flagged; false = only unflagged |
overdue |
boolean | no | Only tasks past their deadline |
deadlineStart |
string | no | ISO 8601 lower bound on deadline |
deadlineEnd |
string | no | ISO 8601 upper bound on deadline |
rangeStart |
string | no | Optional ISO 8601 lower bound: include tasks whose [startDate, deadline] span overlaps the range. |
rangeEnd |
string | no | Optional ISO 8601 upper bound (use together with rangeStart). |
includeFinishedTasks |
boolean | no | Default false |
includeFinishedProjects |
boolean | no | Default false |
sortBy |
string (name | statusConfigId | createdAt | updatedAt | startDate | deadline | priority | sortOrder) |
no | Field to sort by |
sortOrder |
string (asc | desc) |
no | Sort direction; defaults to asc. |
get_task
Mutating: no
Fetch a single task by UUID or display ID (e.g. "T-7"), including its status, type, tags, dates, flag state, and customFieldValues (keyed by the task type’s custom field keys).
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
id |
string | yes | Task ID — accepts UUID or display ID (e.g. "T-7") |
create_task
Mutating: yes
Create a new task. Status is optional — it defaults to the user’s first open/backlog status if omitted (use list_task_statuses only when the user wants a specific status). Priority defaults to medium. Bug is a task TYPE (use list_task_types), not a status.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
name |
string | yes | Task name |
status |
string | no | Optional status ID from list_task_statuses; defaults to first open/backlog |
type |
string | no | Task type ID from list_task_types |
parentDisplayId |
string | no | Optional parent task display ID (e.g. "T-12") to create this as a subtask. The parent must be top-level and this task’s type must be embeddable (see list_task_types). A task with no parent must use a standalone type. |
description |
string | no | Optional description |
projectDisplayIds |
array | no | Optional project display IDs to link (e.g. ["P-7", "P-9"]). A task can belong to multiple projects. |
priority |
string (high | medium | low) |
no | Priority (default: medium) |
startDate |
string | no | ISO 8601 start date (optional) |
deadline |
string | no | ISO 8601 deadline (optional) |
tags |
array | no | Tag names to attach |
flagged |
boolean | no | Mark the task as flagged |
flagDescription |
string | no | Reason / note for the flag |
customFields |
object | no | User-defined custom field values for this task type, keyed by field key (see list_task_types for each type’s custom fields). Values are strings; dates are ISO 8601. |
update_task
Mutating: yes
Update a task. Only the supplied fields change; omit a field to leave it untouched. Prefer flag_task over passing flagged/flagDescription here. Logged in the MCP audit trail.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
id |
string | yes | Task ID — accepts UUID or display ID (e.g. "T-7") |
name |
string | no | Task title. |
status |
string | no | Status ID from list_task_statuses |
type |
string | no | Task type ID from list_task_types |
parentDisplayId |
string | no | Parent task display ID (e.g. "T-12") to attach this task as a subtask, or an empty string to detach (make it top-level). Omit to leave the parent unchanged. Subtasks need an embeddable type; top-level tasks need a standalone type (see list_task_types). |
description |
string | no | Free-form task description; markdown supported. |
projectDisplayIds |
array | no | Full set of project display IDs to link; replaces existing project links. Pass [] to detach from all projects. Use link_task_to_projects / unlink_task_from_project for incremental changes. |
priority |
string (high | medium | low) |
no | Priority bucket. |
startDate |
string | no | ISO 8601 date, or empty string to clear |
deadline |
string | no | ISO 8601 date, or empty string to clear |
tags |
array | no | Full tag set; replaces existing tags. |
flagged |
boolean | no | Whether the task is flagged for attention. |
flagDescription |
string | no | Optional note explaining why the task is flagged. |
customFields |
object | no | Custom field values to set, keyed by field key (see list_task_types). Only the supplied keys change; pass an empty string or null to clear one. Values are strings; dates are ISO 8601. |
flag_task
Mutating: yes
Flag or unflag a task with an optional description. Use this rather than update_task when flagging is the intent.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
id |
string | yes | Task ID — accepts UUID or display ID (e.g. "T-7") |
flagged |
boolean | yes | true to flag, false to unflag |
flagDescription |
string | no | Optional note / reason |
bulk_update_tasks
Mutating: yes
Apply per-id partial updates to many tasks in one call. Each item is { id, data } where data accepts the same fields as update_task.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
updates |
array | yes | Per-id patches |
Items of updates:
id(string)data(object) — Partial task fields — same shape as update_task input (minus id)
bulk_delete_tasks
Mutating: yes
Delete many tasks in one call by UUID or display ID. Prefer this over looping delete_task. Each id is logged separately in the audit trail.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
ids |
array | yes | Task IDs to delete |
delete_task
Mutating: yes
Delete a task by UUID or display ID. Cascades to comments and time entries attached to the task. Logged in the MCP audit trail.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
id |
string | yes | Task ID — accepts UUID or display ID (e.g. "T-7") |