naftiko: 1.0.0-alpha2 info: label: Wahoo Cloud API — Power Zones description: >- Cycling power zone capability for the Wahoo Cloud API. Manage FTP-based training zones used by KICKR trainers and ELEMNT computers. tags: - Wahoo - Power Zones - FTP - Cycling created: '2026-05-25' modified: '2026-05-25' binds: - namespace: env keys: WAHOO_ACCESS_TOKEN: WAHOO_ACCESS_TOKEN capability: consumes: - type: http namespace: cloud-power-zones baseUri: https://api.wahooligan.com description: Wahoo Cloud Power Zones surface. resources: - name: v1-power-zones path: /v1/power_zones operations: - name: listPowerZones method: GET description: List power zones. - name: createPowerZones method: POST description: Create power zones. inputParameters: [{ name: body, in: body, type: object, required: true }] - name: v1-power-zones-id path: /v1/power_zones/{id} operations: - name: getPowerZones method: GET description: Get power zones by id. inputParameters: [{ name: id, in: path, type: integer, required: true }] - name: updatePowerZones method: PUT description: Update power zones. inputParameters: - { name: id, in: path, type: integer, required: true } - { name: body, in: body, type: object, required: true } - name: deletePowerZones method: DELETE description: Delete power zones. inputParameters: [{ name: id, in: path, type: integer, required: true }] authentication: type: bearer value: '{{env.WAHOO_ACCESS_TOKEN}}' placement: header exposes: - type: mcp namespace: cloud-power-zones-mcp port: 9090 transport: http description: MCP adapter for Wahoo Cloud Power Zones. tools: - name: wahoo-list-power-zones description: List Wahoo cycling power zones. hints: { readOnly: true, destructive: false, idempotent: true } call: cloud-power-zones.listPowerZones - name: wahoo-create-power-zones description: Create Wahoo cycling power zones. hints: { readOnly: false, destructive: false, idempotent: false } call: cloud-power-zones.createPowerZones with: { body: tools.body } - name: wahoo-get-power-zones description: Get Wahoo cycling power zones. hints: { readOnly: true, destructive: false, idempotent: true } call: cloud-power-zones.getPowerZones with: { id: tools.id } - name: wahoo-update-power-zones description: Update Wahoo cycling power zones. hints: { readOnly: false, destructive: false, idempotent: true } call: cloud-power-zones.updatePowerZones with: { id: tools.id, body: tools.body } - name: wahoo-delete-power-zones description: Delete Wahoo cycling power zones. hints: { readOnly: false, destructive: true, idempotent: true } call: cloud-power-zones.deletePowerZones with: { id: tools.id }