EU/UK VAT compliance for AI agents: number validation, rate lookups, reverse-charge checks.
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.
Generate an EU Art. 196 reverse-charge eligibility verdict for a B2B service invoice between two EU Member States. Validates the customer's VAT ID via VIES and returns a printable certificate. Returns INELIGIBLE for same-country, non-EU, or invalid VAT cases.
Customer ISO-3166-1 alpha-2 (e.g. 'IT')
Supplier ISO-3166-1 alpha-2 (e.g. 'DE')
Type of service: professional_services | digital_services | transport | telecom | event_admission
Customer VAT identifier including country prefix (e.g. 'IT12345678901')
This tool isn't marked read-only, so it may change something on the server or in an account you connected.
Generate an EU Art. 196 reverse-charge eligibility verdict for a B2B service invoice between two EU Member States. Validates the customer's VAT ID via VIES and returns a printable certificate. Returns INELIGIBLE for same-country, non-EU, or invalid VAT cases.
| Argument | Type | Description |
|---|---|---|
| service_type | string | Type of service: professional_services | digital_services | transport | telecom | event_admission |
| customer_vat_id | string | Customer VAT identifier including country prefix (e.g. 'IT12345678901') |
| customer_country* | string | Customer ISO-3166-1 alpha-2 (e.g. 'IT') |
| supplier_country* | string | Supplier ISO-3166-1 alpha-2 (e.g. 'DE') |
{
"type": "object",
"required": [
"supplier_country",
"customer_country"
],
"properties": {
"service_type": {
"type": "string",
"description": "Type of service: professional_services | digital_services | transport | telecom | event_admission"
},
"customer_vat_id": {
"type": "string",
"description": "Customer VAT identifier including country prefix (e.g. 'IT12345678901')"
},
"customer_country": {
"type": "string",
"description": "Customer ISO-3166-1 alpha-2 (e.g. 'IT')"
},
"supplier_country": {
"type": "string",
"description": "Supplier ISO-3166-1 alpha-2 (e.g. 'DE')"
}
}
}Run the full 10-question VAT compliance gap analysis. Returns compliance score (0–100), risk band, itemised findings with Article citations, and source verification per finding.
| Argument | Type | Description |
|---|---|---|
| answers* | object | Q1..Q10 answers. Q1=ISO country, Q2=array of supply types, Q3=B2B|B2C|MIXED, Q4=array of countries, Q5A=annual cross-border B2C revenue in EUR (numeric; legacy strings under_10k/over_10k/unsure still accepted), Q6=array of registration countries or ['NONE'], Q7B=UNION|IOSS|NONE, Q8=array of marketplaces, Q9=yes|no, Q10=under|over|both|na. |
| language | string | en, ru, es, zh-CN |
{
"type": "object",
"required": [
"answers"
],
"properties": {
"answers": {
"type": "object",
"description": "Q1..Q10 answers. Q1=ISO country, Q2=array of supply types, Q3=B2B|B2C|MIXED, Q4=array of countries, Q5A=annual cross-border B2C revenue in EUR (numeric; legacy strings under_10k/over_10k/unsure still accepted), Q6=array of registration countries or ['NONE'], Q7B=UNION|IOSS|NONE, Q8=array of marketplaces, Q9=yes|no, Q10=under|over|both|na."
},
"language": {
"type": "string",
"description": "en, ru, es, zh-CN"
}
}
}Validate a single EU/UK VAT identifier against VIES (EU) or HMRC (UK). Returns name + address when available.
| Argument | Type | Description |
|---|---|---|
| vat_id* | string | Full VAT identifier including country prefix (e.g. 'DE123456789' or 'GB123456789') |
{
"type": "object",
"required": [
"vat_id"
],
"properties": {
"vat_id": {
"type": "string",
"description": "Full VAT identifier including country prefix (e.g. 'DE123456789' or 'GB123456789')"
}
}
}Look up the applicable VAT rate for a country (and optional rate type), sourced from the EU TEDB (Taxes in Europe Database).
| Argument | Type | Description |
|---|---|---|
| country* | string | ISO-2 country code |
| rate_type | string | Defaults to 'standard' if omitted |
{
"type": "object",
"required": [
"country"
],
"properties": {
"country": {
"type": "string",
"description": "ISO-2 country code"
},
"rate_type": {
"enum": [
"standard",
"reduced",
"super_reduced",
"zero",
"parking"
],
"type": "string",
"description": "Defaults to 'standard' if omitted"
}
}
}Determine whether a business needs to register for VAT in a given country, given customer type and annual revenue.
| Argument | Type | Description |
|---|---|---|
| country* | string | |
| supply_types | array | Supply mix — `goods`, `digital_services`, `professional_services`, etc. Defaults to `[goods]` when omitted. |
| customer_type | string | |
| sale_countries | array | Other countries where the business sells |
| annual_revenue_eur | number |
{
"type": "object",
"required": [
"country"
],
"properties": {
"country": {
"type": "string"
},
"supply_types": {
"type": "array",
"items": {
"type": "string"
},
"description": "Supply mix — `goods`, `digital_services`, `professional_services`, etc. Defaults to `[goods]` when omitted."
},
"customer_type": {
"enum": [
"B2C",
"B2B",
"MIXED"
],
"type": "string"
},
"sale_countries": {
"type": "array",
"items": {
"type": "string"
},
"description": "Other countries where the business sells"
},
"annual_revenue_eur": {
"type": "number"
}
}
}