naftiko: 1.0.0-alpha2 info: label: Daytona Volumes description: 'Daytona Volumes. 5 operations. Lead operation: List all volumes. Self-contained Naftiko capability covering one Daytona business surface.' tags: - Daytona - Volumes created: '2026-05-25' modified: '2026-05-25' binds: - namespace: env keys: DAYTONA_API_KEY: DAYTONA_API_KEY capability: consumes: - type: http namespace: volumes baseUri: https://app.daytona.io/api description: Daytona Volumes business capability. Self-contained, no shared references. resources: - name: volumes path: /volumes operations: - name: listvolumes method: GET description: List all volumes outputRawFormat: json outputParameters: - name: result type: object value: $. - name: createvolume method: POST description: Create a new volume outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: volumes-volumeid path: /volumes/{volumeId} operations: - name: getvolume method: GET description: Get volume details outputRawFormat: json outputParameters: - name: result type: object value: $. - name: deletevolume method: DELETE description: Delete volume outputRawFormat: json outputParameters: - name: result type: object value: $. - name: volumes-by-name-name path: /volumes/by-name/{name} operations: - name: getvolumebyname method: GET description: Get volume details by name outputRawFormat: json outputParameters: - name: result type: object value: $. authentication: type: bearer value: '{{env.DAYTONA_API_KEY}}' placement: header exposes: - type: rest namespace: volumes-rest port: 8080 description: REST adapter for Daytona Volumes. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/volumes name: volumes description: REST surface for volumes. operations: - method: GET name: listvolumes description: List all volumes call: volumes.listvolumes outputParameters: - type: object mapping: $. - method: POST name: createvolume description: Create a new volume call: volumes.createvolume outputParameters: - type: object mapping: $. with: body: rest.body - path: /v1/volumes/{volumeId} name: volumes-volumeid description: REST surface for volumes-volumeid. operations: - method: GET name: getvolume description: Get volume details call: volumes.getvolume outputParameters: - type: object mapping: $. - method: DELETE name: deletevolume description: Delete volume call: volumes.deletevolume outputParameters: - type: object mapping: $. - path: /v1/volumes/by-name/{name} name: volumes-by-name-name description: REST surface for volumes-by-name-name. operations: - method: GET name: getvolumebyname description: Get volume details by name call: volumes.getvolumebyname outputParameters: - type: object mapping: $. - type: mcp namespace: volumes-mcp port: 9090 transport: http description: MCP adapter for Daytona Volumes. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: daytona-list-all-volumes description: List all volumes hints: readOnly: true destructive: false idempotent: true call: volumes.listvolumes outputParameters: - type: object mapping: $. - name: daytona-create-a-new-volume description: Create a new volume hints: readOnly: false destructive: false idempotent: false call: volumes.createvolume outputParameters: - type: object mapping: $. with: body: tools.body - name: daytona-get-volume-details description: Get volume details hints: readOnly: true destructive: false idempotent: true call: volumes.getvolume outputParameters: - type: object mapping: $. - name: daytona-delete-volume description: Delete volume hints: readOnly: false destructive: true idempotent: true call: volumes.deletevolume outputParameters: - type: object mapping: $. - name: daytona-get-volume-details-by-name description: Get volume details by name hints: readOnly: true destructive: false idempotent: true call: volumes.getvolumebyname outputParameters: - type: object mapping: $.