pm_sprint
{"content":"{{\u003c badge content=\"Vanguard\" color=\"blue\" class=\"tier-badge\" \u003e}}\n\nThe `pm_sprint` tool manages sprints within projects. Sprints group tasks for a time-bounded delivery window and support parent/child hierarchies for programs or release trains.\n\n## Actions\n\n`create`, `get`, `list`, `query`, `set_parent`, `update`, `delete`, `link_task`, `unlink_task`, `help`\n\nAll timestamps are epoch milliseconds.\n\n---\n\n## create\n\nCreate a new sprint under a project.\n\n### Parameters\n\n| Field | Type | Required | Notes |\n|-------|------|----------|-------|\n| `projectKey` | string | Yes | Project this sprint belongs to |\n| `name` | string | Yes | Sprint name |\n| `startTs` | number | Yes | Start timestamp (epoch ms) |\n| `endTs` | number | Yes | End timestamp (epoch ms) |\n| `goal` | string | No | Sprint goal statement |\n| `status` | string | No | `planned` (default), `active`, `review`, `closed` |\n| `velocityTarget` | number | No | Target story points |\n| `metadata` | object | No | `{ owners?, links?, notes? }` |\n\n### Example\n\n```text\npm_sprint {\n action: \"create\",\n projectKey: \"my-api\",\n name: \"Sprint 12 — rate limiting\",\n goal: \"Ship per-IP rate limiting on auth endpoints\",\n startTs: 1712620800000,\n endTs: 1713830400000,\n status: \"planned\",\n velocityTarget: 40\n}\n```\n\n---\n\n## get\n\nFetch a sprint by ID.\n\n### Parameters\n\n| Field | Type | Required |\n|-------|------|----------|\n| `sprintId` | string | Yes |\n\n---\n\n## list\n\nList sprints for a project.\n\n### Parameters\n\n| Field | Type | Required |\n|-------|------|----------|\n| `projectKey` | string | Yes |\n| `status` | string | No |\n| `limit` | number | No |\n| `offset` | number | No |\n\n---\n\n## query\n\nSearch sprints across one or more projects.\n\n### Parameters\n\n| Field | Type | Required | Notes |\n|-------|------|----------|-------|\n| `projectKey` | string | No | Single project scope |\n| `projectKeys` | string[] | No | Multiple project scope |\n| `query` | string | No | Search text (name/goal) |\n| `status` | string | No | |\n| `limit` | number | No | |\n| `offset` | number | No | |\n\n---\n\n## set_parent\n\nSet or clear the parent sprint for a child sprint. Pass `null` to `parentSprintId` to clear.\n\n### Parameters\n\n| Field | Type | Required |\n|-------|------|----------|\n| `sprintId` | string | Yes |\n| `parentSprintId` | string \\| null | No |\n\n---\n\n## update\n\nUpdate sprint fields.\n\n### Parameters\n\n| Field | Type | Required |\n|-------|------|----------|\n| `sprintId` | string | Yes |\n| `name` | string | No |\n| `goal` | string | No |\n| `status` | string | No |\n| `startTs` | number | No |\n| `endTs` | number | No |\n| `velocityTarget` | number | No |\n| `metadata` | object | No |\n\n---\n\n## delete\n\nDelete a sprint. Linked tasks are unlinked automatically.\n\n### Parameters\n\n| Field | Type | Required |\n|-------|------|----------|\n| `sprintId` | string | Yes |\n\n---\n\n## link_task\n\nLink a task to a sprint.\n\n### Parameters\n\n| Field | Type | Required | Notes |\n|-------|------|----------|-------|\n| `sprintId` | string | Yes | |\n| `taskId` | string | Yes | |\n| `actorHandle` | string | No | Who performed the link |\n| `clientRequestId` | string | No | Idempotency key |\n\n### Example\n\n```text\npm_sprint {\n action: \"link_task\",\n sprintId: \"01HXYZ...\",\n taskId: \"01HABC...\",\n actorHandle: \"@skadi\"\n}\n```\n\n---\n\n## unlink_task\n\nUnlink a task from a sprint.\n\n### Parameters\n\n| Field | Type | Required |\n|-------|------|----------|\n| `sprintId` | string | Yes |\n| `taskId` | string | Yes |\n| `actorHandle` | string | No |\n| `clientRequestId` | string | No |\n\n---\n\n## help\n\n```text\npm_sprint { action: \"help\" }\n```\n\n## Related\n\n- [pm_task](../tasks/) — tasks are what sprints organize\n- [pm_project](../projects/) — sprints belong to projects","description":"Create, manage, and link tasks to sprints with parent/child hierarchy support.","title":"pm_sprint"}
Vanguard
The pm_sprint tool manages sprints within projects. Sprints group tasks for a time-bounded delivery window and support parent/child hierarchies for programs or release trains.
Actions
create, get, list, query, set_parent, update, delete, link_task, unlink_task, help
All timestamps are epoch milliseconds.
create
Create a new sprint under a project.
Parameters
| Field | Type | Required | Notes |
|---|---|---|---|
projectKey | string | Yes | Project this sprint belongs to |
name | string | Yes | Sprint name |
startTs | number | Yes | Start timestamp (epoch ms) |
endTs | number | Yes | End timestamp (epoch ms) |
goal | string | No | Sprint goal statement |
status | string | No | planned (default), active, review, closed |
velocityTarget | number | No | Target story points |
metadata | object | No | { owners?, links?, notes? } |
Example
pm_sprint {
action: "create",
projectKey: "my-api",
name: "Sprint 12 — rate limiting",
goal: "Ship per-IP rate limiting on auth endpoints",
startTs: 1712620800000,
endTs: 1713830400000,
status: "planned",
velocityTarget: 40
}get
Fetch a sprint by ID.
Parameters
| Field | Type | Required |
|---|---|---|
sprintId | string | Yes |
list
List sprints for a project.
Parameters
| Field | Type | Required |
|---|---|---|
projectKey | string | Yes |
status | string | No |
limit | number | No |
offset | number | No |
query
Search sprints across one or more projects.
Parameters
| Field | Type | Required | Notes |
|---|---|---|---|
projectKey | string | No | Single project scope |
projectKeys | string[] | No | Multiple project scope |
query | string | No | Search text (name/goal) |
status | string | No | |
limit | number | No | |
offset | number | No |
set_parent
Set or clear the parent sprint for a child sprint. Pass null to parentSprintId to clear.
Parameters
| Field | Type | Required |
|---|---|---|
sprintId | string | Yes |
parentSprintId | string | null | No |
update
Update sprint fields.
Parameters
| Field | Type | Required |
|---|---|---|
sprintId | string | Yes |
name | string | No |
goal | string | No |
status | string | No |
startTs | number | No |
endTs | number | No |
velocityTarget | number | No |
metadata | object | No |
delete
Delete a sprint. Linked tasks are unlinked automatically.
Parameters
| Field | Type | Required |
|---|---|---|
sprintId | string | Yes |
link_task
Link a task to a sprint.
Parameters
| Field | Type | Required | Notes |
|---|---|---|---|
sprintId | string | Yes | |
taskId | string | Yes | |
actorHandle | string | No | Who performed the link |
clientRequestId | string | No | Idempotency key |
Example
pm_sprint {
action: "link_task",
sprintId: "01HXYZ...",
taskId: "01HABC...",
actorHandle: "@skadi"
}unlink_task
Unlink a task from a sprint.
Parameters
| Field | Type | Required |
|---|---|---|
sprintId | string | Yes |
taskId | string | Yes |
actorHandle | string | No |
clientRequestId | string | No |
help
pm_sprint { action: "help" }Related
- pm_task — tasks are what sprints organize
- pm_project — sprints belong to projects