CoinGecko · Capability

CoinGecko Onchain DEX API — Pools

CoinGecko Onchain DEX API — Pools. 6 operations. Lead operation: Get new pools across all networks. Self-contained Naftiko capability covering one Coingecko business surface.

Run with Naftiko CoingeckoPools

What You Can Do

GET
Getonchainnewpoolsallnetworks — Get new pools across all networks
/v1/onchain/networks/new-pools
GET
Getonchaintoppoolsbydex — Get top pools on a DEX
/v1/onchain/networks/{network}/dexes/{dex}/pools
GET
Getonchainnewpoolsbynetwork — Get new pools on a network
/v1/onchain/networks/{network}/new-pools
GET
Getonchaintoppoolsbynetwork — Get top pools on a network
/v1/onchain/networks/{network}/pools
GET
Getonchainmultiplepools — Get multiple pools by addresses
/v1/onchain/networks/{network}/pools/multi/{addresses}
GET
Getonchainpoolbyaddress — Get pool data by contract address
/v1/onchain/networks/{network}/pools/{address}

MCP Tools

get-new-pools-across-all

Get new pools across all networks

read-only idempotent
get-top-pools-dex

Get top pools on a DEX

read-only idempotent
get-new-pools-network

Get new pools on a network

read-only idempotent
get-top-pools-network

Get top pools on a network

read-only idempotent
get-multiple-pools-addresses

Get multiple pools by addresses

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

Get pool data by contract address

read-only idempotent

Capability Spec

