Skip to main content
Glama

List clients

list_clients
Read-onlyIdempotent

Use to browse clients (companies). Operator tokens (all workspaces) must pass team_id from list_teams. Team-scoped tokens may omit team_id and cannot target another workspace. Do not use to list websites — call list_projects with client_id. Archived clients are hidden unless status=all or archived.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
limitNoPage size, max 100.
cursorNoOpaque cursor from the previous page's next_cursor.
statusNoFilter by archive state. Defaults to active.
team_idNoTeam id from list_teams. Required for operator tokens and OAuth logins; team-scoped frw_ tokens may omit it.

Schema Changelog

Changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. First observed

TDQS

A4.7/5.0
Behavior4/5

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

Annotations already declare the tool read-only and idempotent, so the safety profile is covered. The description adds meaningful behavioral detail beyond the schema: operator tokens must pass team_id, team-scoped tokens cannot target another workspace, and archived clients are hidden unless status is set to 'all' or 'archived'. This adds useful context without contradicting the annotations.

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 sentences, all information-dense, with the core purpose front-loaded and the exclusionary guidance placed efficiently. There is no filler or repeated schema content; every sentence earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has no output schema and four parameters, the description covers the essential operational context: what the resource is, which sibling to use instead, token-based team_id requirements, and archive filtering behavior. This is complete enough for an agent to call the tool correctly in most situations.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the baseline is 3. The description goes further by clarifying the nuanced semantics of team_id for different token types and explaining the practical consequence of the status default. This adds value beyond what the parameter descriptions already state.

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-resource pair ('browse clients') and explicitly identifies clients as companies, removing ambiguity about the resource type. It also names a sibling tool (list_projects) and differentiates this tool by saying it is not for listing websites, which makes the purpose unmistakable.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives explicit when-to-use guidance and a clear exclusion: 'Do not use to list websites — call list_projects with client_id.' It also provides contextual usage rules for token scoping, explaining when team_id is required and when it may be omit, plus the archive-filter behavior. This is strong routing guidance with no reliance on inference.

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.

TDQS

A4/5.0
Disambiguation4/5

Most tools are clearly separated by resource and action (get_client vs list_clients vs create_client), and the descriptions explicitly warn against misuse. However, update_account and update_team both cover renaming a workspace/team, and get_account and get_project both return plan/usage/branding, creating a couple of genuinely confusing boundaries.

Naming Consistency4/5

The set overwhelmingly follows the snake_case verb_noun pattern: archive_client, create_form, get_submission, list_projects, rotate_project_inbox, test_webhook, etc. Minor deviations exist: bootstrap_site uses 'site' instead of 'project', update_team vs update_account introduces noun inconsistency, and upsert_project_webhook uses a different verb than the update_* family.

Tool Count2/5

With 27 tools, the server exceeds the 25-tool threshold that signals a too-large surface for an MCP server. While the broad scope (clients, projects, forms, submissions, teams, billing, webhooks) explains the count, there are redundant near-duplicates like update_account/update_team and bootstrap_site overlapping with multiple create tools, making the set feel bloated rather than curated.

Completeness3/5

The lifecycle coverage for clients, projects, and forms is solid with create, read, list, update, and archive operations. However, there is no unarchive (explicitly noted as unavailable), no submission management beyond read (no delete/export/update), and no webhook delivery history, leaving notable dead ends and gaps in the core workflow.