naftiko: 1.0.0-alpha2 info: label: Steelcase RoomWizard API — Bookings description: 'Steelcase RoomWizard API — Bookings. 3 operations. Lead operation: Cancel a Booking. Self-contained Naftiko capability covering one Steelcase business surface.' tags: - Steelcase - Bookings created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: STEELCASE_API_KEY: STEELCASE_API_KEY capability: consumes: - type: http namespace: roomwizard-bookings baseUri: https://{host}:{port}/api description: Steelcase RoomWizard API — Bookings business capability. Self-contained, no shared references. resources: - name: cancel_booking path: /cancel_booking operations: - name: cancelbooking method: POST description: Cancel a Booking outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: create_booking path: /create_booking operations: - name: createbooking method: POST description: Create a Booking outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: get_bookings path: /get_bookings operations: - name: getbookings method: GET description: Get Room Bookings outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: room_id in: query type: string description: Filter bookings by room identifier. - name: start_date in: query type: string description: Start date for booking query (YYYY-MM-DD). - name: end_date in: query type: string description: End date for booking query (YYYY-MM-DD). - name: include_cancelled in: query type: boolean description: Whether to include cancelled bookings in the response. exposes: - type: rest namespace: roomwizard-bookings-rest port: 8080 description: REST adapter for Steelcase RoomWizard API — Bookings. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/cancel-booking name: cancel-booking description: REST surface for cancel_booking. operations: - method: POST name: cancelbooking description: Cancel a Booking call: roomwizard-bookings.cancelbooking with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/create-booking name: create-booking description: REST surface for create_booking. operations: - method: POST name: createbooking description: Create a Booking call: roomwizard-bookings.createbooking with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/get-bookings name: get-bookings description: REST surface for get_bookings. operations: - method: GET name: getbookings description: Get Room Bookings call: roomwizard-bookings.getbookings with: room_id: rest.room_id start_date: rest.start_date end_date: rest.end_date include_cancelled: rest.include_cancelled outputParameters: - type: object mapping: $. - type: mcp namespace: roomwizard-bookings-mcp port: 9090 transport: http description: MCP adapter for Steelcase RoomWizard API — Bookings. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: cancel-booking description: Cancel a Booking hints: readOnly: false destructive: false idempotent: false call: roomwizard-bookings.cancelbooking with: body: tools.body outputParameters: - type: object mapping: $. - name: create-booking description: Create a Booking hints: readOnly: false destructive: false idempotent: false call: roomwizard-bookings.createbooking with: body: tools.body outputParameters: - type: object mapping: $. - name: get-room-bookings description: Get Room Bookings hints: readOnly: true destructive: false idempotent: true call: roomwizard-bookings.getbookings with: room_id: tools.room_id start_date: tools.start_date end_date: tools.end_date include_cancelled: tools.include_cancelled outputParameters: - type: object mapping: $.