Overview
VAT Rates aggregates data from multiple authoritative sources to provide comprehensive VAT information. Includes all rate types (standard, reduced, super-reduced, parking) and handles regional exceptions like the Canary Islands and other special tax zones.
Live Test VAT Rates Skill Skill →
The tool
Once your client is connected to the VerveKit server, this appears in its tool list as VATRatesSkill. It is read-only and open-world — it fetches and never mutates anything on your side — so most clients call it without asking you to confirm.
{
"name": "VATRatesSkill",
"arguments": {
"country": "DE"
}
}You do not name the tool yourself; the model picks it. Asking about DE in the terms this skill covers is enough for it to reach for VATRatesSkill on its own — naming it explicitly also works, and is the way to force the call.
Connecting
One server URL covers every skill in the catalog, including this one. Authorization is OAuth: the client opens a browser once, and there is no key to paste into a config file.
{
"mcpServers": {
"vervekit": {
"url": "https://api.vervekit.com/v1/mcp"
}
}
}https://api.vervekit.com/v1/mcpPer-client setup — Claude, Cursor, VS Code, ChatGPT — is on the MCP setup page.
Arguments
These are the properties on the tool's inputSchema, so a well-behaved client validates them before the call is made. Premium arguments are accepted on every plan but only take effect on plans that include them.
| Argument | Type | Description |
|---|---|---|
countryRequired | string | ISO 2-letter country code (e.g., DE, FR, ES) length 2–2 |
dateOptionalPremium | string | Look up rate effective on this date (YYYY-MM-DD). Defaults to today. date |
postcodeOptionalPremium | string | Check for regional exceptions (e.g., Canary Islands, Ceuta) |
What the model gets back
The result carries a structuredContent object matching the tool's declared outputSchema, so a client reads fields without parsing prose. status is "ok" and error is null on success; a null field means the value was not available for that input, not that the call failed.
{
"status": "ok",
"error": null,
"data": {
"country": "DE",
"countryName": "Germany",
"currency": "EUR",
"effectiveFrom": "2021-01-01",
"rates": {
"standard": 19,
"reduced": 7,
"reduced2": null,
"superReduced": null,
"parking": null
},
"exception": null
}
}
Response fields
Paths are relative to data. Premium fields are absent rather than zeroed on plans that do not include them, so check for presence instead of comparing to 0.
| Field | Type | Example | Description |
|---|---|---|---|
country | string | DE | ISO 2-letter country code for the queried country |
countryName | string | Germany | Full official name of the country |
currency | string | EUR | Currency code used in the country |
effectiveFrom | string | 2021-01-01 | Date when the VAT rates became effective |
rates | object | {…} | VAT rates in effect for the country on the lookup date, or for the postcode's special region when an exception applies |
rates.standard | number | 19 | Standard VAT rate percentage |
rates.reduced | number | 7 | Reduced VAT rate percentage for eligible goods |
rates.reduced2 | object | null | Second reduced VAT rate if applicable |
rates.superReduced | object | null | Super-reduced VAT rate for essential items |
rates.parking | object | null | Parking fee VAT rate if separately applied |
exception | object | null | Regional VAT exception details like special zones |
Failure modes
Errors come back as tool errors carrying a sentence the model can act on, not a bare status code. Error handling covers the full list.
| Status | What it means |
|---|---|
400 / 422 | The arguments did not validate. The message names the offending one. |
401 | The OAuth session is invalid or expired — reconnect the server. |
403 | Blocked by a key restriction or an IP allow-list. Never a bad identity. |
404 | This skill is not part of VerveKit. Check the catalog. |
429 | Out of credits, or a brief rate limit. The message tells them apart. |
A call costs 2 credits each time the tool actually runs; a model that reasons about the tool without calling it costs nothing.
Use cases
- E-commerce Checkout
- Calculate correct VAT for customers based on their country and region during checkout
- Invoice Generation
- Apply accurate VAT rates when generating invoices for EU and international customers
- Tax Compliance
- Ensure your application uses up-to-date VAT rates for regulatory compliance
- Accounting Software
- Look up historical VAT rates for past transactions and audits
Other ways to use VAT Rates Skill
Set up VAT Rates Skill on VerveKit, or reach the same source a different way. Your VerveKit account and credits work on all of them — one key, one balance.
Related
More in Finance: