Abstract API · Capability

Abstract API - VAT Validation API — VAT Validation

Abstract API - VAT Validation API — VAT Validation. 3 operations. Lead operation: Abstract API Calculate VAT. Self-contained Naftiko capability covering one Abstract Api business surface.

Run with Naftiko Abstract ApiVAT Validation

What You Can Do

GET
Calculatevat — Abstract API Calculate VAT
/v1/calculate
GET
Getvatrates — Abstract API Get VAT Rates
/v1/rates
GET
Validatevatnumber — Abstract API Validate VAT Number
/v1/validate

MCP Tools

abstract-api-calculate-vat

Abstract API Calculate VAT

read-only idempotent
abstract-api-get-vat-rates

Abstract API Get VAT Rates

read-only idempotent
abstract-api-validate-vat-number

Abstract API Validate VAT Number

read-only idempotent

Capability Spec

vat-validation-vat-validation.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Abstract API - VAT Validation API — VAT Validation
  description: 'Abstract API - VAT Validation API — VAT Validation. 3 operations. Lead operation: Abstract API Calculate VAT.
    Self-contained Naftiko capability covering one Abstract Api business surface.'
  tags:
  - Abstract Api
  - VAT Validation
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    ABSTRACT_API_API_KEY: ABSTRACT_API_API_KEY
capability:
  consumes:
  - type: http
    namespace: vat-validation-vat-validation
    baseUri: https://vat.abstractapi.com/v1
    description: Abstract API - VAT Validation API — VAT Validation business capability. Self-contained, no shared references.
    resources:
    - name: calculate
      path: /calculate
      operations:
      - name: calculatevat
        method: GET
        description: Abstract API Calculate VAT
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: api_key
          in: query
          type: string
          description: Your unique API key.
          required: true
        - name: amount
          in: query
          type: number
          description: Amount to calculate VAT on.
          required: true
        - name: country_code
          in: query
          type: string
          description: ISO 3166-1 alpha-2 country code.
          required: true
        - name: is_vat_incl
          in: query
          type: boolean
          description: Whether the amount already includes VAT. Defaults to false.
        - name: vat_category
          in: query
          type: string
          description: VAT rate category (standard, reduced, super_reduced, parking).
    - name: rates
      path: /rates
      operations:
      - name: getvatrates
        method: GET
        description: Abstract API Get VAT Rates
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: api_key
          in: query
          type: string
          description: Your unique API key.
          required: true
        - name: country_code
          in: query
          type: string
          description: ISO 3166-1 alpha-2 country code.
          required: true
    - name: validate
      path: /validate
      operations:
      - name: validatevatnumber
        method: GET
        description: Abstract API Validate VAT Number
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: api_key
          in: query
          type: string
          description: Your unique API key.
          required: true
        - name: vat_number
          in: query
          type: string
          description: The VAT number to validate (with country prefix).
          required: true
    authentication:
      type: apikey
      key: api_key
      value: '{{env.ABSTRACT_API_API_KEY}}'
      placement: query
  exposes:
  - type: rest
    namespace: vat-validation-vat-validation-rest
    port: 8080
    description: REST adapter for Abstract API - VAT Validation API — VAT Validation. One Spectral-compliant resource per
      consumed operation, prefixed with /v1.
    resources:
    - path: /v1/calculate
      name: calculate
      description: REST surface for calculate.
      operations:
      - method: GET
        name: calculatevat
        description: Abstract API Calculate VAT
        call: vat-validation-vat-validation.calculatevat
        with:
          api_key: rest.api_key
          amount: rest.amount
          country_code: rest.country_code
          is_vat_incl: rest.is_vat_incl
          vat_category: rest.vat_category
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/rates
      name: rates
      description: REST surface for rates.
      operations:
      - method: GET
        name: getvatrates
        description: Abstract API Get VAT Rates
        call: vat-validation-vat-validation.getvatrates
        with:
          api_key: rest.api_key
          country_code: rest.country_code
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/validate
      name: validate
      description: REST surface for validate.
      operations:
      - method: GET
        name: validatevatnumber
        description: Abstract API Validate VAT Number
        call: vat-validation-vat-validation.validatevatnumber
        with:
          api_key: rest.api_key
          vat_number: rest.vat_number
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: vat-validation-vat-validation-mcp
    port: 9090
    transport: http
    description: MCP adapter for Abstract API - VAT Validation API — VAT Validation. One tool per consumed operation, routed
      inline through this capability's consumes block.
    tools:
    - name: abstract-api-calculate-vat
      description: Abstract API Calculate VAT
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: vat-validation-vat-validation.calculatevat
      with:
        api_key: tools.api_key
        amount: tools.amount
        country_code: tools.country_code
        is_vat_incl: tools.is_vat_incl
        vat_category: tools.vat_category
      outputParameters:
      - type: object
        mapping: $.
    - name: abstract-api-get-vat-rates
      description: Abstract API Get VAT Rates
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: vat-validation-vat-validation.getvatrates
      with:
        api_key: tools.api_key
        country_code: tools.country_code
      outputParameters:
      - type: object
        mapping: $.
    - name: abstract-api-validate-vat-number
      description: Abstract API Validate VAT Number
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: vat-validation-vat-validation.validatevatnumber
      with:
        api_key: tools.api_key
        vat_number: tools.vat_number
      outputParameters:
      - type: object
        mapping: $.