Skip to main content
Glama

Twenty MCP by usefulapi

List tasks

twenty_list_tasks
Read-only

List/filter tasks. Supports cursor pagination, raw filter/order_by, and relation depth. Twenty REST: GET /rest/tasks.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
depthNoHow deep to hydrate related records: 0, 1, or 2.
limitNoResults per page (1-60, default 20 — Twenty caps at 60).
filterNoRaw Twenty filter string, passed verbatim as ?filter=. Syntax: field[comparator]:value, e.g. `employees[gte]:100` or `stage[eq]:"MEETING"`. Comparators: eq, neq, gt, gte, lt, lte, in, is, like, ilike, startsWith.
order_byNoRaw Twenty ordering string, passed verbatim as ?order_by=, e.g. `createdAt[DescNullsLast]`.
ending_beforeNoPagination cursor — return records before this cursor (from a previous page's pageInfo).
starting_afterNoPagination cursor — return records after this cursor (from a previous page's pageInfo).

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • changedInput schema / $schema
      Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
  2. First observed

TDQS

B3.4/5.0
Behavior3/5

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

Annotations already carry the readOnlyHint=true safety profile, so the bar is lower. The description adds genuinely useful context beyond that: cursor pagination support, raw filter/order_by passthrough, relation-depth hydration, and the underlying REST endpoint (GET /rest/tasks). It omits rate limits, defaults, and what the response envelope contains, so it adds value but not rich behavioral detail.

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 terse sentences, front-loaded with the purpose and then the capability summary. No filler. The REST endpoint mapping is arguably extra, but it is short and useful for debugging/URL reasoning, so the slight redundancy is tolerable.

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 read-only list tool with no output schema, the description should hint at the return shape — particularly the pageInfo cursors that the starting_after/ending_before parameters depend on. It mentions cursor pagination but never names pageInfo as the cursor source, leaving a small but real gap for correct chained calls.

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 100%, so all six parameters are already documented in the schema with ranges, defaults and filter syntax examples. The description only repeats the categories (pagination, filter, order_by, depth) without adding syntax or default information beyond the schema. Baseline 3 is correct.

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 clear verb+resource combination ('List/filter tasks') that a reader can distinguish from twenty_get_task, twenty_create_task and twenty_update_task by inference. It doesn't explicitly name those siblings, but the list-vs-single distinction is unambiguous from the wording.

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 (listing/filtering many tasks) but gives no explicit 'use this instead of twenty_get_task when...' guidance or exclusions. Usage is only implied by the verb, leaving the agent to infer the boundary with the single-record getter.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.