onchain-dex-pools.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: CoinGecko Onchain DEX API — Pools
  description: 'CoinGecko Onchain DEX API — Pools. 6 operations. Lead operation: Get new pools across all networks. Self-contained
    Naftiko capability covering one Coingecko business surface.'
  tags:
  - Coingecko
  - Pools
  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-pools
    baseUri: https://pro-api.coingecko.com/api/v3
    description: CoinGecko Onchain DEX API — Pools business capability. Self-contained, no shared references.
    resources:
    - name: onchain-networks-new_pools
      path: /onchain/networks/new_pools
      operations:
      - name: getonchainnewpoolsallnetworks
        method: GET
        description: Get new pools across all networks
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: include
          in: query
          type: string
          description: Additional data to include (e.g., base_token, quote_token, dex, network)
        - name: page
          in: query
          type: integer
          description: Page number for pagination
    - name: onchain-networks-network-dexes-dex-pools
      path: /onchain/networks/{network}/dexes/{dex}/pools
      operations:
      - name: getonchaintoppoolsbydex
        method: GET
        description: Get top pools on a DEX
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: dex
          in: path
          type: string
          description: The DEX identifier
          required: true
        - name: include
          in: query
          type: string
          description: Additional data to include (e.g., base_token, quote_token)
        - name: page
          in: query
          type: integer
          description: Page number for pagination
        - name: sort
          in: query
          type: string
          description: Sort order
    - name: onchain-networks-network-new_pools
      path: /onchain/networks/{network}/new_pools
      operations:
      - name: getonchainnewpoolsbynetwork
        method: GET
        description: Get new pools on a network
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - 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: onchain-networks-network-pools
      path: /onchain/networks/{network}/pools
      operations:
      - name: getonchaintoppoolsbynetwork
        method: GET
        description: Get top pools on a network
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - 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-pools-multi-addresses
      path: /onchain/networks/{network}/pools/multi/{addresses}
      operations:
      - name: getonchainmultiplepools
        method: GET
        description: Get multiple pools by addresses
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: addresses
          in: path
          type: string
          description: Comma-separated list of pool contract addresses (up to 30)
          required: true
        - name: include
          in: query
          type: string
          description: Additional data to include (e.g., base_token, quote_token, dex)
    - name: onchain-networks-network-pools-address
      path: /onchain/networks/{network}/pools/{address}
      operations:
      - name: getonchainpoolbyaddress
        method: GET
        description: Get pool data by contract address
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: address
          in: path
          type: string
          description: The pool contract address
          required: true
        - name: include
          in: query
          type: string
          description: Additional data to include (e.g., base_token, quote_token, dex)
    authentication:
      type: apikey
      key: x-cg-pro-api-key
      value: '{{env.COINGECKO_API_KEY}}'
      placement: header
  exposes:
  - type: rest
    namespace: onchain-dex-pools-rest
    port: 8080
    description: REST adapter for CoinGecko Onchain DEX API — Pools. One Spectral-compliant resource per consumed operation,
      prefixed with /v1.
    resources:
    - path: /v1/onchain/networks/new-pools
      name: onchain-networks-new-pools
      description: REST surface for onchain-networks-new_pools.
      operations:
      - method: GET
        name: getonchainnewpoolsallnetworks
        description: Get new pools across all networks
        call: onchain-dex-pools.getonchainnewpoolsallnetworks
        with:
          include: rest.include
          page: rest.page
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/onchain/networks/{network}/dexes/{dex}/pools
      name: onchain-networks-network-dexes-dex-pools
      description: REST surface for onchain-networks-network-dexes-dex-pools.
      operations:
      - method: GET
        name: getonchaintoppoolsbydex
        description: Get top pools on a DEX
        call: onchain-dex-pools.getonchaintoppoolsbydex
        with:
          dex: rest.dex
          include: rest.include
          page: rest.page
          sort: rest.sort
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/onchain/networks/{network}/new-pools
      name: onchain-networks-network-new-pools
      description: REST surface for onchain-networks-network-new_pools.
      operations:
      - method: GET
        name: getonchainnewpoolsbynetwork
        description: Get new pools on a network
        call: onchain-dex-pools.getonchainnewpoolsbynetwork
        with:
          include: rest.include
          page: rest.page
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/onchain/networks/{network}/pools
      name: onchain-networks-network-pools
      description: REST surface for onchain-networks-network-pools.
      operations:
      - method: GET
        name: getonchaintoppoolsbynetwork
        description: Get top pools on a network
        call: onchain-dex-pools.getonchaintoppoolsbynetwork
        with:
          include: rest.include
          page: rest.page
          sort: rest.sort
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/onchain/networks/{network}/pools/multi/{addresses}
      name: onchain-networks-network-pools-multi-addresses
      description: REST surface for onchain-networks-network-pools-multi-addresses.
      operations:
      - method: GET
        name: getonchainmultiplepools
        description: Get multiple pools by addresses
        call: onchain-dex-pools.getonchainmultiplepools
        with:
          addresses: rest.addresses
          include: rest.include
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/onchain/networks/{network}/pools/{address}
      name: onchain-networks-network-pools-address
      description: REST surface for onchain-networks-network-pools-address.
      operations:
      - method: GET
        name: getonchainpoolbyaddress
        description: Get pool data by contract address
        call: onchain-dex-pools.getonchainpoolbyaddress
        with:
          address: rest.address
          include: rest.include
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: onchain-dex-pools-mcp
    port: 9090
    transport: http
    description: MCP adapter for CoinGecko Onchain DEX API — Pools. One tool per consumed operation, routed inline through
      this capability's consumes block.
    tools:
    - name: get-new-pools-across-all
      description: Get new pools across all networks
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: onchain-dex-pools.getonchainnewpoolsallnetworks
      with:
        include: tools.include
        page: tools.page
      outputParameters:
      - type: object
        mapping: $.
    - name: get-top-pools-dex
      description: Get top pools on a DEX
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: onchain-dex-pools.getonchaintoppoolsbydex
      with:
        dex: tools.dex
        include: tools.include
        page: tools.page
        sort: tools.sort
      outputParameters:
      - type: object
        mapping: $.
    - name: get-new-pools-network
      description: Get new pools on a network
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: onchain-dex-pools.getonchainnewpoolsbynetwork
      with:
        include: tools.include
        page: tools.page
      outputParameters:
      - type: object
        mapping: $.
    - name: get-top-pools-network
      description: Get top pools on a network
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: onchain-dex-pools.getonchaintoppoolsbynetwork
      with:
        include: tools.include
        page: tools.page
        sort: tools.sort
      outputParameters:
      - type: object
        mapping: $.
    - name: get-multiple-pools-addresses
      description: Get multiple pools by addresses
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: onchain-dex-pools.getonchainmultiplepools
      with:
        addresses: tools.addresses
        include: tools.include
      outputParameters:
      - type: object
        mapping: $.
    - name: get-pool-data-contract-address
      description: Get pool data by contract address
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: onchain-dex-pools.getonchainpoolbyaddress
      with:
        address: tools.address
        include: tools.include
      outputParameters:
      - type: object
        mapping: $.