Skip to main content
Glama

Sprrint CLI + MCP

The same Sprrint product, from a terminal or an agent.

People who never open the web app can still run the board, write tasks, move cards, run sprints, pull work out of the Black Hole, comment, invite teammates, and manage the workspace.

  o
 /|\   sprrint now
 / \

Install

pipx install git+https://github.com/ejasmuhamed/sprrint-cli.git
# or from this repo
pipx install .
# later: pipx install sprrint

You need an account on sprrint.run.

Related MCP server: jira-mcp-server

Sign in

sprrint login

Sprrint emails a 6-digit code. After it checks out, the CLI stores an API key in ~/.config/sprrint/config.toml (mode 600). The CLI and MCP always talk to https://sprrint.run.

You can also mint a key in the web app: You → Keys, then:

sprrint config set api_key spr_live_…
sprrint config set workspace acme
sprrint config set project BR

Environment variables override the file: SPRRINT_API_KEY, SPRRINT_WORKSPACE, SPRRINT_PROJECT.

Everyday commands

sprrint whoami
sprrint now
sprrint overview
sprrint search "login"
sprrint tasks create --title "Ship the CLI"
sprrint tasks move BR-12 progress
sprrint tasks move BR-12 blocked --blocked-note "Waiting on design"
sprrint tasks comment BR-12 "Landed."
sprrint sprints start launch-week
sprrint sprints pause launch-week
sprrint sprints complete launch-week
sprrint sprints create --name "Launch Week" --starts-on 2026-09-01 --ends-on 2026-09-14
sprrint blackhole list
sprrint blackhole pull BR-9
sprrint activity

Every mutating command has --json for scripts and --plain to skip the stickman.

sprrint --help
sprrint tasks --help

MCP

The same client is an MCP server.

sprrint mcp

Cursor / Claude Desktop:

{
  "mcpServers": {
    "sprrint": {
      "command": "sprrint",
      "args": ["mcp"],
      "env": {
        "SPRRINT_API_KEY": "spr_live_…"
      }
    }
  }
}

Or sign in with the CLI first and omit the env block — the server reads ~/.config/sprrint/config.toml.

There is also a sprrint-mcp entry point if your client wants a dedicated binary.

What it can do

Everything the Sprrint app can do:

Area

Commands / tools

You

login, whoami, me update, emails, keys

Workspaces

list, create, use (config set workspace)

Workspace

get, update, invite, roles, leave, delete

Projects

list, create, update, archive, restore, delete, members

Now / Home

now, overview, project home

Tasks

list, get, create, update, move, comment, attach (subtasks, blocked notes)

Sprints

list, get, create, update, start, pause, complete, delete

Black Hole

list, pull, drop

Search / Activity

search, activity

Categories / files

categories, files

The web app, CLI, and MCP share /api/v1 and the same permissions.

Stickman

TTY sessions show a small stick figure while work is in flight — walking, waving, pulling from the void, arms up when it lands. --plain or a pipe turns that off.

Available Tools

40 tools
sprrint_activityC

Activity feed. tab is you|all. range is 0 (today), 7, 30, or all.

ParametersJSON Schema
NameRequiredDescriptionDefault
qNo
tabNoall
typeNo
actorNo
rangeNo7
projectNo

TDQS

C2.4/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full burden. It only discloses allowed values for tab and range; it does not describe the response shape, side effects, permissions, pagination, or how the other parameters affect behavior. This is a significant gap for a feed tool.

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

Conciseness4/5

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

The description is two short sentences with no fluff. It front-loads the core resource and packs the parameter constraints into a compact form. Nothing is redundant.

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

Completeness2/5

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

With six optional parameters, no output schema, and no annotations, the description is inadequate. It only covers two of six parameters and gives no information about return values or call behavior, leaving too much to inference for a tool of this complexity.

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

Parameters2/5

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

Schema description coverage is 0%, so the description must compensate. It meaningfully documents two parameters (tab and range) but leaves q, type, actor, and project completely unexplained. This incomplete compensation leaves an agent guessing about the remaining parameters.

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

Purpose3/5

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

The description states the resource (activity feed) and immediately gives two key parameter domains (tab: you|all, range: 0/7/30/all), but it lacks a verb and does not distinguish this from sibling reporting tools like sprrint_overview or sprrint_search. It is more specific than a tautology but still vague.

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

Usage Guidelines2/5

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

There is no guidance on when to use this tool instead of alternatives such as sprint_overview, sprint_search, or sprint_home. The parameter hints describe value choices, not the situations that warrant this tool.

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

sprrint_blackhole_dropC

Drop a task out of its sprint back into the Black Hole.

ParametersJSON Schema
NameRequiredDescriptionDefault
keyYes
projectNo

TDQS

C2.7/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full burden of disclosing behavioral traits. 'Drop a task out of its sprint back into the Black Hole' states the outcome but does not explain side effects such as whether the task is removed from all sprints, whether the action is reversible, whether permissions are needed, or what happens to the task's sprint history. This is a significant gap for a mutation tool.

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?

The description is a single, front-loaded sentence with no wasted words. It communicates the verb, object, source, and destination efficiently, and there is no unnecessary prose or redundant detail.

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

Completeness2/5

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

For a mutating tool with no annotations, no output schema, and zero schema description coverage, this description is too thin. The core intent is clear, but an agent cannot confidently determine parameter semantics, side effects, prerequisites, or how this differs from sibling task/sprint tools. More behavioral and contextual detail is needed for reliable invocation.

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

Parameters1/5

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

Schema description coverage is 0%, and the description explains neither 'key' nor the optional 'project' parameter. The agent must infer that 'key' identifies the task and that 'project' might disambiguate, but no explicit semantic guidance is provided. The description adds no meaning beyond the parameter names and types.

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

Purpose4/5

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

The description uses a specific verb ('Drop') and resource ('a task out of its sprint back into the Black Hole'), making the core action clear. It also reads as the inverse of the sibling tool sprrint_blackhole_pull, which helps orient the agent. However, it does not explicitly distinguish this from related tools such as sprrint_tasks_move or sprrint_sprints_delete.

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

Usage Guidelines2/5

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

The description implies the tool is used when a task should be removed from a sprint and returned to the Black Hole, but it provides no explicit when-to-use guidance, prerequisites, or alternatives. It does not mention that sprrint_tasks_move or sprrint_sprints_update might be relevant alternatives, leaving the agent to reason about sibling tool names on its own.

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

sprrint_blackhole_listC

List unsprinted open tasks in the Black Hole.

ParametersJSON Schema
NameRequiredDescriptionDefault
projectNo

TDQS

C2.9/5.0
Behavior3/5

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

The verb 'List' communicates a non-mutating read operation, and the qualifiers 'unsprinted open tasks' describe the result set. However, there are no annotations, and the description does not explain the meaning of 'unsprinted,' sorting, pagination, or how the project parameter affects results.

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?

The description is a single front-loaded sentence with no filler. It communicates the core operation efficiently and does not repeat structural information already present in the schema.

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

Completeness2/5

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

For a tool with no annotations, no output schema, and an undocumented parameter, the description is too thin. It omits the meaning of 'unsprinted' and entirely ignores the project parameter, leaving important calling context to inference.

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

Parameters1/5

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

Schema description coverage is 0%, and the description never mentions the single 'project' parameter. The agent cannot tell whether project filters results, scopes the query, or is ignored. The description fails to compensate for the schema's complete lack of parameter documentation.

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

Purpose4/5

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

The description uses a specific verb and resource: 'List unsprinted open tasks in the Black Hole.' This clearly distinguishes it from mutating black hole siblings like sprrint_blackhole_pull and sprrint_blackhole_drop. However, 'unsprinted' is unexplained and the description does not distinguish it from the broader sprrint_tasks_list tool.

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

Usage Guidelines2/5

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

There is no guidance on when to use this tool versus alternatives such as sprrint_tasks_list, sprrint_blackhole_pull, or sprrint_blackhole_drop. No context, prerequisites, or exclusions are provided.

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

sprrint_blackhole_pullB

Pull a void task into the landing sprint (active first, else planned).

ParametersJSON Schema
NameRequiredDescriptionDefault
keyYes
projectNo

TDQS

