mcpField
V
Veriport: EU VAT number, IBAN, VAT rates and e-invoice checks

Veriport: EU VAT number, IBAN, VAT rates and e-invoice checks

Local
veriport.ioFinance0Updated 1d ago

About Veriport: EU VAT number, IBAN, VAT rates and e-invoice checks

Veriport is a stdio MCP server for agents that need deterministic European VAT, IBAN, company, Peppol, VAT-rate, and e-invoice checks. It exposes six tools through the Veriport API, with validation details and source information.

Key features

  1. 01VAT number validation through VIES
  2. 02IBAN structure and checksum validation
  3. 03EU VAT rates by country or category
  4. 04E-invoice schema and rule validation
  5. 05French company registry lookup
  6. 06Peppol participant and document checks

Use cases

  1. 01Verify VAT numbers and retrieve published registration details
  2. 02Check IBAN structure and SEPA status
  3. 03Validate e-invoices against supported profiles
  4. 04Look up French companies or Peppol invoice reception

MCP support

Veriport is a stdio MCP server that exposes six deterministic checking tools backed by the Veriport API. MCP clients can configure it with `@veriport/mcp` and an optional API key.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

mcp.json · Universal config
{
"mcpServers": {
"io-veriport-veriport": {
"command": "npx",
"args": [
"-y",
"@veriport/mcp"
],
"env": {
"VERIPORT_API_KEY": "<VERIPORT_API_KEY>",
"VERIPORT_API_BASE": "<VERIPORT_API_BASE>"
}
}
}
}
Run commandnpx -y @veriport/mcp
Environment variables to set
VERIPORT_API_KEYSecretYour Veriport API key (vp_live_…, free at https://veriport.io/signup). Optional: without it the API answers 20 calls a day per address.
VERIPORT_API_BASEThe API base URL; defaults to https://veriport.io/api/v1.

Local servers need a runtime on your machine (e.g. Node.js 18+). Config file locations differ by client; see your client’s docs.

Packages
npm@veriport/mcp0.1.1

Tools

6

Saved tool list · updated 1d ago

ParameterTypeRequiredDescription
numberstringYesThe VAT number, with or without the two-letter prefix, spaces or dots allowed (e.g. "DE136695976").
recordbooleanNoKeep this validation as a stored record on the account (paid tiers).
countrystringNoTwo-letter member-state code when the number has no prefix.
requesterstringNoYour own EU VAT number, to obtain a VIES consultation number (paid tiers).

Details

From the project README

Veriport MCP server

A minimal Model Context Protocol server over stdio that gives an agent four deterministic checks from the Veriport API: no dependency, one file, Node 18+.

ToolWhat it does
validate_vatStructure and national check digit, then the European Commission's VIES live; returns valid, the registered name and address where published, the date, and the provenance (source.kind live / cache / structure_only, source.stale); the VIES consultation number with requester on a paid key.
validate_ibanThe five IBAN checks (characters, country, length, mod 97-10, BBAN pattern), the failed rules, bank and branch identifiers, SEPA flag. Does not say whether the account exists.
vat_rateStandard, reduced, super-reduced and parking VAT rates of one EU member state with seven category hints, verifiedOn and the official sources; or one category across the 27 states.
validate_einvoiceAn e-invoice (xml as text, or a ZUGFeRD / Factur-X PDF as pdf_base64) against the XML schema and the official schematron of its profile (CEN EN 16931 1.3.16, XRechnung 3.0.2, Peppol BIS 3.0.21): valid, profile, syntax, the errors with the published rule ids and XPaths, a one-line summary first. 5 calls a check (4 a day without a key); nothing is sent on a network or stored.
french_companyA French company by SIREN (9 digits) or SIRET (14 digits) from the official registries (Recherche d'entreprises, INSEE Sirene as fallback): name, legal form, NAF activity, active or ceased with dates, head-office address, the establishment for a SIRET, the VAT number computed from the SIREN, and when the registries were read. 1 call.
peppol_participantCan this company receive Peppol invoices? id: a Peppol ID (0208:0202239951) or a Belgian enterprise or VAT number (looked up under 0208 and 9925). Whether it is registered, which documents it receives (receives.invoice, receives.creditNote for Peppol BIS Billing 3.0), its provider and its name from the Peppol Directory, a one-line summary first. 1 call; nothing is sent on the network.

Limits are answered as tool errors, never as exceptions: a 429 says when to retry, a 402 says the free allowance is used, a 503 names the upstream that did not answer.

Install in one line

claude mcp add veriport -e VERIPORT_API_KEY=vp_live_… -- npx -y @veriport/mcp

(npx -y @veriport/mcp once the package is on npm; until then node mcp/server.mjs from a checkout of the repository.)

Environment: VERIPORT_API_KEY (optional, vp_live_…; without it the API answers 20 calls a day per address), VERIPORT_API_BASE (defaults to https://veriport.io/api/v1).

Claude Desktop / Claude Code
{
  "mcpServers": {
    "veriport": {
      "command": "npx",
      "args": ["-y", "@veriport/mcp"],
      "env": { "VERIPORT_API_KEY": "vp_live_…" }
    }
  }
}

claude mcp add veriport -e VERIPORT_API_KEY=vp_live_… -- npx -y @veriport/mcp

Cursor, Windsurf, Zed, Continue

The same command / args / env block in the client's MCP configuration; the server speaks the stdio transport with protocol version 2025-06-18 and advertises tools only.

Test

node --test mcp/test/*.test.mjs

The test starts a fake API on a local port and drives the server over stdio: initialize, tools/list, the six tools (an invalid and a valid e-invoice, XML and PDF), the 429 / 503 / 422 / missing-argument states.

Registry manifest and listings

server.json in this folder is the manifest of the official MCP registry (schema 2025-12-11; name io.veriport/veriport, the npm package @veriport/mcp over stdio, the two environment variables). Publication is the owner's step, in this order: npm publish --access public from this folder (the registry checks the mcpName field of package.json against the server name), then mcp-publisher login github and mcp-publisher publish from this folder. Directories (glama.ai, Smithery, Cursor) read the same manifest and the npm package.

Listing text: name veriport; category finance / data; licence MIT; publisher Janolab Studio LLC (Austin, Texas); homepage https://veriport.io/docs; source https://github.com/zenomoung/veriport-sdk (folder mcp). Not affiliated with the European Commission, SWIFT, INSEE or INPI; not tax advice.

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.