Skip to main content
Glama

asana_list_projects

Read-onlyIdempotent

Fetches projects from a specified workspace or team. Supports pagination, archived project inclusion, and selecting specific fields for the result.

Instructions

List projects in the workspace (or a team). Excludes archived by default; set include_archived=true for all. Paginated.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
teamNoTeam GID — list that team's projects instead of the whole workspace
limitNoPage size (max 100, default 100)
max_pagesNoMax pages to follow (default 20 = 2000 items)
workspaceNoWorkspace GID (default: configured/auto-detected workspace)
opt_fieldsNoOverride the rich default opt_fields. Pass field paths e.g. ["name","assignee.name","custom_fields.display_value"].
include_archivedNoInclude archived projects (default false)
Install Server

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false. The description adds behavioral details beyond annotations by noting the archived filter default behavior and pagination, which helps the agent understand the tool's output and the effect of include_archived without overstepping.

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 three short sentences with no fluff. The main action is front-loaded, followed by a key default behavior and a pagination note, all necessary information without repetition.

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 read-only list tool with comprehensive schema descriptions and readOnly annotations, the description covers essential operational context: workspace/team scope, archived filtering, and pagination. No output schema exists, so return value details are not required. Minor gaps like how pagination is controlled (cursor vs page) are already explained via the limit/max_pages parameter descriptions.

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 parameters are already fully documented. The description adds minor reinforcement by mapping 'workspace (or a team)' to workspace/team parameters and mentioning pagination relates to limit/max_pages, but does not introduce new semantic depth.

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' and the resource 'projects', and scopes it to 'the workspace (or a team)'. This provides a precise purpose and distinguishes it from other list tools like list_tasks or list_teams by naming the resource explicitly.

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 implies when to use it: for listing projects at workspace or team scope, and indicates a key filter behavior (archived excluded by default, can be included). It doesn't explicitly name alternative tools, but the scope is clear enough for an agent to select this over get_project or list_sections.

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

Other Tools

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/jtalk22/asana-mcp-server'

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