Skip to main content
Glama

KYB / AML summary

kyb_check
Read-onlyIdempotent

One-call Know-Your-Business summary for one company: registry status, insolvency, liquidation, sanctions screening, debarment, tax/social/health debts, VAT reliability and the overall risk verdict. Use before onboarding a customer or supplier. Coverage differs by country: checks[] gives each check as hit / clear / not_covered, and overall is INSUFFICIENT_DATA when no risk was found but the insolvency or sanctions registers do not exist for that country — that is NOT a clean result. A null field means WITHHELD or NOT MEASURED — it does NOT mean clean; say so when you report it.

Input Schema

NameRequiredDescriptionDefault
icoYesNational registry identifier (SK/CZ IČO, AT Firmenbuch number, PL KRS/REGON, FR SIREN, …). Leading zeros are normalised server-side.
countryNoISO 3166-1 alpha-2 country of the register (e.g. SK, CZ, AT, PL). Strongly recommended: registry numbers are NOT unique across countries (an SK and a CZ company can share the same 8-digit IČO), and without it the server picks one by tie-break.
purposeNoLegal purpose for natural-person (FO) data, attested by the account holder. Only needed when the API key has full FO access; must be one of the purposes licensed on the key. Never guess it — ask the user if it is not known.

Output Schema

NameRequiredDescriptionDefault
dataNoConsolidated KYB/AML signals and the register the answer refers to.
metaNoRequest metadata: request_id (quote it in support requests), duration_ms, cached.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.4/5.0
Behavior5/5

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

Annotations already declare readOnly/idempotent/non-destructive, and the description adds the traits that actually cause misevaluation: coverage varies by country, `checks[]` is tri-state (hit/clear/not_covered), and `overall = INSUFFICIENT_DATA` is explicitly NOT a clean result. The null-field caveat (WITHHELD or NOT MEASURED, not clean) is exactly the kind of trap disclosure annotations cannot carry.

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?

Front-loaded correctly: purpose and scope first, usage trigger second, interpretation caveats last. Every sentence carries information, but the final third explains output-field semantics (`checks[]`, `overall`, nulls) that partially overlap with the available output schema, so it is slightly longer than strictly necessary.

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 rich annotations, a full output schema and 100% parameter coverage, the remaining burden is interpretive risk guidance — and the description supplies the two failure modes (country-coverage gaps and null-vs-clear confusion) that would otherwise cause the agent to report a false clean bill of health.

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 `ico`, `country` and `purpose` are already fully documented, including the cross-country identifier collision and the enum licensing constraint. The description adds nothing about input parameters — its references to `checks[]` and `overall` are output fields — so the baseline 3 applies.

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 concrete artifact ('One-call Know-Your-Business summary for one company') and then enumerates exactly what the summary contains: registry status, insolvency, liquidation, sanctions, debarment, tax/social/health debts, VAT reliability and an overall verdict. That enumerated scope cleanly separates it from broader siblings like get_company_details, company_brief or check_compliance without needing to name them.

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 an explicit trigger ('Use before onboarding a customer or supplier') and adds a reporting instruction ('say so when you report it'). It stops short of naming when to prefer an alternative sibling (e.g. check_compliance) or when not to use it, so it is clear context rather than full routing guidance.

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.