list_projects
Paginated list of the projects the token can see, narrowed by status, client, search words or archived state.
Return every project the token's team can see, paginated: team-visible projects and the members-only projects the person belongs to, with a guest seeing only the projects they were invited into. Use this as a starter tool: most other tools take a project_id picked up here, and a project's key (such as CRM) prefixes every reference inside it (CRM-142).
Narrow with status (discovery, planning, in_development, in_testing, live, maintenance, on_hold, archived), client_id (a UUID), search (words in the key or name) and archived (true for archived projects only, false for live ones; omit for both).
Requires ability
The token behind the MCP session must hold it, or the call is refused with TOKEN_MISSING_ABILITY.
Runs the same action as
The REST endpoint and this tool share one action, so validation, permissions and events are identical.
Annotations
It reads and never changes anything.
Arguments
statusstringoptionalNarrow to one lifecycle status.
discoveryplanningin_developmentin_testinglivemaintenanceon_holdarchivedclient_idstringoptionalNarrow to the projects of one client, by UUID.
searchstringoptionalWords the project key or name must contain.
archivedbooleanoptional`true` includes archived projects, which are left out by default.
limitintegeroptionalProjects per page (1..100, default 25).
1max100pageintegeroptional1-indexed page number.
1What it returns
{ "data": [ { "id": "7f3d1c92-8b45-4e6a-9d21-5c8e0a4b6f13", "team_id": "a83f0d51-4c92-4b7e-8615-2fd9e70a3c86", "client_id": "c1a2b3d4-5e6f-4a7b-8c9d-0e1f2a3b4c5d", "key": "CRM", "name": "Customer Portal", "tagline": "Self-service portal for the client's account holders", "description": null, "status": "in_development", "methodology": "scrum", "visibility": "team", "health": "on_track", "lead_pm_id": "2a91c4e7-6f38-4b52-8e0d-9c1a7b3f5d80", "lead_ba_id": "2a91c4e7-6f38-4b52-8e0d-9c1a7b3f5d80", "lead_dev_id": "5e0c7a2d-9b1f-4c3e-8d6a-2f4b7c9e1a30", "lead_qa_id": null, "starts_on": "2026-09-01", "target_launch_on": "2027-01-15", "launched_on": null, "budget_hours": 1200, "archived_at": null, "created_at": "2026-08-20T10:05:00+00:00", "updated_at": "2026-10-24T16:40:00+00:00" } ], "meta": { "page": 1, "limit": 25, "total": 12, "has_more": false }}health is recomputed by the application from overdue items, failing runs, open incidents and stuck approvals; unknown means nothing has been measured yet.
How it fails
TOKEN_MISSING_ABILITYtoken lacks project:view-any.
VALIDATION_FAILEDstatus is not one of the eight statuses, or client_id is not a UUID.
How is this guide?
Last updated on