B3.3/5.0
Behavior3/5

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

No annotations are provided, so the description must carry behavioral disclosure on its own; it does disclose the target-selection precedence ('active first, else planned') and the move/pull side effect. However, it does not clarify what qualifies as a void task, failure conditions when no active/planned sprint exists, or whether the operation is reversible beyond the existence of blackhole_drop.

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?

One compact sentence with the action first and the behavioral rule in a parenthetical; no filler and no repetition of schema information. Every word earns its place.

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

Completeness2/5

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

The description covers the core action and selection rule, but with no annotations, no output schema, and zero parameter documentation, an agent cannot be fully confident about required input semantics or response/error behavior. It is not completely unusable, but it leaves meaningful gaps for a mutating tool.

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

Parameters1/5

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

Schema description coverage is 0% and the description never mentions 'key' or 'project', so the agent receives no help on what 'key' identifies or what 'project' selects. The bare property names 'Key' and 'Project' are not enough to define the required input.

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?

The description uses a specific verb ('Pull') with a clear resource ('void task') and destination ('landing sprint'), and the blackhole namespace distinguishes it from blackhole_drop as the inverse operation. Even without naming a sibling, the direction of the action is unambiguous.

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

Usage Guidelines3/5

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

It implies use when a task residing in the blackhole/void needs to be restored to an active or planned sprint, and it includes a selection rule for the target sprint. It does not explicitly name alternatives or exclusions, so an agent must infer routing from context rather than being told 'use X instead.'

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

sprrint_categories_createC

Create a category. kind is task|sprint.

ParametersJSON Schema
NameRequiredDescriptionDefault
kindYes
nameYes
projectNo

TDQS

C2.6/5.0
Behavior2/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure. It states the mutation ('Create') and the kind constraint, but it does not explain side effects, idempotency, permissions, or what happens after creation. For a create operation, more context about impact is expected.

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

Conciseness3/5

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

The description is short and every sentence adds a small amount of value, but it is closer to under-specification than genuine conciseness. It lacks essential parameter context and behavioral detail, so the brevity comes at the expense of usefulness.

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

Completeness2/5

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

For a tool with no annotations, no output schema, and only three parameters, this definition is incomplete. An agent is left to infer what a 'category' is, how name and project behave, and what the function returns. While the kind clarification helps, the overall definition does not provide enough for reliable invocation.

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

Parameters2/5

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

Schema description coverage is 0%, so the description must compensate. It partially does for kind by stating 'kind is task|sprint', giving the allowed values that the schema itself does not provide as an enum. However, it gives no meaning or constraints for name or project, which are also undersepresented.

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

Purpose4/5

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

The description uses a specific verb and resource: 'Create a category.' This clearly identifies the operation and distinguishes it from sibling tools like sprrint_categories_list and sprrint_categories_delete. The added note on kind provides domain context, though it does not explicitly differentiate from sprint- or task-creation tools.

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

Usage Guidelines2/5

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

The description gives no guidance on when to use this tool versus alternatives such as sprrint_tasks_create or sprrint_sprints_create. It does not state exclusions or scenarios where a sibling should be preferred. The only usage hint is the kind values, which is more about parameter selection than overall tool selection.

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

sprrint_categories_deleteB

Delete an unused custom category.

ParametersJSON Schema
NameRequiredDescriptionDefault
projectNo
category_idYes

TDQS

B3/5.0
Behavior2/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure. It states that the operation deletes a category but does not disclose whether deletion is permanent, whether it fails for in-use categories, whether permissions are required, or what the response contains. The word 'unused' hints at a precondition but not the consequences.

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?

The description is a single, front-loaded sentence with no filler. Every word contributes to the tool's purpose, making it efficient and easy to parse.

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

Completeness2/5

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

For a destructive tool with no annotations and no output schema, the description is too sparse. It does not explain the project parameter, deletion semantics, error conditions, or irreversibility. An agent would need more context to invoke it confidently.

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

Parameters2/5

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

Schema description coverage is 0%, so the description must compensate. It offers only minimal context: 'custom category' helps infer that category_id refers to a category identifier, but the optional 'project' parameter is not explained at all. The description adds little beyond what the schema already shows.

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

Purpose4/5

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

The description clearly identifies the verb ('Delete') and the resource ('an unused custom category'), which distinguishes it from sibling tools like sprrint_categories_list and sprrint_categories_create. The qualifier 'unused' adds meaningful scope, though it does not explicitly name the sibling it contrasts with.

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

Usage Guidelines3/5

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

The description implies when to use the tool: when a custom category is unused and needs deletion. However, it provides no explicit guidance about preconditions beyond 'unused', no exclusions, and no mention of alternatives or when not to use it.

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

sprrint_categories_listB

List task and sprint categories.

ParametersJSON Schema
NameRequiredDescriptionDefault
projectNo

TDQS

B3.2/5.0
Behavior3/5

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

With no annotations, the description carries the full burden and does state the read-only 'List' behavior, which is helpful. It does not disclose return structure, pagination, or the effect of the optional project parameter, but for a simple list operation the core behavior is at least named.

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

Conciseness4/5

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

The description is a single, front-loaded sentence with no filler or repetition. It is concise, though slightly under-specified for the parameter it accompanies.

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

Completeness3/5

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

For a one-parameter tool with no output schema, the description is adequate for basic selection but not fully complete. It omits any explanation of how `project` affects results and gives no return-shape context, leaving an agent to guess if categories are global or project-scoped.

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

Parameters2/5

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

Schema description coverage is 0% and the description never mentions the `project` parameter. The schema only provides the property name 'Project' and a null default, so the description does not clarify whether project filters categories, scopes the listing, or is ignored.

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

Purpose4/5

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

The description uses the specific verb 'List' and identifies the resource as 'task and sprint categories,' making the tool's basic purpose unambiguous. It does not explicitly name or contrast sibling tools such as sprrint_tasks_list or sprrint_sprints_list, so it stops short of full differentiation.

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

Usage Guidelines3/5

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

The description implies the tool should be used when category data is needed, and no other sibling provides a categories list. However, it gives no explicit guidance about when to use this versus other list tools or how the optional project parameter changes the query context.

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

sprrint_homeD

Project home dashboard.

ParametersJSON Schema
NameRequiredDescriptionDefault
projectNo

TDQS

D1.5/5.0
Behavior1/5

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

With no annotations, the description carries the full burden of disclosing behavior, but 'Project home dashboard' says nothing about what the tool returns, side effects, data scope, or permissions. An agent cannot infer whether this is a read-only view, a navigational hub, or something else.

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

Conciseness2/5

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

The text is short, but brevity here is under-specification rather than effective conciseness. The sentence provides almost no operative information and does not front-load any actionable content.

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

Completeness1/5

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

Given no annotations, no output schema, and an undocumented optional parameter, this description is far from complete. The agent cannot reliably determine the tool's purpose, input semantics, or return behavior.

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

Parameters1/5

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

The schema has 0% description coverage for the single optional 'project' parameter. The description adds no parameter semantics beyond the schema's property name; it does not explain what project values are accepted, whether null means all projects, or how the parameter affects the dashboard.

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

Purpose2/5

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

The description 'Project home dashboard.' is a noun phrase that restates the resource name without a verb or explicit function. It does not distinguish the tool from siblings like overview, now, or projects_get, all of which likely surface project-related information.

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

Usage Guidelines2/5

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

No guidance is provided about when to use this tool versus alternatives such as sprrint_overview or sprrint_projects_get. The description gives no context for selecting this tool over its siblings.

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

sprrint_keys_createB

Create an API key. The full token is returned once.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameNoMCP
sourceNomcp

TDQS

B3.4/5.0
Behavior3/5

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

No annotations are provided, so the description carries the full burden. 'The full token is returned once' is a genuinely useful behavior disclosure because it tells the agent/caller that the secret must be captured immediately. But it does not cover auth requirements, permissions, key scopes, or any destructive/ireversible effects of creation.

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?

Two terse sentences, each earning its place. The action is first and the critical security-relevant constraint ('returned once') follows immediately. No unnecessary wording.

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

Completeness3/5

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

