CoinGecko · Capability

CoinGecko Onchain DEX API — Tokens

CoinGecko Onchain DEX API — Tokens. 5 operations. Lead operation: Get multiple tokens by addresses. Self-contained Naftiko capability covering one Coingecko business surface.

Run with Naftiko CoingeckoTokens

What You Can Do

GET
Getonchainmultipletokens — Get multiple tokens by addresses
/v1/onchain/networks/{network}/tokens/multi/{addresses}
GET
Getonchaintokenbyaddress — Get token data by contract address
/v1/onchain/networks/{network}/tokens/{address}
GET
Getonchaintokeninfo — Get token info by contract address
/v1/onchain/networks/{network}/tokens/{address}/info
GET
Getonchaintokentoppools — Get top pools for a token
/v1/onchain/networks/{network}/tokens/{address}/pools
GET
Getonchaintokenpools — Get pools for a specific token
/v1/onchain/networks/{network}/tokens/{token-address}/pools

MCP Tools

get-multiple-tokens-addresses

Get multiple tokens by addresses

read-only idempotent
get-token-data-contract-address

Get token data by contract address

read-only idempotent
get-token-info-contract-address

Get token info by contract address

read-only idempotent
get-top-pools-token

Get top pools for a token

read-only idempotent
get-pools-specific-token

Get pools for a specific token

read-only idempotent

Capability Spec

