naftiko: 1.0.0-alpha2 info: label: Microsoft Azure fist — Workspaces description: 'Microsoft Azure fist — Workspaces. 7 operations. Lead operation: Microsoft Azure Get Subscriptions Subscriptionid Providers Microsoft Iotfirmwaredefense Workspaces. Self-contained Naftiko capability covering one Microsoft Azure business surface.' tags: - Microsoft Azure - Workspaces created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: MICROSOFT_AZURE_API_KEY: MICROSOFT_AZURE_API_KEY capability: consumes: - type: http namespace: fist-workspaces baseUri: https://management.azure.com description: Microsoft Azure fist — Workspaces business capability. Self-contained, no shared references. resources: - name: subscriptions-subscriptionId-providers-Microsoft.IoTFirmwareDefense-workspaces path: /subscriptions/{subscriptionId}/providers/Microsoft.IoTFirmwareDefense/workspaces operations: - name: microsoftazureworkspaceslistbysubscription method: GET description: Microsoft Azure Get Subscriptions Subscriptionid Providers Microsoft Iotfirmwaredefense Workspaces outputRawFormat: json outputParameters: - name: result type: object value: $. - name: subscriptions-subscriptionId-resourceGroups-resourceGroupName-providers-Microsof path: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.IoTFirmwareDefense/workspaces operations: - name: microsoftazureworkspaceslistbyresourcegroup method: GET description: Microsoft Azure Get Subscriptions Subscriptionid Resourcegroups Resourcegroupname Providers Microsoft Iotfirmwaredefense Workspaces outputRawFormat: json outputParameters: - name: result type: object value: $. - name: subscriptions-subscriptionId-resourceGroups-resourceGroupName-providers-Microsof path: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.IoTFirmwareDefense/workspaces/{workspaceName} operations: - name: microsoftazureworkspacescreate method: PUT description: Microsoft Azure Put Subscriptions Subscriptionid Resourcegroups Resourcegroupname Providers Microsoft Iotfirmwaredefense Workspaces Workspacename outputRawFormat: json outputParameters: - name: result type: object value: $. - name: microsoftazureworkspacesupdate method: PATCH description: Microsoft Azure Patch Subscriptions Subscriptionid Resourcegroups Resourcegroupname Providers Microsoft Iotfirmwaredefense Workspaces Workspacename outputRawFormat: json outputParameters: - name: result type: object value: $. - name: microsoftazureworkspacesdelete method: DELETE description: Microsoft Azure Delete Subscriptions Subscriptionid Resourcegroups Resourcegroupname Providers Microsoft Iotfirmwaredefense Workspaces Workspacename outputRawFormat: json outputParameters: - name: result type: object value: $. - name: microsoftazureworkspacesget method: GET description: Microsoft Azure Get Subscriptions Subscriptionid Resourcegroups Resourcegroupname Providers Microsoft Iotfirmwaredefense Workspaces Workspacename outputRawFormat: json outputParameters: - name: result type: object value: $. - name: subscriptions-subscriptionId-resourceGroups-resourceGroupName-providers-Microsof path: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.IoTFirmwareDefense/workspaces/{workspaceName}/generateUploadUrl operations: - name: microsoftazureworkspacesgenerateuploadurl method: POST description: Microsoft Azure Post Subscriptions Subscriptionid Resourcegroups Resourcegroupname Providers Microsoft Iotfirmwaredefense Workspaces Workspacename Generateuploadurl outputRawFormat: json outputParameters: - name: result type: object value: $. exposes: - type: rest namespace: fist-workspaces-rest port: 8080 description: REST adapter for Microsoft Azure fist — Workspaces. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/subscriptions/{subscriptionid}/providers/microsoft-iotfirmwaredefense/workspaces name: subscriptions-subscriptionid-providers-microsoft-iotfirmwaredefense-workspaces description: REST surface for subscriptions-subscriptionId-providers-Microsoft.IoTFirmwareDefense-workspaces. operations: - method: GET name: microsoftazureworkspaceslistbysubscription description: Microsoft Azure Get Subscriptions Subscriptionid Providers Microsoft Iotfirmwaredefense Workspaces call: fist-workspaces.microsoftazureworkspaceslistbysubscription outputParameters: - type: object mapping: $. - path: /v1/subscriptions/{subscriptionid}/resourcegroups/{resourcegroupname}/providers/microsoft-iotfirmwaredefense/workspaces name: subscriptions-subscriptionid-resourcegroups-resourcegroupname-providers-microsof description: REST surface for subscriptions-subscriptionId-resourceGroups-resourceGroupName-providers-Microsof. operations: - method: GET name: microsoftazureworkspaceslistbyresourcegroup description: Microsoft Azure Get Subscriptions Subscriptionid Resourcegroups Resourcegroupname Providers Microsoft Iotfirmwaredefense Workspaces call: fist-workspaces.microsoftazureworkspaceslistbyresourcegroup outputParameters: - type: object mapping: $. - path: /v1/subscriptions/{subscriptionid}/resourcegroups/{resourcegroupname}/providers/microsoft-iotfirmwaredefense/workspaces/{workspacename} name: subscriptions-subscriptionid-resourcegroups-resourcegroupname-providers-microsof description: REST surface for subscriptions-subscriptionId-resourceGroups-resourceGroupName-providers-Microsof. operations: - method: PUT name: microsoftazureworkspacescreate description: Microsoft Azure Put Subscriptions Subscriptionid Resourcegroups Resourcegroupname Providers Microsoft Iotfirmwaredefense Workspaces Workspacename call: fist-workspaces.microsoftazureworkspacescreate outputParameters: - type: object mapping: $. - method: PATCH name: microsoftazureworkspacesupdate description: Microsoft Azure Patch Subscriptions Subscriptionid Resourcegroups Resourcegroupname Providers Microsoft Iotfirmwaredefense Workspaces Workspacename call: fist-workspaces.microsoftazureworkspacesupdate outputParameters: - type: object mapping: $. - method: DELETE name: microsoftazureworkspacesdelete description: Microsoft Azure Delete Subscriptions Subscriptionid Resourcegroups Resourcegroupname Providers Microsoft Iotfirmwaredefense Workspaces Workspacename call: fist-workspaces.microsoftazureworkspacesdelete outputParameters: - type: object mapping: $. - method: GET name: microsoftazureworkspacesget description: Microsoft Azure Get Subscriptions Subscriptionid Resourcegroups Resourcegroupname Providers Microsoft Iotfirmwaredefense Workspaces Workspacename call: fist-workspaces.microsoftazureworkspacesget outputParameters: - type: object mapping: $. - path: /v1/subscriptions/{subscriptionid}/resourcegroups/{resourcegroupname}/providers/microsoft-iotfirmwaredefense/workspaces/{workspacename}/generateuploadurl name: subscriptions-subscriptionid-resourcegroups-resourcegroupname-providers-microsof description: REST surface for subscriptions-subscriptionId-resourceGroups-resourceGroupName-providers-Microsof. operations: - method: POST name: microsoftazureworkspacesgenerateuploadurl description: Microsoft Azure Post Subscriptions Subscriptionid Resourcegroups Resourcegroupname Providers Microsoft Iotfirmwaredefense Workspaces Workspacename Generateuploadurl call: fist-workspaces.microsoftazureworkspacesgenerateuploadurl outputParameters: - type: object mapping: $. - type: mcp namespace: fist-workspaces-mcp port: 9090 transport: http description: MCP adapter for Microsoft Azure fist — Workspaces. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: microsoft-azure-get-subscriptions-subscriptionid description: Microsoft Azure Get Subscriptions Subscriptionid Providers Microsoft Iotfirmwaredefense Workspaces hints: readOnly: true destructive: false idempotent: true call: fist-workspaces.microsoftazureworkspaceslistbysubscription outputParameters: - type: object mapping: $. - name: microsoft-azure-get-subscriptions-subscriptionid-2 description: Microsoft Azure Get Subscriptions Subscriptionid Resourcegroups Resourcegroupname Providers Microsoft Iotfirmwaredefense Workspaces hints: readOnly: true destructive: false idempotent: true call: fist-workspaces.microsoftazureworkspaceslistbyresourcegroup outputParameters: - type: object mapping: $. - name: microsoft-azure-put-subscriptions-subscriptionid description: Microsoft Azure Put Subscriptions Subscriptionid Resourcegroups Resourcegroupname Providers Microsoft Iotfirmwaredefense Workspaces Workspacename hints: readOnly: false destructive: false idempotent: true call: fist-workspaces.microsoftazureworkspacescreate outputParameters: - type: object mapping: $. - name: microsoft-azure-patch-subscriptions-subscriptionid description: Microsoft Azure Patch Subscriptions Subscriptionid Resourcegroups Resourcegroupname Providers Microsoft Iotfirmwaredefense Workspaces Workspacename hints: readOnly: false destructive: false idempotent: true call: fist-workspaces.microsoftazureworkspacesupdate outputParameters: - type: object mapping: $. - name: microsoft-azure-delete-subscriptions-subscriptionid description: Microsoft Azure Delete Subscriptions Subscriptionid Resourcegroups Resourcegroupname Providers Microsoft Iotfirmwaredefense Workspaces Workspacename hints: readOnly: false destructive: true idempotent: true call: fist-workspaces.microsoftazureworkspacesdelete outputParameters: - type: object mapping: $. - name: microsoft-azure-get-subscriptions-subscriptionid-3 description: Microsoft Azure Get Subscriptions Subscriptionid Resourcegroups Resourcegroupname Providers Microsoft Iotfirmwaredefense Workspaces Workspacename hints: readOnly: true destructive: false idempotent: true call: fist-workspaces.microsoftazureworkspacesget outputParameters: - type: object mapping: $. - name: microsoft-azure-post-subscriptions-subscriptionid description: Microsoft Azure Post Subscriptions Subscriptionid Resourcegroups Resourcegroupname Providers Microsoft Iotfirmwaredefense Workspaces Workspacename Generateuploadurl hints: readOnly: false destructive: false idempotent: false call: fist-workspaces.microsoftazureworkspacesgenerateuploadurl outputParameters: - type: object mapping: $.