For a simple two-optional-parameter creation tool, the description gives the essential purpose and the most important output fact. But with no output schema and no annotations, it still leaves parameter semantics, return format, and any permission/context requirements unexplained. It is adequate but has clear gaps.

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

Parameters1/5

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

Schema description coverage is 0% and the description does not mention `name` or `source` at all. The parameter semantics are left entirely to the schema defaults, and `source` in particular remains ambiguous. The description fails to compensate for the low schema coverage.

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?

The description uses a specific verb and resource: 'Create an API key.' This clearly distinguishes the tool from sibling keys/read tools such as sprrint_keys_list, and from create tools for other entities like projects/tasks/sprints.

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

Usage Guidelines3/5

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

The intended use is implied: call this when you need to create an API key. However, there is no explicit guidance about when not to use it, no mention of sprrint_keys_list for listing keys, and no prerequisites or alternatives are named.

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

sprrint_keys_listA

List active API keys for the signed-in user.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4/5.0
Behavior3/5

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

No annotations are provided, so the description carries the behavioral disclosure burden. The word 'List' conveys a read-only operation, and 'active' clarifies the filter, but the description does not disclose whether actual secret key values are returned, whether pagination applies, or any other response behavior.

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?

The description is a single front-loaded sentence with no filler or repetition. Every word contributes semantic value.

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

Completeness4/5

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

For a zero-parameter list tool this description is largely complete: the agent knows what to call and what it will get at a high level. However, with no output schema and no annotations, return-shape details and the distinction from key-creation tools are left implicit.

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?

The input schema has zero parameters, so there is nothing to document. The description still adds useful context by specifying the implicit scope is the signed-in user, which the empty schema cannot convey. Baseline 4 is appropriate.

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?

The description clearly states the verb ('List'), the resource ('active API keys'), and the scope ('for the signed-in user'). It also distinguishes the tool from its sibling sprrint_keys_create without requiring the agent to inspect the schema.

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

Usage Guidelines3/5

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

The description implies when to use the tool: whenever active API keys for the signed-in user are needed. However, it offers no explicit guidance about when not to use it, and it does not reference the sibling key-management tools such as sprrint_keys_create.

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

sprrint_nowA

Show the Now board for a project. Filter by sprint slug, assignee username, due window, or search text.

ParametersJSON Schema
NameRequiredDescriptionDefault
qNo
dueNoany
sprintNo
projectNo
assignedNoany

TDQS

A3.6/5.0
Behavior3/5

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

No annotations are provided, so the description carries the full burden. 'Show' and 'Filter' clearly signal a read-only operation with no destructive side effects. However, the description does not disclose result shape, pagination, default behavior with no filters, or any operational caveats, so transparency is adequate but limited.

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?

Two sentences with no filler. The core purpose is front-loaded, and the filter capabilities are listed in a compact, scannable way. Every word contributes useful information.

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

Completeness3/5

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

For a 5-parameter tool with no annotations and no output schema, the description is sparse. It covers the main purpose and filter dimensions but does not explain how filters combine, what the Now board actually returns, the due-window format, or the identifier format for project/sprint. This is adequate for a simple read operation but leaves moderate gaps.

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 description coverage is 0%, but the description compensates by mapping 'sprint slug' to sprint, 'assigned username' to assigned, 'due window' to due, and 'search text' to q. The project parameter is only implied by 'for a project,' and formats or accepted values are not described, but the description adds meaningful semantics beyond the bare schema titles.

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

Purpose4/5

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

The description states a specific action and resource: 'Show the Now board for a project.' It also lists the filtering dimensions, which makes the tool's scope reasonably clear. It does not explicitly contrast with sibling tools like sprrint_tasks_list or sprrint_search, so it stops short of full sibling differentiation.

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

Usage Guidelines3/5

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

The description implies when to use it—whenever a user wants the Now board for a project or wants to filter sprint items by assignee, due window, sprint, or search text. However, it gives no explicit guidance about when to prefer this over related tools such as sprrint_search or sprrint_tasks_list, leaving the agent to infer the boundary.

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

sprrint_overviewA

Workspace home: greeting, counts, active sprints, and tasks that need a nudge.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A3.6/5.0
Behavior3/5

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

With no annotations, the description carries the burden of disclosing behavior. It does name the returned categories (greeting, counts, active sprints, nudged tasks), which is useful context. It does not explicitly state whether the call is read-only or mention how 'nudge' tasks are determined.

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?

The description is a single front-loaded sentence with a colon-delimited list of contents. Every word earns its place and there is no verbosity or redundancy.

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

Completeness3/5

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

For a simple zero-parameter overview tool, the description conveys the main output areas. However, there is no output schema and no guidance on how 'counts' are scoped nor what makes a task 'need a nudge', and the overlap with sprrint_home is left unresolved.

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?

The tool has zero parameters, so the default baseline of 4 applies; there are no parameter semantics the description needs to explain. The description instead focuses usefully on what the overview contains.

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

Purpose4/5

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

The description names a concrete resource ('Workspace home') and specifies the output contents: greeting, counts, active sprints, and tasks needing a nudge. This makes the tool's purpose clear, but it does not differentiate it from the sibling tool sprrint_home, which appears to serve a similar role.

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

Usage Guidelines3/5

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

The phrase 'Worksapce home' implies this is a dashboard/starting-point tool, so a basic usage context is inferable. However, there is no explicit guidance about when to choose this over sprrint_home, sprrint_activity, or sprrint_now, nor any exclusions.

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

sprrint_profile_updateC

Update the signed-in profile.

ParametersJSON Schema
NameRequiredDescriptionDefault
avatarNo
timezoneNo
usernameNo
display_nameNo

TDQS

C2.7/5.0
Behavior2/5

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

No annotations are provided, so the description must carry the full transparency burden. 'Update' implies mutation, but there is no disclosure about parameter effects, null semantics, permissions, or whether changes are immediately visible.

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

Conciseness3/5

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

The description is a single, front-loaded sentence with no filler. However, it is so sparse that it borders on under-specification rather than genuinely helpful conciseness.

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

Completeness2/5

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

For a mutation tool with no annotations, no output schema, and four undocumented optional parameters, this description is not sufficient. It omits return behavior, parameter meanings, and edge-case behavior needed for correct invocation.

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

Parameters1/5

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

Schema description coverage is 0%, and the description does not mention any of the four parameters. Crucial semantics such as timezone format, avatar representation, and username constraints are entirely undocumented.

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?

The description states a specific action ('Update') on a distinct resource ('the signed-in profile'). No sibling tool targets the user profile, so this differentiates it from the other update tools in the list.

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

Usage Guidelines2/5

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

No guidance is given about when to use this tool versus alternatives, or whether users should call a related tool like sprrint_whoami first. The intended usage is only implied by the name and description.

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

sprrint_projects_add_memberA

Add a workspace member to a project. user is a username or id. role is member|owner.

ParametersJSON Schema
NameRequiredDescriptionDefault
roleNomember
userYes
projectYes

TDQS

A3.5/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full behavioral burden. It only reveals that a member is added; it does not disclose idempotency, duplicate handling, permission requirements, or side effects on existing project memberships. For a mutating tool, this is a significant transparency gap.

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?

The description is two short sentences with no filler. The action is front-loaded, and each clause adds either the core purpose or essential parameter meaning.

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

Completeness3/5

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

For a simple three-parameter mutation, the description covers the main action and most parameter meaning, but it omits project semantics, behavioral outcomes, and return behavior. It is adequate for straightforward invocation but incomplete for edge cases or authorization-aware agents.

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

Parameters3/5

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

Schema description coverage is 0%, but the description compensates partially by explaining user ('username or id') and role ('member|owner'). However, the project parameter is left unspecified, and the default behavior of role is only available in the schema. This is partial compensation, not full.

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?

The description states a specific verb, resource, and membership relation: 'Add a workspace member to a project.' It also clarifies that user is a username or id and role is member|owner, making the action unambiguous and distinguishing it from sibling tools like remove_member and workspace_set_role.

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

Usage Guidelines3/5

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

The intended use is implied by the action phrase, but the description does not explicitly say when to use this tool over related siblings such as sprrint_projects_remove_member or sprrint_workspace_set_role. It provides a clear context but no exclusions or alternative routing.

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

sprrint_projects_archiveC

