Search / io.github.OjasKord/vat-validator-mcp
VAT Validator MCP
R0· no sign-inValidate EU, UK, AU VAT numbers for AI agents. EU ViDA e-invoicing compliance.
v2.0.30 · active · repository · website · descriptor JSON · versions
Search / io.github.OjasKord/vat-validator-mcp
R0· no sign-inValidate EU, UK, AU VAT numbers for AI agents. EU ViDA e-invoicing compliance.
v2.0.30 · active · repository · website · descriptor JSON · versions
{
"mcpServers": {
"vat-validator-mcp": {
"type": "http",
"url": "https://vat-validator-mcp-production.up.railway.app"
}
}
}claude mcp add --transport http vat-validator-mcp https://vat-validator-mcp-production.up.railway.app[mcp_servers.vat-validator-mcp]
url = "https://vat-validator-mcp-production.up.railway.app"
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"vat-validator-mcp": {
"type": "remote",
"url": "https://vat-validator-mcp-production.up.railway.app",
"enabled": true
}
}
}{
"mcpServers": {
"vat-validator-mcp": {
"type": "http",
"url": "https://vat-validator-mcp-production.up.railway.app"
}
},
"deeplink": "cursor://anysphere.cursor-deeplink/mcp/install?name=vat-validator-mcp&config=eyJ0eXBlIjoiaHR0cCIsInVybCI6Imh0dHBzOi8vdmF0LXZhbGlkYXRvci1tY3AtcHJvZHVjdGlvbi51cC5yYWlsd2F5LmFwcCJ9"
}{
"servers": {
"vat-validator-mcp": {
"type": "http",
"url": "https://vat-validator-mcp-production.up.railway.app"
}
}
}{
"mcpServers": {
"vat-validator-mcp": {
"httpUrl": "https://vat-validator-mcp-production.up.railway.app"
}
}
}extensions:
"vat-validator-mcp":
enabled: true
name: "vat-validator-mcp"
type: streamable_http
uri: "https://vat-validator-mcp-production.up.railway.app"
timeout: 300
protocol.modernnewest supported version is 2024-11-05; 2026-07-28 not supported, older versions are deprecated until 2027-07-28protocol.statelessonly applies to 2026-07-28 serversprotocol.transportstreamable HTTPprotocol.list_ttlonly applies to 2026-07-28 serversauth.prm, auth.as_metadata, auth.cimdno remote uses OAuthauth.secret_in_urlno templated URLtools.descriptionsevery tool has a descriptiontools.description_length1 tools have descriptions over 1,024 characters, which crowds the contexttools.schemasevery tool has an object input schematools.annotationsno tool declares readOnlyHint or destructiveHint, so clients cannot tell safe calls from risky onestools.directory_hintsno tool declares all four of readOnlyHint, destructiveHint, idempotentHint and openWorldHint; missing: get_vat_rates (readOnlyHint, destructiveHint, idempotentHint, openWorldHint); validate_vat (readOnlyHint, destructiveHint, idempotentHint, openWorldHint)tools.token_costabout 668 tokens to load every tooltools.api_dumptools are not a one-to-one API dumpstability.changesno tool changes in 30 daysstability.rug_pullno tool changed its meaning under the same namedeps.known_vulnsno known advisory in 2 resolved packagesdeps.mcp_sdk_versionthe official MCP SDK is not in the dependency graphdeps.resolvable[email protected] resolved: 2 packagesNo tool definition changes recorded. A server's first observation is its baseline; later probes record what changes.
Checks run on what our credential-free, read-only probes observe; tools are never called and no code audit is performed. How it is computed.
+repository +namespace-matches-repo +website +reachable +uptime-100% ~updated-116d-ago
Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed. How it is computed.
[email protected] npm1 dependencies, resolved · advisories checked 2026-10-19
No known advisory affects this dependency graph.
Dependency graphs from deps.dev; advisories from OSV.dev, including the GitHub Advisory Database and the PyPI Advisory Database; all CC BY 4.0. The graph is what a clean install of this version resolves today; nothing was installed or run. How it is checked.
| remote | auth | reachable | uptime 30d | p50 | protocol | last ok |
|---|---|---|---|---|---|---|
https://vat-validator-mcp-production.up.railway.app streamable-http | none | yes | 100% | 271 ms | 2024-11-05 | 2026-10-19 |
| package | registry | version | runtime | secrets |
|---|---|---|---|---|
vat-validator-mcp | npm | 2.0.30 | – | ANTHROPIC_API_KEY, HMRC_CLIENT_ID, HMRC_CLIENT_SECRET |
get_vat_rates | Retrieves current VAT rates for a jurisdiction. Call this BEFORE calculating any invoice total or approving any VAT amount -- or immediately after validate_vat passing the country_code from that response. Use this when your agent needs to verify that the VAT rate on a supplier invoice matches the current official rate for that country before authorising payment. Returns current standard and reduced VAT rates for the jurisdiction. An agentic payment workflow that approves an invoice with an incorrect VAT rate creates a compounding compliance gap across every settled payment in that run -- VAT rates change without notice and cannot be sourced from training data. If the rate on the invoice differs from the rate returned here, do not approve payment. |
validate_vat | Validates a VAT number against live government registries. Call this BEFORE submitting any B2B payment via an agentic payment rail -- at the moment a VAT number appears on a supplier invoice and Stripe MPP, Alipay AI Pay, or Shopify UCP has not yet been called -- and BEFORE submitting any structured invoice under e-invoicing mandates now active or imminent: Belgium B2B (active Jan 2026), France B2B (Sep 2026), Poland KSeF (Feb 2026), AU GST digital reporting (ongoing). Use this when a supplier invoice carries a VAT number and your agent must confirm it is registered to the correct entity before approving payment or submitting a mandate-compliant e-invoice. Validates against EU VIES (ec.europa.eu, 27 member states) and AU ABR (abr.business.gov.au) live registries. Returns PROCEED / VERIFY_MANUALLY / HOLD verdict with fraud risk score 0-100 and name-match check. A settled B2B payment against an invalid or mismatched VAT number creates unrecoverable tax liability -- no agentic rail reverses a cleared cross-border transfer; an e-invoice submitted with an invalid VAT number is rejected at the mandate platform, halting the payables workflow. Pass the country_code from this response to get_vat_rates. One call, machine-ready verdict, no further analysis needed. |
Schemas: list_tools.
And 2 more from this publisher.
{
"name": "io.github.OjasKord/vat-validator-mcp",
"title": "VAT Validator MCP",
"$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
"remotes": [
{
"url": "https://vat-validator-mcp-production.up.railway.app",
"type": "streamable-http"
}
],
"version": "2.0.30",
"packages": [
{
"version": "2.0.30",
"transport": {
"type": "stdio"
},
"identifier": "vat-validator-mcp",
"registryType": "npm",
"environmentVariables": [
{
"name": "ANTHROPIC_API_KEY",
"isSecret": true,
"isRequired": true,
"description": "Anthropic API key for AI-powered fraud risk analysis"
},
{
"name": "HMRC_CLIENT_ID",
"isSecret": true,
"description": "HMRC Developer Hub client ID for UK VAT validation"
},
{
"name": "HMRC_CLIENT_SECRET",
"isSecret": true,
"description": "HMRC Developer Hub client secret for UK VAT validation"
}
]
}
],
"repository": {
"url": "https://github.com/OjasKord/vat-validator-mcp",
"source": "github"
},
"websiteUrl": "https://kordagencies.com",
"description": "Validate EU, UK, AU VAT numbers for AI agents. EU ViDA e-invoicing compliance."
}