naftiko: 1.0.0-alpha2 info: label: Microsoft Graph Devices — devices.device.Actions description: 'Microsoft Graph Devices — devices.device.Actions. 8 operations. Lead operation: Microsoft Graph Invoke action getAvailableExtensionProperties. Self-contained Naftiko capability covering one Microsoft Graph business surface.' tags: - Microsoft Graph - devices.device.Actions created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: MICROSOFT_GRAPH_API_KEY: MICROSOFT_GRAPH_API_KEY capability: consumes: - type: http namespace: devices-devices-device-actions baseUri: '' description: Microsoft Graph Devices — devices.device.Actions business capability. Self-contained, no shared references. resources: - name: devices-getAvailableExtensionProperties path: /devices/getAvailableExtensionProperties operations: - name: devicesgetavailableextensionproperties method: POST description: Microsoft Graph Invoke action getAvailableExtensionProperties outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: devices-getByIds path: /devices/getByIds operations: - name: devicesgetbyids method: POST description: Microsoft Graph Invoke action getByIds outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: devices-validateProperties path: /devices/validateProperties operations: - name: devicesvalidateproperties method: POST description: Microsoft Graph Invoke action validateProperties outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: devices-device-id-checkMemberGroups path: /devices/{device-id}/checkMemberGroups operations: - name: devicesdevicecheckmembergroups method: POST description: Microsoft Graph Invoke action checkMemberGroups outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: devices-device-id-checkMemberObjects path: /devices/{device-id}/checkMemberObjects operations: - name: devicesdevicecheckmemberobjects method: POST description: Microsoft Graph Invoke action checkMemberObjects outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: devices-device-id-getMemberGroups path: /devices/{device-id}/getMemberGroups operations: - name: devicesdevicegetmembergroups method: POST description: Microsoft Graph Invoke action getMemberGroups outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: devices-device-id-getMemberObjects path: /devices/{device-id}/getMemberObjects operations: - name: devicesdevicegetmemberobjects method: POST description: Microsoft Graph Invoke action getMemberObjects outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: devices-device-id-restore path: /devices/{device-id}/restore operations: - name: devicesdevicerestore method: POST description: Microsoft Graph Invoke action restore outputRawFormat: json outputParameters: - name: result type: object value: $. exposes: - type: rest namespace: devices-devices-device-actions-rest port: 8080 description: REST adapter for Microsoft Graph Devices — devices.device.Actions. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/devices/getavailableextensionproperties name: devices-getavailableextensionproperties description: REST surface for devices-getAvailableExtensionProperties. operations: - method: POST name: devicesgetavailableextensionproperties description: Microsoft Graph Invoke action getAvailableExtensionProperties call: devices-devices-device-actions.devicesgetavailableextensionproperties with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/devices/getbyids name: devices-getbyids description: REST surface for devices-getByIds. operations: - method: POST name: devicesgetbyids description: Microsoft Graph Invoke action getByIds call: devices-devices-device-actions.devicesgetbyids with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/devices/validateproperties name: devices-validateproperties description: REST surface for devices-validateProperties. operations: - method: POST name: devicesvalidateproperties description: Microsoft Graph Invoke action validateProperties call: devices-devices-device-actions.devicesvalidateproperties with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/devices/{device-id}/checkmembergroups name: devices-device-id-checkmembergroups description: REST surface for devices-device-id-checkMemberGroups. operations: - method: POST name: devicesdevicecheckmembergroups description: Microsoft Graph Invoke action checkMemberGroups call: devices-devices-device-actions.devicesdevicecheckmembergroups with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/devices/{device-id}/checkmemberobjects name: devices-device-id-checkmemberobjects description: REST surface for devices-device-id-checkMemberObjects. operations: - method: POST name: devicesdevicecheckmemberobjects description: Microsoft Graph Invoke action checkMemberObjects call: devices-devices-device-actions.devicesdevicecheckmemberobjects with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/devices/{device-id}/getmembergroups name: devices-device-id-getmembergroups description: REST surface for devices-device-id-getMemberGroups. operations: - method: POST name: devicesdevicegetmembergroups description: Microsoft Graph Invoke action getMemberGroups call: devices-devices-device-actions.devicesdevicegetmembergroups with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/devices/{device-id}/getmemberobjects name: devices-device-id-getmemberobjects description: REST surface for devices-device-id-getMemberObjects. operations: - method: POST name: devicesdevicegetmemberobjects description: Microsoft Graph Invoke action getMemberObjects call: devices-devices-device-actions.devicesdevicegetmemberobjects with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/devices/{device-id}/restore name: devices-device-id-restore description: REST surface for devices-device-id-restore. operations: - method: POST name: devicesdevicerestore description: Microsoft Graph Invoke action restore call: devices-devices-device-actions.devicesdevicerestore outputParameters: - type: object mapping: $. - type: mcp namespace: devices-devices-device-actions-mcp port: 9090 transport: http description: MCP adapter for Microsoft Graph Devices — devices.device.Actions. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: microsoft-graph-invoke-action-getavailableextensionproperties description: Microsoft Graph Invoke action getAvailableExtensionProperties hints: readOnly: false destructive: false idempotent: false call: devices-devices-device-actions.devicesgetavailableextensionproperties with: body: tools.body outputParameters: - type: object mapping: $. - name: microsoft-graph-invoke-action-getbyids description: Microsoft Graph Invoke action getByIds hints: readOnly: false destructive: false idempotent: false call: devices-devices-device-actions.devicesgetbyids with: body: tools.body outputParameters: - type: object mapping: $. - name: microsoft-graph-invoke-action-validateproperties description: Microsoft Graph Invoke action validateProperties hints: readOnly: true destructive: false idempotent: false call: devices-devices-device-actions.devicesvalidateproperties with: body: tools.body outputParameters: - type: object mapping: $. - name: microsoft-graph-invoke-action-checkmembergroups description: Microsoft Graph Invoke action checkMemberGroups hints: readOnly: false destructive: false idempotent: false call: devices-devices-device-actions.devicesdevicecheckmembergroups with: body: tools.body outputParameters: - type: object mapping: $. - name: microsoft-graph-invoke-action-checkmemberobjects description: Microsoft Graph Invoke action checkMemberObjects hints: readOnly: false destructive: false idempotent: false call: devices-devices-device-actions.devicesdevicecheckmemberobjects with: body: tools.body outputParameters: - type: object mapping: $. - name: microsoft-graph-invoke-action-getmembergroups description: Microsoft Graph Invoke action getMemberGroups hints: readOnly: false destructive: false idempotent: false call: devices-devices-device-actions.devicesdevicegetmembergroups with: body: tools.body outputParameters: - type: object mapping: $. - name: microsoft-graph-invoke-action-getmemberobjects description: Microsoft Graph Invoke action getMemberObjects hints: readOnly: false destructive: false idempotent: false call: devices-devices-device-actions.devicesdevicegetmemberobjects with: body: tools.body outputParameters: - type: object mapping: $. - name: microsoft-graph-invoke-action-restore description: Microsoft Graph Invoke action restore hints: readOnly: false destructive: false idempotent: false call: devices-devices-device-actions.devicesdevicerestore outputParameters: - type: object mapping: $.