Skip to main content
Glama

AstraNL Dutch counterparty check

check_counterparty_nl

Read-onlyIdempotent

Check a Dutch or EU counterparty against official sources before your own next step, such as onboarding a supplier, paying an invoice or signing an order. Give the KvK number, the company name and the EU VAT number as your document states them. Returns verdicts, not register data: whether the KvK number has an active registration, whether the name matches a registered name, whether the VAT number is valid in VIES and whether its VIES name matches the register, EU sanctions list candidates, whether an insolvency case is published under the KvK number in the Dutch insolvency register, open questions and a check_id. Read-only, no key, no cost. AstraNL does not search the Dutch register by name; look a number up at kvk.nl. When a colleague or auditor must verify it later, call record_counterparty_check with the check_id. It does not prove who may sign for the company, who owns a bank account, solvency or reliability.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
cityNonot used; kept for compatibility, AstraNL does not search the register by name
purposeNooptional: the next action you are about to take, for example approve supplier or pay invoice
kvk_numberNoDutch KvK number, 8 digits, as printed on the invoice, quote or website
vat_numberNoEU VAT number with country prefix, for example NL810433941B01
company_nameNothe company name exactly as your document or contact states it

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.8/5.0
Behavior5/5

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

Beyond the annotations (readOnly, idempotent, non-destructive, openWorld), the description adds material behavioral context: read-only with no key and no cost, that it returns verdicts rather than register data, an itemized list of what the verdicts cover, and an explicit boundary of what it cannot prove (signing authority, bank account ownership, solvency, reliability). No annotation contradiction.

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?

Purpose and pre-action framing are front-loaded, and the return enumeration earns its length because there is no output schema. It is still dense and multi-sentence; the return list and the limitations paragraph could be tightened without losing meaning.

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?

With no output schema, the description carries the full burden of describing returns and does so thoroughly (registration status, name match, VIES validity and name match, sanctions candidates, insolvency case, open questions, check_id). Safety is covered by annotations and the remaining gaps are explicitly disclosed, so an agent has everything needed to call it correctly.

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, but the description adds real guidance beyond the schema: it instructs the caller to supply the KvK number, company name and EU VAT number exactly as the document states them, which matters for the name-match verdicts. It does not expand on the compatibility-only city field or the purpose field beyond what the schema already says.

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?

States a specific verb and resource (check a Dutch/EU counterparty against official sources) and pins the scope to a pre-action decision point. The description makes clear this is verification of identity/registration status rather than a generic lookup, and it is readily distinguishable from record_counterparty_check and verify_astranl.

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?

Explicit about when to invoke it ('before your own next step, such as onboarding a supplier, paying an invoice or signing an order') and names the follow-up alternative (record_counterparty_check with the check_id when a colleague or auditor must verify later). It also states the negative case: AstraNL does not search the Dutch register by name, so look a number up at kvk.nl.

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.

Resources