Skip to main content
Glama

List projects

projects.list
Read-onlyIdempotent

List your projects with their branches and status. Start here to find project ids. Scope: projects:read.

Tool call template

This tool declares no required parameters. Add optional parameters from the input schema as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {},
    "name": "projects.list"
  }
}

Input Schema

NameRequiredDescriptionDefault
limitNoMaximum items to return (default 50)
cursorNoOpaque cursor from a previous page's next_cursor
organization_idNoOrganization id. Optional: defaults to the token's organization, or the only one you belong to.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4/5.0
Behavior4/5

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

The annotations already declare readOnlyHint, idempotentHint, and non-destructive behavior, so safety is covered. The description adds useful context beyond them: the response shape ('with their branches and status') and the required OAuth scope ('projects:read'), which an agent needs in order to know it has permission to call the tool. It says nothing about ordering or paging 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?

Three short sentences, with the tool's purpose front-loaded and the scope constraint last. Nothing is padded or restated from the title.

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?

There is no output schema, but the description says what the response contains (projects with branches and status), which covers the main gap. With 100% schema coverage covering parameters and annotations covering safety, the definition is nearly complete; only pagination and ordering conventions are left unstated.

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%, and all three parameters (limit, cursor, organization_id) are documented in the schema itself, including that organization_id defaults to the token's organization. The description adds no parameter-level meaning, so the baseline of 3 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 gives a specific verb and resource ('List your projects') and adds scope by stating the response includes branches and status. It does not distinguish itself from the closely named siblings project.list and project.get, so an agent could hesitate between them, but the tool's own function is clear.

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?

'Start here to find project ids' is explicit entry-point guidance that tells the agent when this tool is the right first call. It stops short of naming alternatives (project.get or project.list), so no exclusion rules are given.

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.

Resources