Skip to main content
Glama

List sprints

list_sprints
Read-only

Retrieve a Taiga project’s sprints or milestones, newest first, to check dates, story completion, points progress, and the currently running sprint; open sprints are returned by default.

Instructions

List the sprints of a Taiga project (Taiga also calls them milestones), newest first: name, dates, how many of its stories are done, points done out of the total when the team estimates, and which sprint is running today. Open sprints by default; some teams never close sprints, so an old sprint can still be open with unfinished stories. Use it for sprint dates and progress, or to find a sprint name; for the stories or tasks inside a sprint call list_user_stories or list_tasks with sprint; for the tasks done and the burndown of one sprint, get_sprint.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "project": "<project>"
    },
    "name": "list_sprints"
  }
}

Input Schema

NameRequiredDescriptionDefault
pageNoWhich part of a long list, counted from 1. When an answer says more items exist, call again with the next page and the same `limit` and filters.
limitNoMost items to return in one answer (default 30, at most 100). The answer says how many more exist.
closedNotrue: list finished sprints instead of open ones. Default false.
projectYesProject slug as given by list_projects, e.g. "acme-billing". Not the display name.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.4.0

TDQS

A4.7/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true and openWorldHint=true, so safety is covered and the description correctly does not restate it. It adds real behavioral context beyond them: results are "newest first," the default scope is open sprints, and the caveat that some teams never close sprints means an old sprint can still be open with unfinished stories — which warns the agent not to treat the closed filter as a reliable time ordering. It stops short of covering pacing or list size limits, which the schema handles.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with purpose and return fields, then defaults, then sibling routing — the order an agent reads it in. Every clause carries non-redundant information, and the milestone synonym and the never-closed-sprints caveat both prevent concrete misreads rather than padding.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

There is no output schema, so the description carries the burden and does so by enumerating the returned fields, including the conditional points total ("when the team estimates"). Combined with the default-scope caveat and sibling routing, an agent has everything needed to call this and interpret the result.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline is 3, but the description earns above that by adding meaning the schema lacks: it explains the practical implication of the `closed` flag (default open, and why open can include stale sprints). It does not add syntax guidance for `page`/`limit` beyond the schema, so it does not reach 5.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Names a specific verb and resource ("List the sprints of a Taiga project"), disambiguates the Taiga-specific synonym (milestones), and enumerates exactly what comes back (name, dates, story completion, points, active sprint). An agent can distinguish it from list_user_stories, list_tasks, and get_sprint without opening any schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicit routing is present: use this for sprint dates, progress, or to resolve a sprint name; use list_user_stories or list_tasks with `sprint` for the items inside a sprint; use get_sprint for burndown and completed tasks of a single sprint. This is a when-to-use plus when-to-use-something-else statement, which is the top of the scale.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.