Skip to main content
Glama

Onfido MCP by usefulapi

List applicants

onfido_list_applicants
Read-only

List applicant (person) records in the Onfido account, paginated. Onfido API: GET /applicants.

Input Schema

NameRequiredDescriptionDefault
pageNoPage number (1-based). Default 1.
per_pageNoResults per page (max 500). Default 20.
include_deletedNoInclude applicants scheduled for deletion. Default false.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • changedInput schema / $schema
      Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
  2. First observed

TDQS

B3.2/5.0
Behavior3/5

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

readOnlyHint=true already tells the agent this is a safe, non-mutating read. The description adds the pagination trait and the POST/GET endpoint mapping, which is modest but real context. It says nothing about rate limits, permission scope, or default page traversal behavior, so it stays at the baseline for an annotated tool.

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?

Two short sentences with the core action front-loaded and no filler. The trailing 'Onfido API: GET /applicants' line is arguably redundant, but it is cheap and aids mapping to Onfido's own documentation.

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 simple, zero-required-parameter read tool whose safety profile is covered by annotations and whose parameters are fully documented in the schema, the description is essentially sufficient. No output schema exists, so return-value explanation is rightly absent; only the absence of any guidance on filtering or sibling choice is a gap.

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% – page, per_page, and include_deleted are each fully documented with defaults and bounds in the schema itself. The description only echoes pagination and adds no format, interaction, or edge-case meaning beyond what the schema already states.

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 applicant (person) records'), plus the underlying API endpoint, so the agent knows exactly what the tool returns. It does not explicitly distinguish itself from the singular sibling onfido_get_applicant, but the plural 'records' and pagination framing make the collection-vs-single distinction inferable.

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

Usage Guidelines2/5

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

There is no when-to-use guidance: nothing says to prefer this over onfido_get_applicant, whether any filtering is possible, or when include_deleted should be set. The only usage-adjacent statement is 'paginated', which describes mechanics rather than selection criteria.

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.