naftiko: 1.0.0-alpha2 info: label: CoinGecko Crypto Market Data API — Derivatives description: 'CoinGecko Crypto Market Data API — Derivatives. 4 operations. Lead operation: List all derivative tickers. Self-contained Naftiko capability covering one Coingecko business surface.' tags: - Coingecko - Derivatives created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: COINGECKO_API_KEY: COINGECKO_API_KEY capability: consumes: - type: http namespace: crypto-market-data-derivatives baseUri: https://api.coingecko.com/api/v3 description: CoinGecko Crypto Market Data API — Derivatives business capability. Self-contained, no shared references. resources: - name: derivatives path: /derivatives operations: - name: getderivatives method: GET description: List all derivative tickers outputRawFormat: json outputParameters: - name: result type: object value: $. - name: derivatives-exchanges path: /derivatives/exchanges operations: - name: getderivativesexchanges method: GET description: List derivative exchanges outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: order in: query type: string description: Sort order for results - name: per_page in: query type: integer description: Number of results per page - name: page in: query type: integer description: Page number for pagination - name: derivatives-exchanges-list path: /derivatives/exchanges/list operations: - name: getderivativeexchangeslist method: GET description: List derivative exchanges (ID map) outputRawFormat: json outputParameters: - name: result type: object value: $. - name: derivatives-exchanges-id path: /derivatives/exchanges/{id} operations: - name: getderivativeexchangebyid method: GET description: Get derivative exchange data by ID outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string description: The derivative exchange ID required: true - name: include_tickers in: query type: string description: Include derivative tickers data authentication: type: apikey key: x-cg-demo-api-key value: '{{env.COINGECKO_API_KEY}}' placement: header exposes: - type: rest namespace: crypto-market-data-derivatives-rest port: 8080 description: REST adapter for CoinGecko Crypto Market Data API — Derivatives. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/derivatives name: derivatives description: REST surface for derivatives. operations: - method: GET name: getderivatives description: List all derivative tickers call: crypto-market-data-derivatives.getderivatives outputParameters: - type: object mapping: $. - path: /v1/derivatives/exchanges name: derivatives-exchanges description: REST surface for derivatives-exchanges. operations: - method: GET name: getderivativesexchanges description: List derivative exchanges call: crypto-market-data-derivatives.getderivativesexchanges with: order: rest.order per_page: rest.per_page page: rest.page outputParameters: - type: object mapping: $. - path: /v1/derivatives/exchanges/list name: derivatives-exchanges-list description: REST surface for derivatives-exchanges-list. operations: - method: GET name: getderivativeexchangeslist description: List derivative exchanges (ID map) call: crypto-market-data-derivatives.getderivativeexchangeslist outputParameters: - type: object mapping: $. - path: /v1/derivatives/exchanges/{id} name: derivatives-exchanges-id description: REST surface for derivatives-exchanges-id. operations: - method: GET name: getderivativeexchangebyid description: Get derivative exchange data by ID call: crypto-market-data-derivatives.getderivativeexchangebyid with: id: rest.id include_tickers: rest.include_tickers outputParameters: - type: object mapping: $. - type: mcp namespace: crypto-market-data-derivatives-mcp port: 9090 transport: http description: MCP adapter for CoinGecko Crypto Market Data API — Derivatives. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: list-all-derivative-tickers description: List all derivative tickers hints: readOnly: true destructive: false idempotent: true call: crypto-market-data-derivatives.getderivatives outputParameters: - type: object mapping: $. - name: list-derivative-exchanges description: List derivative exchanges hints: readOnly: true destructive: false idempotent: true call: crypto-market-data-derivatives.getderivativesexchanges with: order: tools.order per_page: tools.per_page page: tools.page outputParameters: - type: object mapping: $. - name: list-derivative-exchanges-id-map description: List derivative exchanges (ID map) hints: readOnly: true destructive: false idempotent: true call: crypto-market-data-derivatives.getderivativeexchangeslist outputParameters: - type: object mapping: $. - name: get-derivative-exchange-data-id description: Get derivative exchange data by ID hints: readOnly: true destructive: false idempotent: true call: crypto-market-data-derivatives.getderivativeexchangebyid with: id: tools.id include_tickers: tools.include_tickers outputParameters: - type: object mapping: $.