Skip to main content
Glama

List agents

agents_list
Read-onlyIdempotent

Lists the project's agents with their current activity, newest first by default. Archived agents and subagents are excluded unless requested. Pass activity_state to keep only agents in that activity.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "orgID": "<orgID>",
      "projectID": "<projectID>"
    },
    "name": "agents_list"
  }
}

Input Schema

NameRequiredDescriptionDefault
nameNoCase-insensitive glob over the list's logical name. `*` matches zero or more characters, `?` matches one character, and `\` escapes a wildcard.
sortNoSort order for named resources that expose created and modified timestamps.
limitNoMaximum number of items to return in one page.
orgIDYesOrganization ID (org_...).
cursorNoOpaque pagination cursor from a previous response's next_cursor. Omit for the first page.
projectIDYesProject ID (proj_...).
include_usageNoInclude each agent's `usage`, so a list can show costs without a request per agent.
activity_stateNoReturn only agents whose current `activity.state` matches. `archived` includes archived agents even when `include_archived` is omitted.
parent_agent_idNoReturn only subagents spawned by this agent.
agent_profile_idNoReturn only agents launched from this agent profile.
include_archivedNoInclude archived agents. Defaults to false.
include_subagentsNoInclude subagents alongside top-level agents. Defaults to false, so only agents without a parent are returned unless parent_agent_id is set.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • addedInput schema / properties / activity_state
      Added value: +{
      +  "description": "Return only agents whose current `activity.state` matches. `archived` includes archived agents even when `include_archived` is omitted.",
      +  "enum": [
      +    "running",
      +    "idle",
      +    "waiting_on_interaction",
      +    "archived"
      +  ],
      +  "type": "string"
      +}
  2. Changed2 schema fields changed
    • addedInput schema / properties / orgID / description
      Added value: +"Organization ID (org_...)."
    • addedInput schema / properties / projectID / description
      Added value: +"Project ID (proj_...)."
  3. First observed

TDQS

A4.2/5.0
Behavior4/5

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

The annotations already declare this as a read-only, idempotent, non-destructive operation, so the description only needs to add behavioral detail. It usefully discloses the default sort order and that archived agents and subagents are excluded unless requested, which helps the agent understand the default result set.

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 and front-loads the core purpose. Every sentence contributes useful information about scope, default ordering, exclusions, or filtering, with no wasted wording.

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 twelve-parameter list tool with no output schema, the description covers the key behavioral defaults and filtering intent. The rich schema compensates for most parameter details, though the description could have mentioned pagination or pointed to agents_get for single-agent retrieval.

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 the schema already documents all twelve parameters with types, enums, patterns, and descriptions. The description reinforces activity_state and the archived/subagent defaults but does not add syntax or format details beyond what the schema provides.

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 states a specific verb and resource: it lists the project's agents. It also distinguishes this list operation from a single-agent fetch by describing filtering, default ordering, and exclusions, so the agent can tell it apart from siblings such as agents_get.

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 gives clear usage context: it lists project agents, defaults to newest first, excludes archived agents and subagents unless requested, and says to use activity_state to filter. It does not explicitly name alternatives like agents_get for fetching one agent, but the selection context is still clear.

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.