naftiko: 1.0.0-alpha2 info: label: Toast Labor API — Shifts description: 'Toast Labor API — Shifts. 5 operations. Lead operation: Toast Get Shifts. Self-contained Naftiko capability covering one Toast business surface.' tags: - Toast - Shifts created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: TOAST_API_KEY: TOAST_API_KEY capability: consumes: - type: http namespace: labor-shifts baseUri: https://toast-api-server/labor/v1 description: Toast Labor API — Shifts business capability. Self-contained, no shared references. resources: - name: shifts path: /shifts operations: - name: shiftsget method: GET description: Toast Get Shifts outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: Toast-Restaurant-External-ID in: header type: string description: 'The Toast platform GUID of the restaurant that is the ' required: true - name: shiftIds in: query type: string description: An optional identifier that filters return values for a - name: startDate in: query type: string description: 'Optional start date and time of time period to match ' - name: endDate in: query type: string description: 'Optional end date and time of time period to match shifts. ' - name: shiftspost method: POST description: Toast Create a Shift outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: Toast-Restaurant-External-ID in: header type: string description: 'The Toast platform GUID of the restaurant that is the ' required: true - name: Content-Type in: header type: string description: 'The Internet Assigned Numbers Authority (IANA) media type ' required: true - name: body in: body type: string description: 'A `Shift` object containing information about the shift, ' required: true - name: shifts-shiftId path: /shifts/{shiftId} operations: - name: shiftsshiftidget method: GET description: Toast Get a Shift outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: Toast-Restaurant-External-ID in: header type: string description: 'The Toast platform GUID of the restaurant that is the ' required: true - name: shiftId in: path type: string description: 'The Toast platform GUID or an external identifier for the ' required: true - name: shiftsshiftidput method: PUT description: Toast Update a Shift outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: Toast-Restaurant-External-ID in: header type: string description: 'The Toast platform GUID of the restaurant that is the ' required: true - name: shiftId in: path type: string description: 'The shift identifier, either the Toast platform GUID or an ' required: true - name: body in: body type: string description: 'The shift information. The `externalId` identifier is not ' required: true - name: shiftsshiftiddelete method: DELETE description: Toast Delete a Shift outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: Toast-Restaurant-External-ID in: header type: string description: 'The Toast platform GUID of the restaurant that is the ' required: true - name: shiftId in: path type: string description: 'The shift identifier, either the Toast platform GUID or an ' required: true exposes: - type: rest namespace: labor-shifts-rest port: 8080 description: REST adapter for Toast Labor API — Shifts. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/shifts name: shifts description: REST surface for shifts. operations: - method: GET name: shiftsget description: Toast Get Shifts call: labor-shifts.shiftsget with: Toast-Restaurant-External-ID: rest.Toast-Restaurant-External-ID shiftIds: rest.shiftIds startDate: rest.startDate endDate: rest.endDate outputParameters: - type: object mapping: $. - method: POST name: shiftspost description: Toast Create a Shift call: labor-shifts.shiftspost with: Toast-Restaurant-External-ID: rest.Toast-Restaurant-External-ID Content-Type: rest.Content-Type body: rest.body outputParameters: - type: object mapping: $. - path: /v1/shifts/{shiftid} name: shifts-shiftid description: REST surface for shifts-shiftId. operations: - method: GET name: shiftsshiftidget description: Toast Get a Shift call: labor-shifts.shiftsshiftidget with: Toast-Restaurant-External-ID: rest.Toast-Restaurant-External-ID shiftId: rest.shiftId outputParameters: - type: object mapping: $. - method: PUT name: shiftsshiftidput description: Toast Update a Shift call: labor-shifts.shiftsshiftidput with: Toast-Restaurant-External-ID: rest.Toast-Restaurant-External-ID shiftId: rest.shiftId body: rest.body outputParameters: - type: object mapping: $. - method: DELETE name: shiftsshiftiddelete description: Toast Delete a Shift call: labor-shifts.shiftsshiftiddelete with: Toast-Restaurant-External-ID: rest.Toast-Restaurant-External-ID shiftId: rest.shiftId outputParameters: - type: object mapping: $. - type: mcp namespace: labor-shifts-mcp port: 9090 transport: http description: MCP adapter for Toast Labor API — Shifts. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: toast-get-shifts description: Toast Get Shifts hints: readOnly: true destructive: false idempotent: true call: labor-shifts.shiftsget with: Toast-Restaurant-External-ID: tools.Toast-Restaurant-External-ID shiftIds: tools.shiftIds startDate: tools.startDate endDate: tools.endDate outputParameters: - type: object mapping: $. - name: toast-create-shift description: Toast Create a Shift hints: readOnly: false destructive: false idempotent: false call: labor-shifts.shiftspost with: Toast-Restaurant-External-ID: tools.Toast-Restaurant-External-ID Content-Type: tools.Content-Type body: tools.body outputParameters: - type: object mapping: $. - name: toast-get-shift description: Toast Get a Shift hints: readOnly: true destructive: false idempotent: true call: labor-shifts.shiftsshiftidget with: Toast-Restaurant-External-ID: tools.Toast-Restaurant-External-ID shiftId: tools.shiftId outputParameters: - type: object mapping: $. - name: toast-update-shift description: Toast Update a Shift hints: readOnly: false destructive: false idempotent: true call: labor-shifts.shiftsshiftidput with: Toast-Restaurant-External-ID: tools.Toast-Restaurant-External-ID shiftId: tools.shiftId body: tools.body outputParameters: - type: object mapping: $. - name: toast-delete-shift description: Toast Delete a Shift hints: readOnly: false destructive: true idempotent: true call: labor-shifts.shiftsshiftiddelete with: Toast-Restaurant-External-ID: tools.Toast-Restaurant-External-ID shiftId: tools.shiftId outputParameters: - type: object mapping: $.