Skip to main content
Glama

Onfido MCP by usefulapi

Create applicant

onfido_create_applicant
Destructive

Creates an applicant (person) record in Onfido. Onfido API: POST /applicants. Creates a PII record only — runs NO verification check and costs nothing.

Input Schema

NameRequiredDescriptionDefault
dobNoDate of birth, yyyy-mm-dd.
emailNoApplicant email address.
addressNoAddress object (building_number, street, town, postcode, country, …). Passed through as-is.
locationNoLocation object (ip_address, country_of_residence, …) for consent tracking. Passed through as-is.
last_nameYesApplicant's last name (required).
first_nameYesApplicant's first name (required).
id_numbersNoArray of id-number objects ({ type, value, state_code? }). Passed through as-is.
phone_numberNoPhone number in E.164 or local format.

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

A4.2/5.0
Behavior4/5

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

Annotations are sparse (only destructiveHint=true), so the description adds genuine value by disclosing that no verification check runs and no cost is incurred, plus that the record holds PII. It does not state persistence/reversibility or whether creation is idempotent, which leaves some mutation behavior unstated.

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, front-loaded with the verb and resource, followed by the endpoint and the key behavioral caveat. No filler or repetition of schema content.

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 an 8-parameter write tool with nested objects and no output schema, the description covers the workflow-critical facts (PII-only, no check, no cost). It omits what the call returns (e.g., the applicant ID needed to trigger a subsequent check), which is a minor gap given no output schema exists to carry it.

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% — every parameter, including nested address/location/id_numbers, is documented in the schema, so the baseline is 3. The description adds no parameter-level syntax or format guidance beyond what the schema already carries.

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 names a specific verb and resource ('Creates an applicant (person) record in Onfido') and even maps it to the underlying API endpoint (POST /applicants). It clearly distinguishes this from the get/list/update siblings, which are all reads or mutations of existing applicants.

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?

It gives real selection context: 'Creates a PII record only — runs NO verification check and costs nothing,' which tells the agent this is a prerequisite step and that a check/workflow tool must be called separately. It does not explicitly name the follow-up sibling to use, so it stops short of full when-to-use routing.

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.