Read-only EU e-invoice checks: VAT format, VIES, Peppol lookup. Returns evidence, no filing.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
Readiness snapshot for YOUR canary workspace: one plain state, what is ready, what is missing, and the next safe step. Diagnostics, not a compliance certificate. Validation and readiness only; never sends a Peppol invoice and gives no legal, fiscal or compliance guarantee.
Also confirm the bound legal entity with the provider (one provider call).
Readiness snapshot for YOUR canary workspace: one plain state, what is ready, what is missing, and the next safe step. Diagnostics, not a compliance certificate. Validation and readiness only; never sends a Peppol invoice and gives no legal, fiscal or compliance guarantee.
| Argument | Type | Description |
|---|---|---|
| verifyWithProvider | boolean | Also confirm the bound legal entity with the provider (one provider call). |
{
"type": "object",
"properties": {
"verifyWithProvider": {
"type": "boolean",
"description": "Also confirm the bound legal entity with the provider (one provider call)."
}
},
"additionalProperties": false
}Check whether a receiver is registered on the Peppol network and accepts BIS Billing 3.0 invoices, via the official SML/SMP discovery route when enabled (otherwise an honest mock that says so). Only status registered/not_registered is definitive; unavailable/not_configured are truthful and never a hidden "no". Provide vatId or endpointId (at least one) plus the receiver country. Lookup only — never a send action, and no send tool exists here. Validation and readiness only; never sends a Peppol invoice and gives no legal, fiscal or compliance guarantee.
| Argument | Type | Description |
|---|---|---|
| vatId | string | VAT / enterprise number, e.g. "BE0123456749". |
| endpointId | string | Peppol endpoint identifier (GLN or scheme-specific id). |
| countryCode* | string | Receiver country (drives the scheme derivation). |
| endpointScheme | string | EAS scheme id. Derived when omitted (BE VAT → 0208, else 0088). |
{
"type": "object",
"required": [
"countryCode"
],
"properties": {
"vatId": {
"type": "string",
"maxLength": 60,
"minLength": 4,
"description": "VAT / enterprise number, e.g. \"BE0123456749\"."
},
"endpointId": {
"type": "string",
"maxLength": 60,
"minLength": 1,
"description": "Peppol endpoint identifier (GLN or scheme-specific id)."
},
"countryCode": {
"enum": [
"AT",
"BE",
"BG",
"HR",
"CY",
"CZ",
"DE",
"DK",
"EE",
"ES",
"FI",
"FR",
"GB",
"GR",
"HU",
"IE",
"IS",
"IT",
"LI",
"LT",
"LU",
"LV",
"MT",
"NL",
"NO",
"PL",
"PT",
"RO",
"SE",
"SI",
"SK"
],
"type": "string",
"description": "Receiver country (drives the scheme derivation)."
},
"endpointScheme": {
"type": "string",
"maxLength": 10,
"minLength": 1,
"description": "EAS scheme id. Derived when omitted (BE VAT → 0208, else 0088)."
}
},
"additionalProperties": false
}Structurally validate a draft EU invoice and report machine-readable issues (schema problems, VAT-id format, date sanity, BIS 3.0 completeness, computed totals). Full report, never fails fast. Not legal approval. Validation and readiness only; never sends a Peppol invoice and gives no legal, fiscal or compliance guarantee.
| Argument | Type | Description |
|---|---|---|
| invoice* | object | The invoice payload to check. |
{
"type": "object",
"required": [
"invoice"
],
"properties": {
"invoice": {
"type": "object",
"description": "The invoice payload to check."
}
},
"additionalProperties": false
}Deterministic structure/checksum validation of an EU VAT number (incl. the Belgian modulo-97 checksum) with the normalized identifier and a stable issue code. Format plausibility only — not a live VIES result. Validation and readiness only; never sends a Peppol invoice and gives no legal, fiscal or compliance guarantee.
| Argument | Type | Description |
|---|---|---|
| vatNumber* | string | A VAT number, e.g. "BE0123456749". |
| countryCode | string | ISO alpha-2, used only when the VAT has no prefix. |
{
"type": "object",
"required": [
"vatNumber"
],
"properties": {
"vatNumber": {
"type": "string",
"maxLength": 40,
"minLength": 1,
"description": "A VAT number, e.g. \"BE0123456749\"."
},
"countryCode": {
"type": "string",
"maxLength": 2,
"minLength": 2,
"description": "ISO alpha-2, used only when the VAT has no prefix."
}
},
"additionalProperties": false
}Check a VAT number's ACTIVE status against the official EU VIES source. Returns valid / invalid / invalid_input / unavailable with provenance (source, checkedAt). When VIES is unavailable it says so truthfully and makes no validity claim. Validation and readiness only; never sends a Peppol invoice and gives no legal, fiscal or compliance guarantee.
| Argument | Type | Description |
|---|---|---|
| vatNumber* | string | A VAT number, e.g. "BE0123456749". |
| countryCode | string | ISO alpha-2, used only when the VAT has no prefix. |
{
"type": "object",
"required": [
"vatNumber"
],
"properties": {
"vatNumber": {
"type": "string",
"maxLength": 40,
"minLength": 1,
"description": "A VAT number, e.g. \"BE0123456749\"."
},
"countryCode": {
"type": "string",
"maxLength": 2,
"minLength": 2,
"description": "ISO alpha-2, used only when the VAT has no prefix."
}
},
"additionalProperties": false
}