Archive a project.

ParametersJSON Schema
NameRequiredDescriptionDefault
projectYes

TDQS

C2.6/5.0
Behavior2/5

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

There are no annotations, so the description carries the full burden of explaining behavior. 'Archive a project' is a label rather than a behavioral account: it does not disclose whether archiving is reversible, whether it affects tasks or members, or what side effects may occur.

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

Conciseness3/5

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

The description is brief and front-loaded, which makes it easy to scan. However, it is under-specified rather than efficiently complete, and it lacks any structure beyond a short verb phrase.

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

Completeness2/5

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

For an action with one required parameter and no annotations or output schema, this description is too incomplete. It omits the meaning of archiving, any reversibility or permanence details, and the relationship to related tools like delete and restore.

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

Parameters2/5

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

The schema has one required string parameter, 'project,' but the schema description coverage is 0% and the description does not compensate. It does not explain whether the value should be a project ID, slug, or name, or how the parameter identifies the project to archive.

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

Purpose4/5

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

The description states a specific action, 'Archive a project,' with a clear verb and resource, so an agent can grasp the basic intent. However, it does not clarify how archiving differs from deleting or restoring a project, which limits full sibling differentiation.

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

Usage Guidelines2/5

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

No usage guidance is provided. The description never says when to use archive versus delete or restore, nor does it mention any prerequisites or alternative selection criteria. An agent must infer the intended use solely from the tool name.

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

sprrint_projects_createB

Create a project. Key is exactly 2 letters or numbers. visibility is private|workspace.

ParametersJSON Schema
NameRequiredDescriptionDefault
keyNo
nameYes
visibilityNoprivate
descriptionNo
default_viewNonow

TDQS

B3.3/5.0
Behavior2/5

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

No annotations exist, so the description carries the full burden of behavioral disclosure. It reveals useful constraints about key and visibility, but it does not explain side effects, validation failures, default behavior when key is omitted, or what happens after creation. A create operation with no annotation coverage needs more behavioral context.

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?

The description is two short sentences with no wasted words. The primary purpose is front-loaded, and the constraint details are placed immediately after. Every sentence earns its place.

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

Completeness2/5

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

With five parameters, no annotations, and no output schema, the description is too thin to fully support correct invocation. It omits guidance about the required name parameter, possible default_view values, and expected response or errors. The agent can partially infer behavior but lacks important details for a reliable call.

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

Parameters2/5

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

Schema description coverage is 0%, so the description must compensate for undocumented parameters. It adds meaning for key and visibility, but it does not explain the required name parameter, description, or default_view options. It also conflicts with the schema by suggesting key must be exactly 2 characters while the schema allows null. Coverage is therefore incomplete.

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?

The description states a clear verb and resource: 'Create a project.' This directly distinguishes it from sibling tools that list, get, update, archive, restore, or delete projects. The additional key/visibility constraints also make the operation concrete without ambiguity.

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

Usage Guidelines3/5

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

The description implies the tool should be used when creating a project, especially alongside other create tools like tasks_create and categories_create. However, it does not explicitly say when not to use this tool or mention alternatives, so the usage guidance is only implicit.

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

sprrint_projects_deleteB

Delete a project. confirm must be the exact project name.

ParametersJSON Schema
NameRequiredDescriptionDefault
confirmYes
projectYes

TDQS

B3/5.0
Behavior3/5

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

With no annotations, the description carries the burden of behavioral disclosure. It clearly indicates the destructive nature and enforces a confirmation rule: confirm must exactly match the project name. However, it does not disclose irreversibility, cascading effects on tasks/members/sprints, or permission requirements, which leaves meaningful gaps for a delete operation.

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?

Two short sentences carry all the core information with no filler. The destructive action is front-loaded, and the critical confirmation requirement immediately follows. Nothing extraneous is present.

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

Completeness2/5

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

For a destructive tool with no annotations and no output schema, the description is too thin. It omits whether deletion is permanent, what happens to associated resources, and how the project parameter is identified. The lack of sibling differentiation also means an agent cannot confidently choose this over archive.

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

Parameters2/5

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

Schema description coverage is 0%, so the description must compensate. It clarifies that the confirm parameter must be the exact project name, but it never explains what the project parameter should be (ID, name, slug) or how the two parameters relate. This is only partial compensation for two undocumented required parameters.

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

Purpose4/5

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

The description uses a specific verb and resource: 'Delete a project.' It also adds a key mechanical detail—that confirm must be the exact project name—which clarifies what the deletion requires. It does not explicitly contrast with the sibling archive/restore tools, so it loses the top score.

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

Usage Guidelines2/5

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

There is no guidance on when to use this tool versus alternatives such as sprrint_projects_archive or sprrint_projects_restore. The description implies deletion is separate from archival, but it never states when permanent deletion is appropriate or when a safer alternative should be used.

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

sprrint_projects_getA

Get one project by key or slug, including members.

ParametersJSON Schema
NameRequiredDescriptionDefault
projectYes

TDQS

A4/5.0
Behavior3/5

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

With no annotations provided, the description carries the burden of behavior disclosure. It conveys that this is a read-style retrieval ('Get') and that the response includes members, which is useful. It does not mention error behavior, authentication requirements, or any other side effects, but for a simple getter this is a reasonable level of disclosure.

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?

A single sentence with no filler, front-loading the core action and then adding the key identification detail and the members inclusion. Every clause earns its place.

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

Completeness4/5

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

For a simple single-parameter getter with no output schema and no annotations, the description is nearly sufficient: it names the input, explains how to identify the target, and hints at the return shape. It does not detail other returned fields, but that is partially mitigated by 'including members' and the fact that the tool is a straightforward read operation.

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?

The schema only defines a 'project' string with no description, giving 0% schema coverage. The description compensates by explaining that the parameter can be a key or slug, which is essential semantic information for invoking the tool correctly. It could be more explicit that 'project' is the parameter receiving that key/slug value, but the meaning is clear.

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?

The description clearly states the action ('Get one project'), the resource ('project'), and the identification method ('by key or slug'), plus the return scope ('including members'). This distinguishes it from sprrint_projects_list (which retrieves many projects) and from mutation siblings like create/update/archive.

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

Usage Guidelines3/5

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

The description implies when to use it: when you need a single project by key or slug. However, it does not explicitly mention sprrint_projects_list as the alternative for retrieving multiple projects, nor does it state exclusions or conditions that would route an agent to another tool.

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

sprrint_projects_listB

List visible projects.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

B3.2/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full behavioral disclosure burden. It only states 'List visible projects' and discloses nothing about return shape, pagination, sorting, or the meaning of 'visible.' There is no mention of side effects or permissions, though the listing action itself is likely read-only.

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?

The description is a single succinct sentence with no filler or redundant content. Every word earns its place and the core action is front-loaded, making it easy for an agent to grasp quickly.

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

Completeness3/5

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

For a zero-parameter list tool, invocation is trivial, but the absence of an output schema and the lack of any description of the return value leaves a gap. The agent must infer what a 'visible project' is and what fields are returned. This is acceptable for a simple list call, but not fully complete.

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?

This tool has zero parameters, so the schema fully defines the input (none). Per the calibration guideline, 0 parameters earns a baseline of 4 because there is nothing for the description to clarify about parameters.

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

Purpose4/5

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

The description states the verb 'List' and a specific resource 'visible projects', clearly distinguishing it from sibling project tools like get, create, update, and delete. However, the qualifier 'visible' is not defined, leaving some ambiguity about which projects are shown.

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

Usage Guidelines2/5

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

The description gives no explicit guidance on when to use this tool over alternatives. It only contains the phrase 'List visible projects,' which implies the use case but does not mention any sibling tools, exclusions, or conditions that would help an agent choose between this and projects_get or other list tools.

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

sprrint_projects_remove_memberC

Remove a person from a project.

ParametersJSON Schema
NameRequiredDescriptionDefault
projectYes
user_idYes

TDQS

C2.7/5.0
Behavior2/5

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

There are no annotations, so the description carries the full burden of behavioral disclosure. It only states that a person is removed; it does not mention irreversibility, required permissions, cascading effects on tasks/memberships, or return behavior.

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?

The description is a single short sentence with no filler, repetition, or redundant restatement of the tool name. It earns its place entirely.

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

