Skip to main content
Glama

todo_list

Idempotent

List todo summaries to find dispatchable work by status, priority, tags, or blocked state. Search titles, bodies, and slugs; archived items stay hidden unless included.

Instructions

List todo summaries. is_blocked=false finds dispatchable work. query matches title, body, and slug. Archived todos are excluded by default; include_archived=true retrieves them too.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
tagsNo
limitNo
queryNo
offsetNo
statusNo
priorityNo
is_blockedNo
project_idNoDifferent project override. Use ONLY when the user explicitly asks for another project by name; otherwise stay in the current scope, even when results are empty.
include_archivedNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.0.0

TDQS

A3.8/5.0
Behavior4/5

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

Adds real behavior beyond the schema: archived todos are excluded by default (a default the schema's optional include_archived boolean cannot express), and query matches title, body, and slug rather than just title. Worth noting: the annotations set readOnlyHint=false while the description presents a purely read/retrieve operation, but the description never claims a mutation, so this reads as an imprecise annotation rather than a misleading description.

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 clauses, front-loaded with the core action and then the highest-value filters, with no padding or repetition. The clause-per-parameter style is slightly telegraphic but every sentence earns its place.

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?

There is no output schema, nine parameters at 11% coverage, and no mention of pagination behavior (limit/offset defaults) or tags filtering, which an agent needs to page or narrow results correctly. The defaults it does cover (archived exclusion, dispatchable work) are the most important ones, so the definition is adequate but not complete.

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 only 11% (only project_id is documented), so the description carries most of the burden and it explains three of nine parameters: query (which fields it matches), is_blocked, and include_archived. tags, limit, offset, status, and priority are left to the schema's bare enum/type declarations, including the pagination defaults that a list tool should state.

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 verb and resource ("List todo summaries") and immediately qualifies the scope with filter semantics, which is more than a restatement of the name. It does not, however, name or contrast itself with the obvious sibling todo_get or the other todo_* tools, so the agent must infer the list-vs-single distinction from the name alone.

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?

Gives concrete selection cues: is_blocked=false "finds dispatchable work" and include_archived=true is the only way to see archived items. Both are when-to-use conditions an agent can act on. It stops short of naming an alternative tool or stating when not to use this one (e.g., use todo_get for a single todo).

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