MCP tools: sprints

Last updated About 1 hour ago

MCP tools: sprints ​

Six tools for sprints. A sprint is one window of a series; the series sets the cadence, the sprints are its numbered iterations.

ToolRolePurpose
list_sprint_seriesuserSeries the caller belongs to
list_sprintsuserSprints of a series around the running one
get_sprintuserOne sprint: name, goal, dates, status
list_sprint_itemsuserThe items in a sprint
add_item_to_sprintuserAssign an item
remove_item_from_sprintuserTake an item out

How a sprint is addressed ​

Wherever sprint appears, two forms are allowed:

  • the key "17.7" – series number and ordinal
  • the symbolic values "current", "next", "previous" (default: "current")

series accepts a UUID, the series number, or the name. It is only needed for the symbolic values, and even then only when more than one series exists.

Unmaterialized sprints are real all the same

list_sprints returns windows that never held an item with materialized: false. They exist as a period and can be addressed – they just have no database row yet. During a cooldown, running is null; that means "no sprint right now", not "error".

list_sprint_items ​

ParameterTypeDescription
sprintstringKey, or current/next/previous
seriesstringUUID, number, or name
assigneesstring[] (max 50)Only items assigned to at least one of these (OR)

Besides the rows, the response carries a hidden field: the number of items in the sprint that live in lists the caller cannot access. Membership of a series grants no access to items — this field explains why a count may not match the board.

add_item_to_sprint ​

ParameterTypeDescription
itemstring (required)Item ID (UUID)
sprintstringKey, or current/next/previous
seriesstringUUID, number, or name

The only way to set a sprint

create_list_item and update_list_item have no sprint field, and a sub-task does not inherit its parent's sprint. Assigning a sprint requires this tool.

Assigning is idempotent and replaces an earlier sprint of the same series – an item cannot sit in two sprints of one cadence. Sprints of other series are untouched. Nothing can be added to a completed sprint.

remove_item_from_sprint only takes the item out of the cadence; it keeps existing, keeps its status, and sits in the backlog again.