Completeness2/5

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

While the operation is conceptually simple, the absence of annotations, parameter guidance, and any mention of side effects leaves the agent without key context needed for safe invocation. The description is minimally adequate at best.

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

Parameters1/5

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

Schema description coverage is 0%, so the description must compensate by explaining parameter meaning and formats. It does not mention 'project' or 'user_id' at all, leaving unclear whether project is a name, slug, or ID and how the user_id should be obtained.

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

Purpose4/5

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

The description uses a specific verb and resource: "Remove a person from a project." It clearly describes the action and distinguishes it from adding a member, though it does not explicitly differentiate it from the similar sibling sprrint_workspace_remove_member beyond the word "project."

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives, no exclusions, and no mention of the sibling add/remove operations. An agent must infer usage entirely from the tool name and one-line description.

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

sprrint_projects_restoreB

Restore an archived project by numeric id.

ParametersJSON Schema
NameRequiredDescriptionDefault
project_idYes

TDQS

B3.4/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full burden of behavioral disclosure. It indicates that the action mutates project state ('restore'), but does not disclose permissions, idempotency, side effects, or error behavior. For a mutation tool with zero annotation coverge, this is a significant gap.

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?

The description is a single concise sentence that front-loads the verb and resource. Every word contributes to the core meaning with no redundancy or unnecessary detail.

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

Completeness3/5

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

For a tool with one parameter and no output schema or annotations, the description gives the minimal needed to understand the core operation. However, it lacks usage guidance and behavioral caveats, so an agent must infer important details about permissions, error cases, and what restoration entails.

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

Parameters2/5

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

The schema has 0% description coverge, and the description only says 'by numeric id', which merely repeats the integer type and 'Project Id' title already in the schema. It does not add meaningful parameter context such as where to find the id, constraints, or behavior when the id does not correspond to an archived project.

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?

The description uses a specific verb ('Restore') with a clear resource ('an archived project') and identifies the selection key ('by numeric id'). It clearly distinguishes this tool from sibling project operations like archive, delete, or update.

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

Usage Guidelines3/5

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

The description implies usage context by stating it restores archived projects, but it does not explicitly explain when to choose this tool over alternatives such as sprrint_projects_archive or sprrint_projects_list. There are no stated exclusions or prerequisites, so guidance is only implicit.

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

sprrint_projects_updateC

Update project settings.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameNo
projectYes
visibilityNo
descriptionNo
default_viewNo

TDQS

C2.6/5.0
Behavior2/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure. It conveys that the operation mutates project settings, but doesn't specify whether updates are partial or full-replacement, whether unspecified fields are left untouched or reset, whether validation occurs, or any permission requirements. For a mutation tool with zero annotation coverage, this is a significant gap.

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

Conciseness3/5

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

A three-word sentence with zero wasted words, front-loading the verb and resource. However, it errs toward under-specification, conveying almost nothing beyond what the tool name itself already implies, so it's minimal rather than genuinely concise.

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

Completeness2/5

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

For a mutation tool with 5 parameters, 0% schema description coverage, no annotations, and no output schema, the description is inadequate. An agent cannot determine which fields are updatable, whether partial updates are supported, what the 'project' parameter expects, or what a successful call returns.

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

Parameters2/5

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

Schema description coverage is 0%, so the description must compensate, but it adds no parameter meaning whatsoever — it doesn't even list which settings can be updated. The agent is left relying solely on property names like 'name' and 'visibility', with no clarification on what 'project' expects (ID vs slug), what values 'default_view' accepts, or how null defaults behave.

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

Purpose4/5

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

The description states a clear verb ('Update') and resource ('project settings'), which distinguishes it from sibling tools like sprrint_projects_create, archive, restore, and delete. However, 'settings' is somewhat generic and the description doesn't enumerate what settings are included, leaving the schema field names to do that work.

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

Usage Guidelines2/5

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

No guidance is provided on when to use this tool versus alternatives such as sprrint_projects_create (for new projects) or sprrint_projects_archive/delete (for lifecycle changes). The description neither names an alternative nor states any condition that would select this tool over others in the project CRUD family.

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

sprrint_sprints_createB

Create a sprint. Dates are YYYY-MM-DD. take is comma-separated task keys to pull in.

ParametersJSON Schema
NameRequiredDescriptionDefault
goalNo
nameYes
takeNo
statusNoplanned
ends_onYes
projectNo
categoryNo
starts_onYes

TDQS

B3.3/5.0
Behavior3/5

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

With no annotations provided, the description carries the full behavioral burden. It adds some value by disclosing the date format (YYYY-MM-DD) and that 'take' pulls comma-separated task keys into the sprint. However, it does not disclose validation behavior, side effects, idempotency, or response behavior for this mutation tool.

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

Conciseness4/5

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

Three short sentences with minimal waste; the purpose is front-loaded before format details. The prose is somewhat telegraphic and grammatically awkward ('Dates are YYYY-MM-DD', 'take is comma-separated task keys to pull in'), which prevents a perfect score.

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

Completeness2/5

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

For an 8-parameter mutation tool with no annotations and no output schema, the description is insufficient. It covers date and take formats but omits the meaning of name, goal, status, project, and category, and gives no sense of what the tool returns or expects operationally.

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

Parameters3/5

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

Schema description coverage is 0%, so the description must compensate. It adds real meaning for starts_on/ends_on (date format) and take (comma-separated keys), which the schema does not provide. However, it leaves the required 'name' parameter and goal, status, project, and category unexplained, so compensation is partial.

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?

States a specific verb and resource, 'Create a sprint,' which clearly identifies the operation. The action verb 'create' distinguishes it from sibling sprint tools (sprints_update, sprints_delete, sprints_list, sprints_get) without needing to read their schemas.

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

Usage Guidelines2/5

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

The description gives no guidance on when to use this tool versus alternatives such as sprints_update or tasks_create. Usage context is only implied by the verb 'create,' with no exclusions, prerequisites, or sibling routing provided.

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

sprrint_sprints_deleteA

Delete a sprint. move=free sends remaining tasks to the Black Hole.

ParametersJSON Schema
NameRequiredDescriptionDefault
moveNofree
slugYes
projectNo

TDQS

A3.5/5.0
Behavior4/5

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

With no annotations, the description discloses the destructive nature ('Delete') and a concrete consequence: move=free sends remaining tasks to the Black Hole. It does not state irreversibility or other move values, but the core behavior is transparent.

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?

Two short sentences with the primary action first and a valuable behavioral detail second. No filler or redundant phrasing.

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

Completeness2/5

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

The description is too minimal for a destructive operation with no annotations and no output schema. It omits return expectations, whether deletion is permanent, how project scopes the sprint, and behavior when move is not free.

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

Parameters2/5

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

Schema coverage is 0% and the description only explains move=free. The required slug parameter and optional project parameter are left undocumented by both schema and description, so the agent must infer their meaning from names.

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?

The description states a precise action: 'Delete a sprint.' It identifies the resource (sprint) and verb (delete), and the Black Hole detail further distinguishes this tool from generic delete or update tools.

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

Usage Guidelines2/5

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

There is no guidance on when to use this delete tool versus alternatives, no prerequisites, and no warnings about when deletion is inappropriate. The only usage hint is the obvious purpose embedded in the name and description.

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

sprrint_sprints_getC

Get a sprint and its tasks.

ParametersJSON Schema
NameRequiredDescriptionDefault
slugYes
projectNo

TDQS

C2.7/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full burden of behavioral disclosure. 'Get' implies a read operation, but the description does not mention response format, whether tasks are embedded, permissions, or error behavior.

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

Conciseness4/5

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

The description is one short sentence with no filler, and the core action is stated directly. It is efficiently structured, though it sacrifices useful detail for brevity.

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

Completeness2/5

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

With no annotations and no output schema, the description should provide more contextual information. It fails to describe how parameters are used, what the return value contains, or when this tool should be chosen over related sprint and task tools.

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

Parameters2/5

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

Schema description coverage is 0%, and the description does not explain what 'slug' or 'project' mean or how they affect the result. The field names are somewhat self-explanatory, but the description adds no parameter-level meaning.

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

Purpose4/5

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

