Cyclr · Capability

Cyclr API — Cycles

Cyclr API — Cycles. 5 operations. Lead operation: Cyclr List Cycles. Self-contained Naftiko capability covering one Cyclr business surface.

Run with Naftiko CyclrCycles

What You Can Do

GET
Listcycles — Cyclr List Cycles
/v1/cycles
GET
Getcycle — Cyclr Get Cycle
/v1/cycles/{cycleid}
DELETE
Deletecycle — Cyclr Delete Cycle
/v1/cycles/{cycleid}
PUT
Activatecycle — Cyclr Activate Cycle
/v1/cycles/{cycleid}/activate
PUT
Deactivatecycle — Cyclr Deactivate Cycle
/v1/cycles/{cycleid}/deactivate

MCP Tools

cyclr-list-cycles

Cyclr List Cycles

read-only idempotent
cyclr-get-cycle

Cyclr Get Cycle

read-only idempotent
cyclr-delete-cycle

Cyclr Delete Cycle

idempotent
cyclr-activate-cycle

Cyclr Activate Cycle

idempotent
cyclr-deactivate-cycle

Cyclr Deactivate Cycle

idempotent

Capability Spec

cyclr-cycles.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Cyclr API — Cycles
  description: 'Cyclr API — Cycles. 5 operations. Lead operation: Cyclr List Cycles. Self-contained Naftiko capability covering
    one Cyclr business surface.'
  tags:
  - Cyclr
  - Cycles
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    CYCLR_API_KEY: CYCLR_API_KEY
capability:
  consumes:
  - type: http
    namespace: cyclr-cycles
    baseUri: https://api.cyclr.com/v1.0
    description: Cyclr API — Cycles business capability. Self-contained, no shared references.
    resources:
    - name: cycles
      path: /cycles
      operations:
      - name: listcycles
        method: GET
        description: Cyclr List Cycles
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: page
          in: query
          type: integer
          description: Page number for pagination
        - name: pageSize
          in: query
          type: integer
          description: Number of results per page
    - name: cycles-cycleId
      path: /cycles/{cycleId}
      operations:
      - name: getcycle
        method: GET
        description: Cyclr Get Cycle
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: deletecycle
        method: DELETE
        description: Cyclr Delete Cycle
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: cycles-cycleId-activate
      path: /cycles/{cycleId}/activate
      operations:
      - name: activatecycle
        method: PUT
        description: Cyclr Activate Cycle
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: cycles-cycleId-deactivate
      path: /cycles/{cycleId}/deactivate
      operations:
      - name: deactivatecycle
        method: PUT
        description: Cyclr Deactivate Cycle
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    authentication:
      type: bearer
      token: '{{env.CYCLR_API_KEY}}'
  exposes:
  - type: rest
    namespace: cyclr-cycles-rest
    port: 8080
    description: REST adapter for Cyclr API — Cycles. One Spectral-compliant resource per consumed operation, prefixed with
      /v1.
    resources:
    - path: /v1/cycles
      name: cycles
      description: REST surface for cycles.
      operations:
      - method: GET
        name: listcycles
        description: Cyclr List Cycles
        call: cyclr-cycles.listcycles
        with:
          page: rest.page
          pageSize: rest.pageSize
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/cycles/{cycleid}
      name: cycles-cycleid
      description: REST surface for cycles-cycleId.
      operations:
      - method: GET
        name: getcycle
        description: Cyclr Get Cycle
        call: cyclr-cycles.getcycle
        outputParameters:
        - type: object
          mapping: $.
      - method: DELETE
        name: deletecycle
        description: Cyclr Delete Cycle
        call: cyclr-cycles.deletecycle
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/cycles/{cycleid}/activate
      name: cycles-cycleid-activate
      description: REST surface for cycles-cycleId-activate.
      operations:
      - method: PUT
        name: activatecycle
        description: Cyclr Activate Cycle
        call: cyclr-cycles.activatecycle
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/cycles/{cycleid}/deactivate
      name: cycles-cycleid-deactivate
      description: REST surface for cycles-cycleId-deactivate.
      operations:
      - method: PUT
        name: deactivatecycle
        description: Cyclr Deactivate Cycle
        call: cyclr-cycles.deactivatecycle
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: cyclr-cycles-mcp
    port: 9090
    transport: http
    description: MCP adapter for Cyclr API — Cycles. One tool per consumed operation, routed inline through this capability's
      consumes block.
    tools:
    - name: cyclr-list-cycles
      description: Cyclr List Cycles
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: cyclr-cycles.listcycles
      with:
        page: tools.page
        pageSize: tools.pageSize
      outputParameters:
      - type: object
        mapping: $.
    - name: cyclr-get-cycle
      description: Cyclr Get Cycle
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: cyclr-cycles.getcycle
      outputParameters:
      - type: object
        mapping: $.
    - name: cyclr-delete-cycle
      description: Cyclr Delete Cycle
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: cyclr-cycles.deletecycle
      outputParameters:
      - type: object
        mapping: $.
    - name: cyclr-activate-cycle
      description: Cyclr Activate Cycle
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: cyclr-cycles.activatecycle
      outputParameters:
      - type: object
        mapping: $.
    - name: cyclr-deactivate-cycle
      description: Cyclr Deactivate Cycle
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: cyclr-cycles.deactivatecycle
      outputParameters:
      - type: object
        mapping: $.