onchain-dex-tokens.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: CoinGecko Onchain DEX API — Tokens
  description: 'CoinGecko Onchain DEX API — Tokens. 5 operations. Lead operation: Get multiple tokens by addresses. Self-contained
    Naftiko capability covering one Coingecko business surface.'
  tags:
  - Coingecko
  - Tokens
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    COINGECKO_API_KEY: COINGECKO_API_KEY
capability:
  consumes:
  - type: http
    namespace: onchain-dex-tokens
    baseUri: https://pro-api.coingecko.com/api/v3
    description: CoinGecko Onchain DEX API — Tokens business capability. Self-contained, no shared references.
    resources:
    - name: onchain-networks-network-tokens-multi-addresses
      path: /onchain/networks/{network}/tokens/multi/{addresses}
      operations:
      - name: getonchainmultipletokens
        method: GET
        description: Get multiple tokens by addresses
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: addresses
          in: path
          type: string
          description: Comma-separated list of token contract addresses (up to 30)
          required: true
        - name: include
          in: query
          type: string
          description: Additional data to include (e.g., top_pools)
    - name: onchain-networks-network-tokens-address
      path: /onchain/networks/{network}/tokens/{address}
      operations:
      - name: getonchaintokenbyaddress
        method: GET
        description: Get token data by contract address
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: address
          in: path
          type: string
          description: The token contract address
          required: true
        - name: include
          in: query
          type: string
          description: Additional data to include (e.g., top_pools)
    - name: onchain-networks-network-tokens-address-info
      path: /onchain/networks/{network}/tokens/{address}/info
      operations:
      - name: getonchaintokeninfo
        method: GET
        description: Get token info by contract address
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: address
          in: path
          type: string
          description: The token contract address
          required: true
    - name: onchain-networks-network-tokens-address-pools
      path: /onchain/networks/{network}/tokens/{address}/pools
      operations:
      - name: getonchaintokentoppools
        method: GET
        description: Get top pools for a token
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: address
          in: path
          type: string
          description: The token contract address
          required: true
        - name: include
          in: query
          type: string
          description: Additional data to include (e.g., base_token, quote_token, dex)
        - name: page
          in: query
          type: integer
          description: Page number for pagination
        - name: sort
          in: query
          type: string
          description: Sort order
    - name: onchain-networks-network-tokens-token_address-pools
      path: /onchain/networks/{network}/tokens/{token_address}/pools
      operations:
      - name: getonchaintokenpools
        method: GET
        description: Get pools for a specific token
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: token_address
          in: path
          type: string
          description: The token contract address
          required: true
        - name: include
          in: query
          type: string
          description: Additional data to include (e.g., base_token, quote_token, dex)
        - name: page
          in: query
          type: integer
          description: Page number for pagination
    authentication:
      type: apikey
      key: x-cg-pro-api-key
      value: '{{env.COINGECKO_API_KEY}}'
      placement: header
  exposes:
  - type: rest
    namespace: onchain-dex-tokens-rest
    port: 8080
    description: REST adapter for CoinGecko Onchain DEX API — Tokens. One Spectral-compliant resource per consumed operation,
      prefixed with /v1.
    resources:
    - path: /v1/onchain/networks/{network}/tokens/multi/{addresses}
      name: onchain-networks-network-tokens-multi-addresses
      description: REST surface for onchain-networks-network-tokens-multi-addresses.
      operations:
      - method: GET
        name: getonchainmultipletokens
        description: Get multiple tokens by addresses
        call: onchain-dex-tokens.getonchainmultipletokens
        with:
          addresses: rest.addresses
          include: rest.include
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/onchain/networks/{network}/tokens/{address}
      name: onchain-networks-network-tokens-address
      description: REST surface for onchain-networks-network-tokens-address.
      operations:
      - method: GET
        name: getonchaintokenbyaddress
        description: Get token data by contract address
        call: onchain-dex-tokens.getonchaintokenbyaddress
        with:
          address: rest.address
          include: rest.include
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/onchain/networks/{network}/tokens/{address}/info
      name: onchain-networks-network-tokens-address-info
      description: REST surface for onchain-networks-network-tokens-address-info.
      operations:
      - method: GET
        name: getonchaintokeninfo
        description: Get token info by contract address
        call: onchain-dex-tokens.getonchaintokeninfo
        with:
          address: rest.address
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/onchain/networks/{network}/tokens/{address}/pools
      name: onchain-networks-network-tokens-address-pools
      description: REST surface for onchain-networks-network-tokens-address-pools.
      operations:
      - method: GET
        name: getonchaintokentoppools
        description: Get top pools for a token
        call: onchain-dex-tokens.getonchaintokentoppools
        with:
          address: rest.address
          include: rest.include
          page: rest.page
          sort: rest.sort
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/onchain/networks/{network}/tokens/{token-address}/pools
      name: onchain-networks-network-tokens-token-address-pools
      description: REST surface for onchain-networks-network-tokens-token_address-pools.
      operations:
      - method: GET
        name: getonchaintokenpools
        description: Get pools for a specific token
        call: onchain-dex-tokens.getonchaintokenpools
        with:
          token_address: rest.token_address
          include: rest.include
          page: rest.page
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: onchain-dex-tokens-mcp
    port: 9090
    transport: http
    description: MCP adapter for CoinGecko Onchain DEX API — Tokens. One tool per consumed operation, routed inline through
      this capability's consumes block.
    tools:
    - name: get-multiple-tokens-addresses
      description: Get multiple tokens by addresses
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: onchain-dex-tokens.getonchainmultipletokens
      with:
        addresses: tools.addresses
        include: tools.include
      outputParameters:
      - type: object
        mapping: $.
    - name: get-token-data-contract-address
      description: Get token data by contract address
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: onchain-dex-tokens.getonchaintokenbyaddress
      with:
        address: tools.address
        include: tools.include
      outputParameters:
      - type: object
        mapping: $.
    - name: get-token-info-contract-address
      description: Get token info by contract address
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: onchain-dex-tokens.getonchaintokeninfo
      with:
        address: tools.address
      outputParameters:
      - type: object
        mapping: $.
    - name: get-top-pools-token
      description: Get top pools for a token
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: onchain-dex-tokens.getonchaintokentoppools
      with:
        address: tools.address
        include: tools.include
        page: tools.page
        sort: tools.sort
      outputParameters:
      - type: object
        mapping: $.
    - name: get-pools-specific-token
      description: Get pools for a specific token
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: onchain-dex-tokens.getonchaintokenpools
      with:
        token_address: tools.token_address
        include: tools.include
        page: tools.page
      outputParameters:
      - type: object
        mapping: $.