The description states a specific verb ('Get') and resource ('a sprint and its tasks'), which makes the tool's purpose clear. It is distinguishable from sprints_list because it explicitly includes tasks, though it does not name the alternative.

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

Usage Guidelines2/5

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

There is no guidance on when to use this tool versus sprints_list, tasks_list, or tasks_get. The description implies sprint-specific task retrieval but provides no context, exclusions, or alternatives.

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

sprrint_sprints_listB

List sprints. status is planned|active|done.

ParametersJSON Schema
NameRequiredDescriptionDefault
statusNo
projectNo

TDQS

B3.2/5.0
Behavior3/5

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

No annotations are provided, so the description carries the full burden. It discloses the main operation and the valid status values, which is useful. However, it does not describe default behavior, return format, pagination, or whether the operation is strictly read-only.

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?

Two short sentences with no filler. The verb-first structure immediately communicates the operation, and the second sentence adds essential status constraints without extra text.

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

Completeness2/5

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

For a tool with no annotations, no output schema, and 0% schema description coverage, the description is too sparse. It leaves the project parameter undefined and does not clarify output shape or filtering behavior, so an agent may not invoke it correctly in all intended cases.

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

Parameters3/5

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

Schema description coverage is 0%, so the description must compensate. It meaningfully documents the status parameter with planned|active|done, which the schema does not. The project parameter remains entirely undescribed, leaving a notable gap.

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

Purpose4/5

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

The description states a clear verb and resource: 'List sprints.' This distinguishes it from sprints_get, sprints_create, sprints_update, and sprints_delete by operation type, though it does not explicitly name any sibling. The status domain values add precision to the tool's purpose.

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

Usage Guidelines2/5

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

There is no guidance about when to prefer this tool over alternatives or when not to use it. The agent must infer the list role from the name alone. No mention of whether project filtering is for a project ID, key, or something else.

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

sprrint_sprints_updateC

Update a sprint.

ParametersJSON Schema
NameRequiredDescriptionDefault
goalNo
nameNo
slugYes
statusNo
ends_onNo
projectNo
starts_onNo

TDQS

C2.3/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full burden of disclosing behavior. It only indicates that the action mutates a sprint; it does not mention partial-update semantics, required authentication, side effects, reversibility, or what happens when fields are omitted or set to null.

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

Conciseness2/5

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

The description is short, but this is under-specification rather than effective conciseness. It provides no structured information that helps an agent select or invoke the tool correctly.

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

Completeness1/5

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

With seven parameters, no output schema, and no annotations, a two-word description is severely insufficient. An agent cannot determine required inputs, optional update behavior, or expected results without additional information.

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

Parameters1/5

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

Schema description coverage is 0%, so the description must compensate by explaining parameter meaning, but it does not mention any of the seven parameters. The slug identifier, updatable fields, and nullable-field semantics are all left undocumented.

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

Purpose4/5

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

The description states the generic verb-resource pair 'Update a sprint', which is specific enough to identify the mutation target. However, it reads like a paraphrase of the tool name and provides no details about what fields or behaviors are involved, and it does not explicitly distinguish itself from sibling sprint tools.

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

Usage Guidelines2/5

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

There is no guidance about when to use this tool instead of sprrint_sprints_create, sprrint_sprints_delete, sprrint_sprints_get, or sprrint_sprints_list. No context, prerequisites, or alternative conditions are provided.

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

sprrint_tasks_commentB

Comment on a task. parent is an optional comment id for a reply.

ParametersJSON Schema
NameRequiredDescriptionDefault
keyYes
bodyYes
parentNo
projectNo

TDQS

B3.1/5.0
Behavior2/5

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

No annotations are provided, so the description must carry the full behavioral disclosure burden. It only states the action and the parent parameter; it does not mention required permissions, effects, idempotency, error behavior, or return values for a mutating operation.

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

Conciseness4/5

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

The description is concise and front-loaded, with no unnecessary filler. It is a short, useful statement, though its brevity contributes to the lack of parameter and behavioral detail.

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

Completeness2/5

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

For a tool with 4 parameters, no annotations, and no output schema, the description is incomplete. It explains the core action and reply semantics but omits guidance on key/body/project meaning, return behavior, and side effects, leaving an agent with significant gaps.

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

Parameters2/5

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

Schema description coverage is 0%, so the description must compensate for all four parameters. It only explains 'parent' as an optional comment id for a reply; 'key', 'body', and 'project' remain undocumented and are left to inference.

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

Purpose4/5

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

The description clearly states the action ('Comment on a task') and the resource, making the purpose immediately understandable. It does not explicitly differentiate from sibling task tools like tasks_update or tasks_create, though the 'comment' verb is reasonably distinct.

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

Usage Guidelines4/5

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

The description gives clear context: use this tool to comment on a task, and use the parent parameter for replies. It does not explicitly state when not to use it or name alternatives, but the intended usage is clear enough for agent selection.

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

sprrint_tasks_createB

Create a task. status is todo|progress|blocked|done. priority is none|low|medium|high. tags is comma-separated.

ParametersJSON Schema
NameRequiredDescriptionDefault
tagsNo
titleYes
due_onNo
sprintNo
statusNotodo
projectNo
assigneeNo
categoryNo
priorityNonone
descriptionNo

TDQS

B3.1/5.0
Behavior2/5

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

No annotations are provided, so the description bears the full burden of behavioral disclosure. It states the mutating action 'Create a task' and gives enum-like constraints for status and priority, but it does not disclose return behavior, authorization needs, required fields beyond title, or what happens when optional fields are omitted. This is minimal transparency for a tool with no annotation support.

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?

The description is four short sentences, each carrying distinct information: the core action, status allowed values, priority allowed values, and tags format. It is front-loaded with the main purpose and wastes no words. This is an efficient structure for the content it provides.

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

Completeness2/5

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

Given 10 parameters, no annotations, and no output schema, the description is incomplete for confident invocation. It does not cover most optional parameters, does not explain date formats or identifier conventions, and does not clarify what response the agent should expect. The description is enough for a trivial title-only creation but not for informed use of the broader parameter set.

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

Parameters2/5

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

Schema description coverage is 0%, so the description must compensate for the schema's silence. It does add useful meaning for status, priority, and tags, specifying allowed values and format. However, seven other parameters (due_on, sprint, project, assignee, category, description, title) receive no semantic explanation, leaving most of the parameter space underdocumented.

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?

The description opens with a clear verb and resource: 'Create a task.' This directly states the tool's function and distinguishes it from related siblings like sprrint_tasks_update, sprrint_tasks_move, and sprrint_tasks_comment. No ambiguity about what action is performed.

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

Usage Guidelines2/5

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

The description offers no guidance on when to use this tool versus alternatives. It does not mention that updating, moving, or commenting on tasks should use their respective sibling tools, nor does it specify contexts where creation is appropriate. The 'Create a task' phrase implies its use case, but no explicit usage boundary is given.

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

sprrint_tasks_getA

Get a task by key (BR-12), including comments and attachments.

ParametersJSON Schema
NameRequiredDescriptionDefault
keyYes
projectNo

TDQS

A3.6/5.0
Behavior3/5

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

With no annotations provided, the description must carry the behavioral transparency burden. 'Get' strongly implies a read-only operation, and 'including comments and attachments' discloses part of the return content. However, the description does not mention error behavior, project scoping side effects, or any permissions requirements, leaving gaps for such a minimal tool.

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?

The description is a single, front-loaded sentence with no filler or redundant phrasing. Every part adds value: the action, the identifier format, and the included related data. It is an appropriately sized description for a simple getter tool.

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

Completeness3/5

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

Contextual completeness is moderate for a low-complexity tool. The description covers the main purpose and included data, but the semantics of the optional 'project' parameter remain undocumented and no output schema exists to clarify the return shape. Given the simple nature of the tool, this is acceptable but not fully complete.

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

Parameters2/5

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

Schema description coverage is 0%, so the description must compensate, but it only elaborates on the 'key' parameter by providing an example format ('BR-12'). The optional 'project' parameter is left completely unexplained in both the schema and the description. An agent could not confidently know how or why 'project' affects the lookup.

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?

