MCP 서버

VAT Validator MCP

io.github.OjasKord/vat-validator-mcp
법률 및 컴플라이언스 결제 및 핀테크 공개 · 연결 가능 MCP 2026-07-28

이 MCP로 할 수 있는 일

Validates VAT numbers against government registries and retrieves current VAT rates for invoice and e-invoicing workflows.

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.
입력 스키마
{'type': 'object', 'required': [], 'properties': {'country_code': {'type': 'string', 'description': 'ISO 2-letter code e.g. DE, FR, GB. Omit for all countries.'}}}
출력 스키마
{'type': 'object', 'required': ['agent_action', 'source_url', 'checked_at'], 'properties': {'note': {'type': 'string'}, 'rates': {'type': 'object', 'description': 'Present only when country_code is omitted -- full rate table for all supported jurisdictions'}, 'country': {'type': 'string'}, 'reduced': {'type': 'array', 'items': {'type': 'number'}, 'description': 'Reduced VAT rates as percentages, if any apply'}, 'standard': {'type': 'number', 'description': 'Standard VAT rate as a percentage'}, 'checked_at': {'type': 'string', 'format': 'date-time'}, 'source_url': {'type': 'string'}, '_disclaimer': {'type': 'string'}, 'agent_action': {'enum': ['PROCEED'], 'type': 'string'}, 'country_code': {'type': 'string'}}, 'additionalProperties': True}
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.
입력 스키마
{'type': 'object', 'required': ['vat_number'], 'properties': {'vat_number': {'type': 'string', 'description': 'VAT number with country prefix. EU: DE123456789. AU: ABN12345678901.'}, 'invoice_amount': {'type': 'number', 'description': 'Invoice amount in local currency — used in fraud risk weighting.'}, 'invoice_company_name': {'type': 'string', 'description': 'Company name as it appears on the invoice — if provided, cross-checks against registry and flags mismatches.'}}}
출력 스키마
{'type': 'object', 'required': ['agent_action', 'valid', 'vat_number', 'jurisdiction', 'source_url', 'checked_at'], 'properties': {'valid': {'type': 'boolean', 'description': 'Whether the VAT number is currently registered and active per the source registry'}, 'address': {'type': ['string', 'null']}, 'summary': {'type': 'string'}, 'checked_at': {'type': 'string', 'format': 'date-time'}, 'name_match': {'enum': ['MATCH', 'MISMATCH', 'NOT_CHECKED'], 'type': 'string'}, 'source_url': {'type': 'string'}, 'vat_number': {'type': 'string'}, '_disclaimer': {'type': 'string'}, 'agent_action': {'enum': ['PROCEED', 'VERIFY_MANUALLY', 'HOLD'], 'type': 'string', 'description': 'Machine-readable verdict'}, 'company_name': {'type': ['string', 'null']}, 'jurisdiction': {'enum': ['EU', 'AU'], 'type': 'string'}, 'fraud_signals': {'type': 'array', 'items': {'type': 'string'}}, 'recommendation': {'enum': ['CLEAR', 'REVIEW', 'BLOCK'], 'type': 'string'}, 'fraud_risk_level': {'enum': ['LOW', 'MEDIUM', 'HIGH', 'CRITICAL'], 'type': 'string'}, 'fraud_risk_score': {'type': 'number', 'maximum': 100, 'minimum': 0}}, 'additionalProperties': True}
추가됨
get_vat_rates
2026년 9월 17일 12:45 PM
추가됨
validate_vat
2026년 9월 17일 12:45 PM