naftiko: 1.0.0-alpha2 info: label: SPX Graphics Control API — Item description: 'SPX Graphics Control API — Item. 5 operations. Lead operation: Direct Play Out. Self-contained Naftiko capability covering one Spx business surface.' tags: - Spx - Item created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: SPX_API_KEY: SPX_API_KEY capability: consumes: - type: http namespace: graphics-control-item baseUri: http://localhost:5656 description: SPX Graphics Control API — Item business capability. Self-contained, no shared references. resources: - name: api-v1-directplayout path: /api/v1/directplayout operations: - name: directplayout method: POST description: Direct Play Out outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: api-v1-item-continue path: /api/v1/item/continue operations: - name: continueitem method: GET description: Continue Item outputRawFormat: json outputParameters: - name: result type: object value: $. - name: api-v1-item-play path: /api/v1/item/play operations: - name: playitem method: GET description: Play Item outputRawFormat: json outputParameters: - name: result type: object value: $. - name: api-v1-item-stop path: /api/v1/item/stop operations: - name: stopitem method: GET description: Stop Item outputRawFormat: json outputParameters: - name: result type: object value: $. - name: api-v1-item-update path: /api/v1/item/update operations: - name: updateitem method: POST description: Update Item outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true exposes: - type: rest namespace: graphics-control-item-rest port: 8080 description: REST adapter for SPX Graphics Control API — Item. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/api/v1/directplayout name: api-v1-directplayout description: REST surface for api-v1-directplayout. operations: - method: POST name: directplayout description: Direct Play Out call: graphics-control-item.directplayout with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/api/v1/item/continue name: api-v1-item-continue description: REST surface for api-v1-item-continue. operations: - method: GET name: continueitem description: Continue Item call: graphics-control-item.continueitem outputParameters: - type: object mapping: $. - path: /v1/api/v1/item/play name: api-v1-item-play description: REST surface for api-v1-item-play. operations: - method: GET name: playitem description: Play Item call: graphics-control-item.playitem outputParameters: - type: object mapping: $. - path: /v1/api/v1/item/stop name: api-v1-item-stop description: REST surface for api-v1-item-stop. operations: - method: GET name: stopitem description: Stop Item call: graphics-control-item.stopitem outputParameters: - type: object mapping: $. - path: /v1/api/v1/item/update name: api-v1-item-update description: REST surface for api-v1-item-update. operations: - method: POST name: updateitem description: Update Item call: graphics-control-item.updateitem with: body: rest.body outputParameters: - type: object mapping: $. - type: mcp namespace: graphics-control-item-mcp port: 9090 transport: http description: MCP adapter for SPX Graphics Control API — Item. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: direct-play-out description: Direct Play Out hints: readOnly: false destructive: false idempotent: false call: graphics-control-item.directplayout with: body: tools.body outputParameters: - type: object mapping: $. - name: continue-item description: Continue Item hints: readOnly: true destructive: false idempotent: true call: graphics-control-item.continueitem outputParameters: - type: object mapping: $. - name: play-item description: Play Item hints: readOnly: true destructive: false idempotent: true call: graphics-control-item.playitem outputParameters: - type: object mapping: $. - name: stop-item description: Stop Item hints: readOnly: true destructive: false idempotent: true call: graphics-control-item.stopitem outputParameters: - type: object mapping: $. - name: update-item description: Update Item hints: readOnly: false destructive: false idempotent: false call: graphics-control-item.updateitem with: body: tools.body outputParameters: - type: object mapping: $.