Skip to content
Eden Engine

EU VAT Number Check (VIES) With Company Name and Address

contix/check-vies-vat

Checks an EU VAT number against the European Commission's VIES registry and returns whether it is valid, the registered name and address where the registry shares them, and a reason when it is not valid. Give the number with its country prefix (ESB12345678) or give the country separately in pais. When the registry does not respond, the call is refused as a retryable provider error instead of answered. The result is the registry's, not a tax conclusion. Data from the Contix public tools API, served by Eden Engine; not an official Contix product.

activeper callv1

Price

$0.0026 per call

You pay the price shown. If a call turns out to cost more than its quote, you pay the actual price, capped at twice the quote. No monthly minimum. Top-ups start at $0.50.

Data source

Contix

Data from the Contix public tools API (https://api.contix.es). Served by Eden Engine; not an official Contix product.

Use it

Five steps: search, inspect, learn, run, settle. No per-tool setup; your agent reaches this tool through the meta-tools it already has.

Connect once and your AI can find and run this tool, and any other it needs.

agent
// 1. search: find the tool
omnial_search({ query: "what you need" })

// 2. inspect: price and input schema
omnial_inspect({ tool: "contix/check-vies-vat" })

// 3. learn: read the usage guide at runtime
omnial_learn({ tool: "contix/check-vies-vat" })

// 4. run: price the exact call first, then run it
omnial_execute({ tool: "contix/check-vies-vat", input: { /* see input_schema */ }, dry_run: true })
omnial_execute({ tool: "contix/check-vies-vat", input: { /* ... */ } })

// 5. settle: the call is charged when it finishes, nothing to do

Not connected yet? Point your MCP client at https://mcp.eden-engine.com/mcp, then copy a config for your client.

Pricing

Every charge this tool can incur.

ChargePrice
Per call
$0.0026
Updated
Oct 25, 2026

Input and output schemas

Input schema
input_schema.json
{
  "type": "object",
  "required": [
    "numero"
  ],
  "properties": {
    "pais": {
      "type": "string",
      "pattern": "^[A-Za-z]{2}$",
      "description": "Two-letter EU country code when numero has no prefix, for example ES."
    },
    "numero": {
      "type": "string",
      "pattern": "^[A-Za-z0-9]{2,20}$",
      "description": "The VAT number, letters and digits, with or without the country prefix."
    }
  },
  "additionalProperties": false
}
Output schema
output_schema.json
{
  "type": "object",
  "required": [
    "valido",
    "disponible"
  ],
  "properties": {
    "pais": {
      "type": "string",
      "description": "Country code."
    },
    "aviso": {
      "type": "string",
      "description": "The publisher's notice that the result is arithmetic or registry output, not advice."
    },
    "motivo": {
      "type": [
        "string",
        "null"
      ],
      "description": "Why the check failed or is not valid; null otherwise."
    },
    "nombre": {
      "type": [
        "string",
        "null"
      ],
      "description": "Registered name; null when the registry does not share it."
    },
    "numero": {
      "type": "string",
      "description": "The number without the prefix."
    },
    "valido": {
      "type": "boolean",
      "description": "Whether the registry reports the number as valid."
    },
    "direccion": {
      "type": [
        "string",
        "null"
      ],
      "description": "Registered address; null when the registry does not share it."
    },
    "disponible": {
      "type": "boolean",
      "description": "Always true in an answer: when the registry does not respond the call is refused as a retryable error."
    }
  },
  "description": "Result of the VIES check.",
  "additionalProperties": true
}