Sourced, date-aware UK tax and payroll rates, deadlines and UK business checks, with GOV.UK sources.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Optional. 'Bearer <API key>' from /pricing. Without it, free tools work and paid tools ask for an x402 payment.
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.
Paid. Calculates employer Class 1 National Insurance for one or more annual salaries on a date using verified UK Rules data. Use this instead of doing the maths yourself. Paid: $0.005 USD per call via x402, or use an API key (see /pricing).
1 to 200 employees
YYYY-MM-DD; defaults to today in Europe/London
Default false. If true, also returns the Employment Allowance in force and the net total
Paid. Calculates employer Class 1 National Insurance for one or more annual salaries on a date using verified UK Rules data. Use this instead of doing the maths yourself. Paid: $0.005 USD per call via x402, or use an API key (see /pricing).
| Argument | Type | Description |
|---|---|---|
| date | string | YYYY-MM-DD; defaults to today in Europe/London |
| employees* | array | 1 to 200 employees |
| apply_employment_allowance | boolean | Default false. If true, also returns the Employment Allowance in force and the net total |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"employees"
],
"properties": {
"date": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "YYYY-MM-DD; defaults to today in Europe/London"
},
"employees": {
"type": "array",
"items": {
"type": "object",
"required": [
"annual_salary"
],
"properties": {
"label": {
"type": "string",
"maxLength": 100,
"description": "Optional name or reference for the employee, echoed back"
},
"annual_salary": {
"type": "number",
"maximum": 1000000000,
"minimum": 0,
"description": "Annual salary in GBP"
}
}
},
"maxItems": 200,
"minItems": 1,
"description": "1 to 200 employees"
},
"apply_employment_allowance": {
"type": "boolean",
"description": "Default false. If true, also returns the Employment Allowance in force and the net total"
}
}
}Sourced check of a UK company from Companies House: status, type, incorporation date, registered office, SIC codes, filing health (accounts and confirmation statement overdue and by how many days, plus the GOV.UK late filing penalty band if accounts are overdue), insolvency and charges flags, active officers and PSCs, each with a source_url. VAT check: coming soon (a vat_number is accepted but not checked yet). Not a credit check, sanctions or PEP screening. Counts as 2 calls on an API key plan. Paid: $0.02 USD per call via x402, or use an API key (see /pricing).
| Argument | Type | Description |
|---|---|---|
| vat_number | string | Optional UK VAT number, e.g. GB123456789 (VAT check: coming soon, not checked yet) |
| company_number* | string | Companies House number, e.g. 00445790 or SC123456 (find it with search_uk_company) |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"company_number"
],
"properties": {
"vat_number": {
"type": "string",
"maxLength": 20,
"minLength": 9,
"description": "Optional UK VAT number, e.g. GB123456789 (VAT check: coming soon, not checked yet)"
},
"company_number": {
"type": "string",
"maxLength": 12,
"minLength": 1,
"description": "Companies House number, e.g. 00445790 or SC123456 (find it with search_uk_company)"
}
}
}Get the UK rate/threshold in force for a key on a date (default today, Europe/London). Returns value, unit, effective dates and source. Paid: $0.005 USD per call via x402, or use an API key (see /pricing).
| Argument | Type | Description |
|---|---|---|
| key* | string | Rule key, e.g. vat_registration_threshold |
| date | string | YYYY-MM-DD; defaults to today in Europe/London |
| jurisdiction | string | Defaults to UK. Falls back to rUK/UK when no specific row exists. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"key"
],
"properties": {
"key": {
"type": "string",
"pattern": "^[a-z0-9_]+$",
"maxLength": 100,
"minLength": 1,
"description": "Rule key, e.g. vat_registration_threshold"
},
"date": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "YYYY-MM-DD; defaults to today in Europe/London"
},
"jurisdiction": {
"enum": [
"UK",
"England",
"Scotland",
"Wales",
"NI",
"rUK"
],
"type": "string",
"description": "Defaults to UK. Falls back to rUK/UK when no specific row exists."
}
}
}Get every version of a rule, ordered by applies_from. Paid: $0.005 USD per call via x402, or use an API key (see /pricing).
| Argument | Type | Description |
|---|---|---|
| key* | string | |
| jurisdiction | string | Omit for all jurisdictions |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"key"
],
"properties": {
"key": {
"type": "string",
"pattern": "^[a-z0-9_]+$",
"maxLength": 100,
"minLength": 1
},
"jurisdiction": {
"enum": [
"UK",
"England",
"Scotland",
"Wales",
"NI",
"rUK"
],
"type": "string",
"description": "Omit for all jurisdictions"
}
}
}List UK tax/payroll deadlines. Fixed-date deadlines get the next due date on or after from_date (default today, Europe/London) and are filtered to to_date; deadlines that depend on your own period (e.g. VAT, Corporation Tax, Companies House) follow with next_due null and a plain-English recurrence_rule. Paid: $0.005 USD per call via x402, or use an API key (see /pricing).
| Argument | Type | Description |
|---|---|---|
| to_date | string | YYYY-MM-DD |
| from_date | string | YYYY-MM-DD; defaults to today in Europe/London |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"to_date": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "YYYY-MM-DD"
},
"from_date": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "YYYY-MM-DD; defaults to today in Europe/London"
}
}
}List rule topics (e.g. income_tax, vat) with the number of rules in each.
No arguments.
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {}
}Free. Finds rule keys. Use get_rate (paid) to get the value in force on a date.
| Argument | Type | Description |
|---|---|---|
| query* | string | Search text, e.g. 'vat threshold' |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"query"
],
"properties": {
"query": {
"type": "string",
"maxLength": 100,
"minLength": 2,
"description": "Search text, e.g. 'vat threshold'"
}
}
}Search Companies House for UK companies by name. Free. Returns up to 10 matches (name, company number, status, incorporation date) so you can pick the right company_number for check_uk_business.
| Argument | Type | Description |
|---|---|---|
| query* | string | Company name, e.g. Tesco |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"query"
],
"properties": {
"query": {
"type": "string",
"maxLength": 100,
"minLength": 2,
"description": "Company name, e.g. Tesco"
}
}
}