Abstract API · Capability

Abstract API - Exchange Rates API — Exchange Rates

Abstract API - Exchange Rates API — Exchange Rates. 3 operations. Lead operation: Abstract API Convert Currency. Self-contained Naftiko capability covering one Abstract Api business surface.

Run with Naftiko Abstract ApiExchange Rates

What You Can Do

GET
Convertcurrency — Abstract API Convert Currency
/v1/convert
GET
Gethistoricalexchangerates — Abstract API Get Historical Exchange Rates
/v1/historical
GET
Getliveexchangerates — Abstract API Get Live Exchange Rates
/v1/live

MCP Tools

abstract-api-convert-currency

Abstract API Convert Currency

read-only idempotent
abstract-api-get-historical-exchange

Abstract API Get Historical Exchange Rates

read-only idempotent
abstract-api-get-live-exchange

Abstract API Get Live Exchange Rates

read-only idempotent

Capability Spec

exchange-rates-exchange-rates.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Abstract API - Exchange Rates API — Exchange Rates
  description: 'Abstract API - Exchange Rates API — Exchange Rates. 3 operations. Lead operation: Abstract API Convert Currency.
    Self-contained Naftiko capability covering one Abstract Api business surface.'
  tags:
  - Abstract Api
  - Exchange Rates
  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: exchange-rates-exchange-rates
    baseUri: https://exchange-rates.abstractapi.com/v1
    description: Abstract API - Exchange Rates API — Exchange Rates business capability. Self-contained, no shared references.
    resources:
    - name: convert
      path: /convert
      operations:
      - name: convertcurrency
        method: GET
        description: Abstract API Convert Currency
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: api_key
          in: query
          type: string
          description: Your unique API key.
          required: true
        - name: base
          in: query
          type: string
          description: Source currency ISO 4217 code.
          required: true
        - name: target
          in: query
          type: string
          description: Target currency ISO 4217 code.
          required: true
        - name: base_amount
          in: query
          type: number
          description: Amount to convert.
          required: true
    - name: historical
      path: /historical
      operations:
      - name: gethistoricalexchangerates
        method: GET
        description: Abstract API Get Historical Exchange 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: base
          in: query
          type: string
          description: Base currency ISO 4217 code.
          required: true
        - name: target
          in: query
          type: string
          description: Target currency or comma-separated list.
        - name: date
          in: query
          type: string
          description: Date for historical rates in YYYY-MM-DD format.
          required: true
    - name: live
      path: /live
      operations:
      - name: getliveexchangerates
        method: GET
        description: Abstract API Get Live Exchange Rates
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: api_key
          in: query
          type: string
          description: Your unique API key for the Exchange Rates API.
          required: true
        - name: base
          in: query
          type: string
          description: Base currency ISO 4217 code.
          required: true
        - name: target
          in: query
          type: string
          description: Target currency or comma-separated list of currencies. Returns all if omitted.
    authentication:
      type: apikey
      key: api_key
      value: '{{env.ABSTRACT_API_API_KEY}}'
      placement: query
  exposes:
  - type: rest
    namespace: exchange-rates-exchange-rates-rest
    port: 8080
    description: REST adapter for Abstract API - Exchange Rates API — Exchange Rates. One Spectral-compliant resource per
      consumed operation, prefixed with /v1.
    resources:
    - path: /v1/convert
      name: convert
      description: REST surface for convert.
      operations:
      - method: GET
        name: convertcurrency
        description: Abstract API Convert Currency
        call: exchange-rates-exchange-rates.convertcurrency
        with:
          api_key: rest.api_key
          base: rest.base
          target: rest.target
          base_amount: rest.base_amount
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/historical
      name: historical
      description: REST surface for historical.
      operations:
      - method: GET
        name: gethistoricalexchangerates
        description: Abstract API Get Historical Exchange Rates
        call: exchange-rates-exchange-rates.gethistoricalexchangerates
        with:
          api_key: rest.api_key
          base: rest.base
          target: rest.target
          date: rest.date
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/live
      name: live
      description: REST surface for live.
      operations:
      - method: GET
        name: getliveexchangerates
        description: Abstract API Get Live Exchange Rates
        call: exchange-rates-exchange-rates.getliveexchangerates
        with:
          api_key: rest.api_key
          base: rest.base
          target: rest.target
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: exchange-rates-exchange-rates-mcp
    port: 9090
    transport: http
    description: MCP adapter for Abstract API - Exchange Rates API — Exchange Rates. One tool per consumed operation, routed
      inline through this capability's consumes block.
    tools:
    - name: abstract-api-convert-currency
      description: Abstract API Convert Currency
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: exchange-rates-exchange-rates.convertcurrency
      with:
        api_key: tools.api_key
        base: tools.base
        target: tools.target
        base_amount: tools.base_amount
      outputParameters:
      - type: object
        mapping: $.
    - name: abstract-api-get-historical-exchange
      description: Abstract API Get Historical Exchange Rates
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: exchange-rates-exchange-rates.gethistoricalexchangerates
      with:
        api_key: tools.api_key
        base: tools.base
        target: tools.target
        date: tools.date
      outputParameters:
      - type: object
        mapping: $.
    - name: abstract-api-get-live-exchange
      description: Abstract API Get Live Exchange Rates
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: exchange-rates-exchange-rates.getliveexchangerates
      with:
        api_key: tools.api_key
        base: tools.base
        target: tools.target
      outputParameters:
      - type: object
        mapping: $.