Skip to main content
Glama

Sapo MCP by usefulapi

List customers

sapo_list_customers
Read-only

List customers with contact details, addresses, order count and total spent. Paged. GET /admin/customers.json.

Input Schema

NameRequiredDescriptionDefault
pageNoPage number, from 1 (default 1). Pass the previous reply's next_page.
limitNoResults per page, 1-250 (default 50).
since_idNoOnly customers with an id greater than this.
created_on_maxNoISO 8601 date or date-time (UTC unless it carries an offset), e.g. 2026-10-01 or 2026-10-01T00:00:00Z.
created_on_minNoISO 8601 date or date-time (UTC unless it carries an offset), e.g. 2026-10-01 or 2026-10-01T00:00:00Z.
modified_on_maxNoISO 8601 date or date-time (UTC unless it carries an offset), e.g. 2026-10-01 or 2026-10-01T00:00:00Z.
modified_on_minNoISO 8601 date or date-time (UTC unless it carries an offset), e.g. 2026-10-01 or 2026-10-01T00:00:00Z.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A3.7/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false and openWorldHint=true, so the description only needs to add context — and it does: it discloses that results are paginated and what fields come back (contact details, addresses, order count, total spent). It also pins the underlying endpoint (GET /admin/customers.json), which helps the agent understand data provenance. It does not state default page size or total-count behavior, though the schema covers the first.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three short, front-loaded sentences with no filler; the returned-field list comes first, which is what an agent most needs. The trailing endpoint path is marginally useful metadata but slightly less valuable than the rest.

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, seven-optional-filter list tool with no output schema, the description covers purpose, return fields and pagination, and the schema fully documents filters. It stops short of explaining how the filters can be combined or that an empty filter set returns the full customer base, but nothing essential to a correct call is missing.

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 all seven filters (page, limit, since_id, created_on_*, modified_on_*) are already documented with formats, ranges and defaults. The description adds nothing parameter-specific beyond the word 'Paged', which merely signals that page/limit exist. Baseline 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?

States a specific verb and resource ('List customers') and enumerates the returned fields (contact details, addresses, order count, total spent), which distinguishes it from sapo_get_customer (single record) and sapo_count_customers. It never names those siblings explicitly, so the differentiation is inferred from naming convention rather than stated.

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

Usage Guidelines3/5

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

'Paged' implies the intended use for multi-record retrieval, but there is no explicit statement of when to reach for this versus sapo_count_customers for totals or sapo_get_customer for a single record. Usage is left to inference from the verb and the sibling names.

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.