The description clearly states the action ('Get'), the resource ('a task'), and the key lookup mechanism ('by key (BR-12)'), making the tool's purpose immediately obvious. It also indicates that the response includes comments and attachments, which adds useful specificity beyond the bare resource name. This distinguishes it from related tools like sprrint_tasks_list.

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

Usage Guidelines3/5

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

The description implies the tool should be used when the agent already has a task key and needs the full task details. However, it does not explicitly mention alternative tools like sprrint_tasks_list or sprrint_search, nor does it state when not to use this tool. The usage context is clear but only implied, not directly contrasted with siblings.

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

sprrint_tasks_listC

List tasks on a project. assigned is me|any|username. due is any|overdue|soon|later. sprint can be a slug or free.

ParametersJSON Schema
NameRequiredDescriptionDefault
qNo
dueNoany
sprintNo
projectNo
assignedNoany

TDQS

C2.7/5.0
Behavior2/5

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

With no annotations, the description carries the full burden of disclosing behavior. It explains allowed values for assigned, due, and sprint, which is a start, but it does not state whether this is a read-only operation, whether archived or completed tasks are included, whether authentication is needed, or what the response contains. The terse format is closer to parameter docs than behavior disclosure.

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

Conciseness4/5

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

Very short and front-loaded: the purpose appears first, followed by compact filter hints. Every phrase attempts to carry meaning. The main issue is that brevity cuts into clarity (the 'free' note is unclear), but as a conciseness score rather than completeness, it earns a 4.

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

Completeness2/5

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

Given five optional parameters, no output schema, and no annotations, an agent has insufficent context. The description explains three filter value sets but omits q and project entirely, never explains the response format, and does not state the default scope of the list. This is a meaningful gap for a tool an AI agent will call with no structured fallback.

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

Parameters2/5

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

Schema coverage is 0%, so the description must compensate. It partially does: 'assigned is me|any|username' provides enum-like values, 'due is any|overdue|soon|later' gives valid options, and 'sprint can be a slug or free' hints at format. But q and project are left completely unexplained, and 'free' is ambiguous (free text vs the word 'free'). The description adds value for only 3 of 5 parameters and does so unevenly.

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

Purpose4/5

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

States a specific action and resource: 'List tasks on a project.' The named filters (assigned, due, sprint) help distinguish it from single-task tools like sprrint_tasks_get or create/update/comment tools. However, it does not clarifiy whether the list is scoped to a single project or all projects when project is omitted, and the sibling search tool is not differentiated.

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

Usage Guidelines2/5

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

Provides no guidance on when to choose this tool over alternatives. The description implies it is for listing tasks with filters, but it does not contrast with sprrint_search (likely the alternative for queries) or sprrint_tasks_get. It also does not state prerequisites like whether a project is required or what happens without one.

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

sprrint_tasks_moveC

Move a task to todo, progress, blocked, or done.

ParametersJSON Schema
NameRequiredDescriptionDefault
keyYes
statusYes
projectNo

TDQS

C2.9/5.0
Behavior2/5

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

There are no annotations, so the description carries the full disclosure burden. It reveals the core state-changing behavior and the valid target statuses, but it says nothing about permissions, reversibility, side effects, or whether transitions are restricted. For a mutation tool, this is a meaningful gap.

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

Conciseness4/5

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

The description is a single, front-loaded sentence with no unnecessary words or restatement of schema fields. It is easy for an agent to parse, even though it is arguably too thin in substance.

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

Completeness2/5

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

Given no annotations, no output schema, and no parameter descriptions, a three-parameter mutation tool needs more context to be invoked safely. The status values are present, but the meaning of `key`, the role of `project`, and the expected result are missing, leaving room for guesswork.

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

Parameters3/5

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

The description adds important meaning to the `status` parameter by enumerating the exact accepted values, which the schema itself does not provide. However, `key` and the optional `project` parameter remain essentially unexplained, so the description only partially compensates for the 0% schema description coverage.

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

Purpose4/5

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

The description identifies a concrete operation ('Move'), the resource ('a task'), and the allowed destinations (todo, progress, blocked, done). It is specific and easy to understand, but it does not explicitly distinguish this tool from the sibling sprrint_tasks_update, which could plausibly perform similar status changes.

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

Usage Guidelines2/5

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

No guidance is given on when to use this tool versus alternatives like sprrint_tasks_update. The allowed status values are helpful, but the description does not state when a move is appropriate, what prerequisites exist, or when another tool should be chosen.

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

sprrint_tasks_updateA

Update a task. Pass only the fields that should change; others stay as they are.

ParametersJSON Schema
NameRequiredDescriptionDefault
keyYes
tagsNo
titleNo
due_onNo
sprintNo
statusNo
projectNo
assigneeNo
categoryNo
priorityNo
descriptionNo

TDQS

A3.5/5.0
Behavior3/5

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

With no annotations present, the description carries the behavioral burden. It usefully discloses the partial-update behavior: unspecified fields remain unchanged. However, it does not address permissions, side effects, failure modes, or what happens when the provided key does not exist. It adds some meaningful behavior but is not fully transparent.

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?

Two short sentences, front-loaded with the core action and immediately followed by the most important usage rule. Every word earns its place, and there is no redundant or filler content.

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

Completeness2/5

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

Despite the simple tool, there are 11 parameters, no annotations, and no output schema. The description leaves unclear how to clear optional fields, what the 'key' parameter refers to semantically, and what the tool returns after update. For an update tool with this many nullable fields, the context provided is too thin.

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

Parameters2/5

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

Schema description coverage is 0%, so the description must compensate for the lack of parameter documentation. The generic partial-update statement helps, but it fails to explain key identity semantics or the critical ambiguity around null values—whether passing null clears a field or leaves it unchanged. With 10 optional fields and no field-specific descriptions, this is a noticeable gap.

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?

The description begins with a clear verb and resource: 'Update a task.' It also conveys the partial-update semantics, which distinguishes this from tasks_create, tasks_move, and other sibling task tools. An agent can immediately tell what this tool is for.

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

Usage Guidelines3/5

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

The instruction 'Pass only the fields that should change' provides clear usage guidance for how to call the tool. However, it does not explicitly state when to choose this over alternatives like sprrint_tasks_create or sprrint_tasks_move, nor does it give exclusions or edge-case guidance. The intended context is implied rather than explicit.

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

sprrint_whoamiA

Show the signed-in Sprrint user and workspace.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A3.8/5.0
Behavior3/5

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

No annotations are present, so the description carries the full behavioral burden. 'Show' implies a read-only operation and adds the 'signed-in' context, but it does not disclose permissions, error behavior, or return format. This is adequate for a simple whoami but thin.

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?

A single, front-loaded sentence with no filler. Every word earns its place; it states the subject, verb, and object clearly.

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

Completeness4/5

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

The tool is zero-parameter and low-complexity, and the description states its core purpose. However, since there is no output schema, the description leaves the exact shape of the returned user and workspace data to inference, making it slightly less than fully complete.

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?

The input schema has zero parameters and no required fields, so there is nothing for the description to add beyond the schema. The baseline of 4 for a zero-parameter tool applies.

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?

The description uses a specific verb ('Show') and resource ('signed-in Sprrint user and workspace'). This clearly distinguishes it from sibling tools, none of which claim to return current user/workspace identity.

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

Usage Guidelines2/5

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

There is no guidance on when to use this tool versus its siblings, nor any mention of alternatives or exclusions. The only implicit hint is the word 'signed-in', which suggests checking authentication context, but the description never states when to call it.

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

sprrint_workspace_getA

Workspace settings, members, pending invites, and archived projects.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A3.7/5.0
Behavior3/5

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

No annotations are present, so the description carries the behavioral disclosure burden. It hints at a read-only operation by listing returned data, but it does not explicitly state that it modifies nothing or describe edge cases like missing workspaces or permission failures.

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?

The description is a single information-dense phrase with no filler. The four content categories are front-loaded and immediately parsable.

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

Completeness4/5

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

For a parameterless getter with no output schema, the description covers the main returned content areas. It does not detail return shape or edge cases, but the tool's simplicity makes this a minor gap.

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?

The tool has zero parameters and schema description coverage is 100%, so there is nothing for the description to add. The baseline for a zero-parameter tool applies.

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

