naftiko: 1.0.0-alpha2 info: label: Kraken Spot REST API — Trading description: 'Kraken Spot REST API — Trading. 8 operations. Lead operation: Kraken Add Order. Self-contained Naftiko capability covering one Kraken business surface.' tags: - Kraken - Cryptocurrency - Trading created: '2026-05-30' modified: '2026-05-30' binds: - namespace: env keys: KRAKEN_API_KEY: KRAKEN_API_KEY capability: consumes: - type: http namespace: spot-rest-trading baseUri: https://api.kraken.com description: Kraken Spot REST API — Trading business capability. Self-contained, no shared references. authentication: type: apikey key: API-Key value: '{{env.KRAKEN_API_KEY}}' placement: header resources: - name: 0-private-addorder path: /0/private/AddOrder operations: - name: addOrder method: POST description: Kraken Add Order inputParameters: - name: body in: body type: object required: true description: Request body payload. outputRawFormat: json outputParameters: - name: result type: object value: $. - name: 0-private-addorderbatch path: /0/private/AddOrderBatch operations: - name: addOrderBatch method: POST description: Kraken Add Order Batch inputParameters: - name: body in: body type: object required: true description: Request body payload. outputRawFormat: json outputParameters: - name: result type: object value: $. - name: 0-private-editorder path: /0/private/EditOrder operations: - name: editOrder method: POST description: Kraken Edit Order inputParameters: - name: body in: body type: object required: true description: Request body payload. outputRawFormat: json outputParameters: - name: result type: object value: $. - name: 0-private-amendorder path: /0/private/AmendOrder operations: - name: amendOrder method: POST description: Kraken Amend Order inputParameters: - name: body in: body type: object required: true description: Request body payload. outputRawFormat: json outputParameters: - name: result type: object value: $. - name: 0-private-cancelorder path: /0/private/CancelOrder operations: - name: cancelOrder method: POST description: Kraken Cancel Order inputParameters: - name: body in: body type: object required: true description: Request body payload. outputRawFormat: json outputParameters: - name: result type: object value: $. - name: 0-private-cancelall path: /0/private/CancelAll operations: - name: cancelAllOrders method: POST description: Kraken Cancel All Orders inputParameters: - name: body in: body type: object required: true description: Request body payload. outputRawFormat: json outputParameters: - name: result type: object value: $. - name: 0-private-cancelallordersafter path: /0/private/CancelAllOrdersAfter operations: - name: cancelAllOrdersAfter method: POST description: Kraken Cancel All Orders After (Dead Man's Switch) inputParameters: - name: body in: body type: object required: true description: Request body payload. outputRawFormat: json outputParameters: - name: result type: object value: $. - name: 0-private-cancelorderbatch path: /0/private/CancelOrderBatch operations: - name: cancelOrderBatch method: POST description: Kraken Cancel Order Batch inputParameters: - name: body in: body type: object required: true description: Request body payload. outputRawFormat: json outputParameters: - name: result type: object value: $. exposes: - type: rest namespace: spot-rest-trading-rest port: 8080 description: REST adapter for Kraken Spot REST API — Trading. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/0/private/addorder name: 0-private-addorder description: REST surface for /0/private/AddOrder. operations: - method: POST name: addOrder description: Kraken Add Order call: spot-rest-trading.addOrder with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/0/private/addorderbatch name: 0-private-addorderbatch description: REST surface for /0/private/AddOrderBatch. operations: - method: POST name: addOrderBatch description: Kraken Add Order Batch call: spot-rest-trading.addOrderBatch with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/0/private/editorder name: 0-private-editorder description: REST surface for /0/private/EditOrder. operations: - method: POST name: editOrder description: Kraken Edit Order call: spot-rest-trading.editOrder with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/0/private/amendorder name: 0-private-amendorder description: REST surface for /0/private/AmendOrder. operations: - method: POST name: amendOrder description: Kraken Amend Order call: spot-rest-trading.amendOrder with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/0/private/cancelorder name: 0-private-cancelorder description: REST surface for /0/private/CancelOrder. operations: - method: POST name: cancelOrder description: Kraken Cancel Order call: spot-rest-trading.cancelOrder with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/0/private/cancelall name: 0-private-cancelall description: REST surface for /0/private/CancelAll. operations: - method: POST name: cancelAllOrders description: Kraken Cancel All Orders call: spot-rest-trading.cancelAllOrders with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/0/private/cancelallordersafter name: 0-private-cancelallordersafter description: REST surface for /0/private/CancelAllOrdersAfter. operations: - method: POST name: cancelAllOrdersAfter description: Kraken Cancel All Orders After (Dead Man's Switch) call: spot-rest-trading.cancelAllOrdersAfter with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/0/private/cancelorderbatch name: 0-private-cancelorderbatch description: REST surface for /0/private/CancelOrderBatch. operations: - method: POST name: cancelOrderBatch description: Kraken Cancel Order Batch call: spot-rest-trading.cancelOrderBatch with: body: rest.body outputParameters: - type: object mapping: $. - type: mcp namespace: spot-rest-trading-mcp port: 9090 transport: http description: MCP adapter for Kraken Spot REST API — Trading. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: kraken-add-order description: Kraken Add Order hints: readOnly: false destructive: false idempotent: false call: spot-rest-trading.addOrder with: body: tools.body outputParameters: - type: object mapping: $. - name: kraken-add-order-batch description: Kraken Add Order Batch hints: readOnly: false destructive: false idempotent: false call: spot-rest-trading.addOrderBatch with: body: tools.body outputParameters: - type: object mapping: $. - name: kraken-edit-order description: Kraken Edit Order hints: readOnly: false destructive: false idempotent: false call: spot-rest-trading.editOrder with: body: tools.body outputParameters: - type: object mapping: $. - name: kraken-amend-order description: Kraken Amend Order hints: readOnly: false destructive: false idempotent: false call: spot-rest-trading.amendOrder with: body: tools.body outputParameters: - type: object mapping: $. - name: kraken-cancel-order description: Kraken Cancel Order hints: readOnly: false destructive: false idempotent: false call: spot-rest-trading.cancelOrder with: body: tools.body outputParameters: - type: object mapping: $. - name: kraken-cancel-all-orders description: Kraken Cancel All Orders hints: readOnly: false destructive: false idempotent: false call: spot-rest-trading.cancelAllOrders with: body: tools.body outputParameters: - type: object mapping: $. - name: kraken-cancel-all-orders-after description: Kraken Cancel All Orders After (Dead Man's Switch) hints: readOnly: false destructive: false idempotent: false call: spot-rest-trading.cancelAllOrdersAfter with: body: tools.body outputParameters: - type: object mapping: $. - name: kraken-cancel-order-batch description: Kraken Cancel Order Batch hints: readOnly: false destructive: false idempotent: false call: spot-rest-trading.cancelOrderBatch with: body: tools.body outputParameters: - type: object mapping: $.