# vatnode/vatnode-mcp [Health: Active]

**Category:** 💰 Finance & Fintech  
**Repository:** https://github.com/vatnode/vatnode-mcp  
**GitHub Stars:** 2  
**npm Downloads (last month):** 1214  
**Views:** 2  
**Installs:** 0  
**Upvotes:** 0  
**Directory Page:** https://allmcps.com/mcp/vatnode-vatnode-mcp

## Description
Official MCP server for EU VAT validation via the EU Commission's VIES service + offline VAT rates for 45 European countries. Five tools: validatevatnumber (live VIES with company name, address, registration date, and optional consultation number for audit), getcountryvatrates, listeuvatrates, checkvatformat, listsupportedcountries. Four of five tools work offline without an API key (data bundled via eu-vat-rates-data). Open source MIT, every release signed with npm provenance via GitHub Actions OIDC. Install: npx -y vatnode-mcp.

## Tools
Capabilities this server exposes over MCP:

- **list_eu_vat_rates** — Returns current VAT rates for all EU member states (plus XI for Northern Ireland). Read-only and offline: no network call, no API key, no rate limit, no side effects. Takes no arguments. Output: { rates: Array<{ countryCode, countryName, vatName, vatAbbr, currency, standardRate, reducedRates[], superReducedRate, parkingRate, vatNumberFormat, vatNumberPattern, updatedAt }>, count, updatedAt }. Rates are percentages (e.g. 25.5). Use when the user asks for an overview, a comparison across countries, or "all EU VAT rates". For a single country prefer get_country_vat_rates. Data is sourced from the EU Commission TEDB and updated daily. Free, no API key required.
- **get_country_vat_rates** — Returns the standard, reduced, super-reduced and parking VAT rates for a single European country, plus the VAT number format and regex. Read-only and offline: no network call, no API key, no rate limit, no side effects. Accepts ISO 3166-1 alpha-2 codes (DE, FR, IT, …); also covers non-EU European jurisdictions where available (NO, CH, GB, UA, TR, …). Output: { countryCode, countryName, vatName, vatAbbr, currency, standardRate, reducedRates[], superReducedRate, parkingRate, vatNumberFormat, vatNumberPattern, updatedAt }; rates are percentages and may be null where not applicable. Returns an error if the country code is unknown. Use when the user asks "what is the VAT rate in X" or needs the VAT number format for a country. Free, no API key required.
- **check_vat_format** — Performs an offline syntactic check of a VAT number against the country-specific regex pattern. Read-only and offline: no network call, no API key, no rate limit, no side effects. Does NOT verify the VAT with VIES (a valid format does not mean the VAT is real or active) — use validate_vat_number for that. Output: { input, normalized, countryCode, validFormat (boolean), error }; countryCode is null when the prefix is unknown. Use when the user wants a quick sanity check on the shape of a VAT ID without burning a quota call. Free, no API key required.
- **list_supported_countries** — Returns every country the vatnode server has VAT data for (EU-27 + XI for Northern Ireland + ~17 other European jurisdictions such as NO, CH, GB, UA, TR). Read-only and offline: no network call, no API key, no rate limit, no side effects. Takes no arguments. Output: { countries: Array<{ countryCode, countryName, isEUMember, viesValidationSupported }>, count, euCount, updatedAt }, sorted by countryCode. `viesValidationSupported: true` means validate_vat_number can do live VIES verification; non-EU jurisdictions are rate-lookup only. Use to discover coverage or to pick a valid countryCode before calling get_country_vat_rates or validate_vat_number.
- **validate_vat_number** — Verifies an EU VAT number against the official VIES service and returns validity, company name, address, registration date and other metadata. The audit-grade VIES consultation number (`consultationNumber`) is produced when a requester VAT is configured once in the vatnode dashboard Settings — a one-time account setup, not a per-call parameter. With a requester configured, every response is either a success with a non-null `consultationNumber` or an error; without one, `consultationNumber` is null and national-registry fallback stays enabled. Use whenever the user wants to confirm a VAT is real, look up the company behind a VAT, or needs evidence for accounting/compliance. Side effects: makes an authenticated network call to api.vatnode.dev (which queries the EU VIES service) and consumes one request from your monthly quota; it is read-only (verifies, never mutates) and safe to retry. Requires a vatnode API key (free tier available; set VATNODE_API_KEY). Only EU-27 + XI (Northern Ireland) are supported by VIES; other countries return an error.

## Claude Desktop Quick Installation
Install path detected from listing signals. Uses `npx` (confidence: high):

```json
"mcpServers": {
  "vatnode-mcp": {
    "command": "npx",
    "args": ["-y","vatnode-mcp"],
    "env": {
      "VATNODE_API_KEY": "",
      "VATNODE_API_URL": ""
    }
  }
}
```

**Requires environment variables:** `VATNODE_API_KEY`, `VATNODE_API_URL` — the values above are empty placeholders; fill in real credentials before running (see the repository for what each one is for).

## Documentation

## What vatnode/vatnode-mcp does

vatnode/vatnode-mcp gives MCP-compatible AI clients access to European VAT rates, VAT-number formats, country coverage, and live EU VAT-number verification. Its bundled data covers 45 European countries, including the EU member states, Northern Ireland through the XI code, and other jurisdictions such as Norway, Switzerland, Great Britain, Ukraine, and Türkiye.

The server separates local lookups from live verification. Rate queries and format checks run offline without an account, network request, API key, or rate limit. EU VAT validation is read-only but contacts vatnode's API, which queries the EU VIES service and consumes one request from the configured monthly quota.

## How it works

Run the package as a local stdio MCP process with `npx -y vatnode-mcp`. An MCP client sends tool calls to the process, which returns structured results for VAT lookups or validation.

The offline dataset is bundled through `eu-vat-rates-data` and sourced from the European Commission TEDB. It is updated daily. Country rate responses include standard, reduced, super-reduced, and parking rates where applicable, along with the currency, VAT name and abbreviation, VAT-number format, and a country-specific pattern.

`check_vat_format` only tests whether a number matches the expected syntax. A passing format check does not establish that the number exists or is active. `validate_vat_number` performs that live verification for EU-27 and Northern Ireland numbers. It can return validity, registered company name, address, registration date, and related VIES metadata. A consultation number is returned when a requester VAT number has been configured in the vatnode dashboard.

## Setup and configuration

Install the server by configuring an MCP client to launch:

```text
npx -y vatnode-mcp
```

Set `VATNODE_API_KEY` in the client environment when live validation is needed. The free tools work without it. `VATNODE_API_URL` can replace the default `https://api.vatnode.dev`, which supports staging or self-hosted deployments.

The package can be configured in Claude Desktop, Cursor, ChatGPT custom connectors or Apps SDK, Continue, Cline, and other MCP-compatible clients. Restart or reload the client after adding the server so its tools become available.

## Tools and capabilities

- `get_country_vat_rates` looks up one country by ISO alpha-2 code and returns rates plus VAT-number formatting data.
- `list_eu_vat_rates` returns current rates for all EU member states and XI.
- `check_vat_format` performs an offline country-specific syntax check.
- `list_supported_countries` reports available countries and whether each supports VIES validation.
- `validate_vat_number` verifies an EU VAT number through VIES and returns registration details when available.

The rate and country tools are useful for comparisons, country selection, and determining whether live validation is supported. Validation applies only to EU-27 and XI; other supported countries provide rate and format data but cannot be checked through VIES.

_Full upstream README: https://allmcps.com/mcp/vatnode-vatnode-mcp/readme_