Purpose4/5

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

The description lists the specific workspace resources returned (settings, members, pending invites, archived projects), making the purpose clear despite lacking an explicit verb. The content list distinguishes it from workspace mutation siblings.

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

Usage Guidelines3/5

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

The description implies a read-only workspace retrieval role but never explicitly states when to use it over siblings like sprrint_workspace_update or sprrint_workspace_invite. No alternatives or exclusions are named.

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

sprrint_workspace_inviteB

Invite someone to the workspace by email. role is member|admin.

ParametersJSON Schema
NameRequiredDescriptionDefault
roleNomember
emailYes

TDQS

B3.1/5.0
Behavior2/5

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

With no annotations, the description carries full behavioral disclosure burden. It only says 'invite' and the role format, but does not disclose consequences like sending an email, creating a pending invitation, duplicate handling, or whether the invitee must accept.

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?

A single sentence that front-loads the action and resource, then states the role constraint. No redundant words or repetition of the schema.

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

Completeness3/5

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

For a simple two-parameter tool, the description covers the core call requirements (email and role). However, absence of annotations and output schema leaves gaps about invitation flow, error conditions, and post-invite state, making it only minimally adequate for an agent.

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

Parameters3/5

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

Schema description coverage is 0%, so the description must compensate. It does add meaning by defining role as 'member|admin', which clarifies the only non-obvious parameter. Email is self-explanatory. However, it does not elaborate on email format or role default behavior beyond what the schema shows.

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

Purpose4/5

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

The description states a specific action ('Invite someone to the workspace by email') with a clear resource and method. The verb 'invite' differentiates it from sibling member-management tools like workspace_set_role or remove_member, though it does not explicitly name alternatives.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives such as workspace_set_role, workspace_remove_member, or projects_add_member. The context is implied by the verb 'invite', but no exclusions or conditions are provided.

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

sprrint_workspace_remove_memberC

Remove a person from the workspace.

ParametersJSON Schema
NameRequiredDescriptionDefault
user_idYes

TDQS

C2.9/5.0
Behavior2/5

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

Annotations are entirely absent, so the description carries the full behavioral burden. 'Remove' signals a mutating/destructive operation, but the description does not disclose whether the removal is reversible, what permissions are required, or what happens to the removed person's tasks or content.

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

Conciseness4/5

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

One sentence with zero waste, and the action is front-loaded. It is concise, though it achieves conciseness by omitting useful operational context.

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

Completeness2/5

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

For a one-parameter tool this is partly adequate, but it is a destructive workspace action with no annotation coverage, no output schema, and no error or edge-case context. An agent cannot tell what to check before calling it or what a successful or failed call looks like.

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

Parameters2/5

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

With schema description coverage at 0%, the description needed to explain user_id, but it only refers to 'a person' without explicitly mapping that person to the user_id parameter. The schema's field name and title already carry most of the meaning, so the description adds little.

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?

The description states a specific verb ('Remove') and a clear resource ('workspace'), so an agent can distinguish it from siblings like projects_remove_member. The wording is slightly informal ('person' rather than 'member'), but the intent is unambiguous.

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

Usage Guidelines2/5

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

There is no guidance on when to use this tool compared to workspace_invite, workspace_set_role, or projects_remove_member. No prerequisites, exclusions, or edge cases (e.g., admin permission, removing self) are mentioned.

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

sprrint_workspace_set_roleB

Change a workspace member role. role is owner|admin|member.

ParametersJSON Schema
NameRequiredDescriptionDefault
roleYes
user_idYes

TDQS

B3.3/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full behavioral disclosure burden. 'Change' indicates mutation, but the description omits permissions required, constraints on role transitions, and potential effects such as changing an owner. For a mutation tool, this leaves important behavior undocumented.

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?

The description is two short, front-loaded sentences. The core action comes first, and the role value domain is stated without any filler. Every word contributes.

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

Completeness3/5

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

For a simple two-parameter mutation with no annotations and no output schema, the description gives enough to attempt a basic call: the purpose and valid role values. However, it omits preconditions, permission context, and role-transition caveats, making it adequate but incomplete.

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

Parameters3/5

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

The schema has 0% description coverage and no enum on the role parameter. The description adds meaningful value by stating 'role is owner|admin|member', but it does not explain user_id beyond what the parameter name implies. Compensation for the missing schema descriptions is only partial.

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

Purpose4/5

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

The description uses a specific verb ('Change') and resource ('workspace member role'), and it clarifies the role domain with 'owner|admin|member'. It is not a tautology, but it does not explicitly distinguish itself from siblings like sprrint_workspace_update, sprrint_workspace_invite, or sprrint_workspace_remove_member.

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

Usage Guidelines3/5

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

The description implies when to use the tool: when a workspace member's role needs to change. However, it provides no explicit guidance on when not to use it or which sibling tool to prefer, so the usage decision is left mostly to inference.

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

sprrint_workspace_updateC

Update workspace name, slug, or description.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameNo
slugNo
descriptionNo

TDQS

C2.7/5.0
Behavior2/5

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

While 'Update' signals a mutation, with no annotations available the description carries the full burden of behavioral disclosure. It does not state whether fields are overwritten wholesale, how null parameters are treated (e.g., leave unchanged), any permissions required, or whether the operation is reversible. The naming of the three fields gives some transparency but not enough.

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

Conciseness4/5

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

The description is a single concise sentence with the action front-loaded. It is free of redundancy, though its brevity crosses into under-specification; still, it is appropriately structured for a simple update operation.

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

Completeness2/5

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

With no annotations, no output schema, and minimal parameter documentation, the description does not fully cover what an agent needs. It omits behavior on null fields, possible validation failures, and what the response looks like. For a workspace mutation tool among many related siblings, this is a meaningful gap.

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

Parameters2/5

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

Schema description coverage is 0%, so the description must compensate. It lists the three parameters (name, slug, description) but adds no meaning beyond the property names already present in the schema. There is no mention of constraints, formats, or interaction between parameters, leaving the agent without the semantics needed to invoke the tool correctly.

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

Purpose4/5

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

The description clearly states that the tool updates the workspace name, slug, or description, identifying the verb, resource, and specific fields. It distinguishes from sibling tools like workspace_set_role and workspace_invite by its focus on basic workspace attributes, though it does not explicitly differentiate itself from workspace_get.

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

Usage Guidelines2/5

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

There is no guidance about when to use this tool versus alternatives such as sprrint_workspace_set_role or sprrint_workspace_get. The description provides no context on prerequisites, typical use cases, or exclusions, leaving the agent to infer when an update is appropriate.

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

TDQS

C2.7/5.0
Disambiguation4/5

Most tools are scoped by resource and action, so projects, tasks, sprints, workspace, and black hole operations are easy to tell apart. A few pairs could still be confused, especially sprrint_now vs sprrint_tasks_list and sprrint_tasks_update vs sprrint_tasks_move.

Naming Consistency4/5

The dominant pattern is sprrint_<resource>_<action>, which is consistent and readable across most tools. The top-level view tools like whoami, overview, now, search, activity, and home do not follow that pattern, so the naming is not perfectly uniform.

Tool Count2/5

40 tools is well above the 25+ threshold for a single MCP server, even though the tools are organized by resource. Several dashboard and global tools could likely be consolidated or split out to reduce the agent's cognitive load.

Completeness3/5

Projects and sprints have solid lifecycle coverage, and tasks support create, get, list, update, move, and comment. However, there is no task deletion path, no API key revocation/deletion, and no category update, leaving notable gaps in the overall surface.

Maintenance

ActivityMaintained
ResponsivenessNo issues

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • A
    license
    B
    quality
    C
    maintenance
    Enables AI assistants to interact with ProjectHub for comprehensive project management through natural language. It provides 25 tools to manage tasks, workspaces, time tracking, notes, and discussions via the ProjectHub API.
    47
    271
    MIT
  • A
    license
    B
    quality
    C
    maintenance
    Enables AI agents to manage Jira projects and issues using natural language, including creating, updating, searching issues, managing sprints, and more via the Jira API.
    36
    98
    1
    MIT

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/ejasmuhamed/sprrint-cli'

If you have feedback or need assistance with the MCP directory API, please join our Discord server