naftiko: 1.0.0-alpha2 info: label: Microsoft Azure SCVMM — VirtualMachines description: 'Microsoft Azure SCVMM — VirtualMachines. 12 operations. Lead operation: Microsoft Azure Implements Get Virtualmachines In A Subscription. Self-contained Naftiko capability covering one Microsoft Azure business surface.' tags: - Microsoft Azure - VirtualMachines 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: scvmm-virtualmachines baseUri: https://management.azure.com description: Microsoft Azure SCVMM — VirtualMachines business capability. Self-contained, no shared references. resources: - name: subscriptions-subscriptionId-providers-Microsoft.ScVmm-virtualMachines path: /subscriptions/{subscriptionId}/providers/Microsoft.ScVmm/virtualMachines operations: - name: microsoftazurevirtualmachineslistbysubscription method: GET description: Microsoft Azure Implements Get Virtualmachines In A Subscription outputRawFormat: json outputParameters: - name: result type: object value: $. - name: subscriptions-subscriptionId-resourceGroups-resourceGroupName-providers-Microsof path: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ScVmm/virtualMachines operations: - name: microsoftazurevirtualmachineslistbyresourcegroup method: GET description: Microsoft Azure Implements Get Virtualmachines In A Resource Group outputRawFormat: json outputParameters: - name: result type: object value: $. - name: subscriptions-subscriptionId-resourceGroups-resourceGroupName-providers-Microsof path: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ScVmm/virtualMachines/{virtualMachineName} operations: - name: microsoftazurevirtualmachinesget method: GET description: Microsoft Azure Gets A Virtualmachine outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: virtualMachineName in: path type: string description: Name of the VirtualMachine. required: true - name: microsoftazurevirtualmachinescreateorupdate method: PUT description: Microsoft Azure Implements Virtualmachines Put Method outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: virtualMachineName in: path type: string description: Name of the VirtualMachine. required: true - name: body in: body type: string description: Request payload. required: true - name: microsoftazurevirtualmachinesdelete method: DELETE description: Microsoft Azure Implements Virtualmachine Delete Method outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: virtualMachineName in: path type: string description: Name of the VirtualMachine. required: true - name: retain in: query type: boolean description: Whether to just disable the VM from azure and retain the VM in the VMM. - name: force in: query type: boolean description: Forces the resource to be deleted from azure. The corresponding CR would be attempted to be deleted too. - name: deleteFromHost in: query type: boolean description: Whether to disable the VM from azure and also delete it from VMM. - name: microsoftazurevirtualmachinesupdate method: PATCH description: Microsoft Azure Implements The Virtualmachines Patch Method outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: virtualMachineName in: path type: string description: Name of the VirtualMachine. required: true - name: body in: body type: string description: VirtualMachines patch payload. required: true - name: subscriptions-subscriptionId-resourceGroups-resourceGroupName-providers-Microsof path: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ScVmm/virtualMachines/{virtualMachineName}/createCheckpoint operations: - name: microsoftazurevirtualmachinescreatecheckpoint method: POST description: Microsoft Azure Implements The Operation To Creates A Checkpoint In A Virtual Machine outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: virtualMachineName in: path type: string description: Name of the VirtualMachine. required: true - name: body in: body type: string description: Virtualmachine create checkpoint action payload. - name: subscriptions-subscriptionId-resourceGroups-resourceGroupName-providers-Microsof path: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ScVmm/virtualMachines/{virtualMachineName}/deleteCheckpoint operations: - name: microsoftazurevirtualmachinesdeletecheckpoint method: POST description: Microsoft Azure Implements The Operation To Delete A Checkpoint In A Virtual Machine outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: virtualMachineName in: path type: string description: Name of the VirtualMachine. required: true - name: body in: body type: string description: Virtualmachine delete checkpoint action payload. - name: subscriptions-subscriptionId-resourceGroups-resourceGroupName-providers-Microsof path: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ScVmm/virtualMachines/{virtualMachineName}/restart operations: - name: microsoftazurevirtualmachinesrestart method: POST description: Microsoft Azure Implements The Operation To Restart A Virtual Machine outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: virtualMachineName in: path type: string description: Name of the VirtualMachine. required: true - name: subscriptions-subscriptionId-resourceGroups-resourceGroupName-providers-Microsof path: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ScVmm/virtualMachines/{virtualMachineName}/restoreCheckpoint operations: - name: microsoftazurevirtualmachinesrestorecheckpoint method: POST description: Microsoft Azure Implements The Operation To Restores To A Checkpoint In A Virtual Machine outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: virtualMachineName in: path type: string description: Name of the VirtualMachine. required: true - name: body in: body type: string description: Virtualmachine restore checkpoint action payload. - name: subscriptions-subscriptionId-resourceGroups-resourceGroupName-providers-Microsof path: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ScVmm/virtualMachines/{virtualMachineName}/start operations: - name: microsoftazurevirtualmachinesstart method: POST description: Microsoft Azure Implements The Operation To Start A Virtual Machine outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: virtualMachineName in: path type: string description: Name of the VirtualMachine. required: true - name: subscriptions-subscriptionId-resourceGroups-resourceGroupName-providers-Microsof path: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ScVmm/virtualMachines/{virtualMachineName}/stop operations: - name: microsoftazurevirtualmachinesstop method: POST description: Microsoft Azure Implements The Operation To Stop A Virtual Machine outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: virtualMachineName in: path type: string description: Name of the VirtualMachine. required: true - name: body in: body type: string description: Virtualmachine stop action payload. exposes: - type: rest namespace: scvmm-virtualmachines-rest port: 8080 description: REST adapter for Microsoft Azure SCVMM — VirtualMachines. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/subscriptions/{subscriptionid}/providers/microsoft-scvmm/virtualmachines name: subscriptions-subscriptionid-providers-microsoft-scvmm-virtualmachines description: REST surface for subscriptions-subscriptionId-providers-Microsoft.ScVmm-virtualMachines. operations: - method: GET name: microsoftazurevirtualmachineslistbysubscription description: Microsoft Azure Implements Get Virtualmachines In A Subscription call: scvmm-virtualmachines.microsoftazurevirtualmachineslistbysubscription outputParameters: - type: object mapping: $. - path: /v1/subscriptions/{subscriptionid}/resourcegroups/{resourcegroupname}/providers/microsoft-scvmm/virtualmachines name: subscriptions-subscriptionid-resourcegroups-resourcegroupname-providers-microsof description: REST surface for subscriptions-subscriptionId-resourceGroups-resourceGroupName-providers-Microsof. operations: - method: GET name: microsoftazurevirtualmachineslistbyresourcegroup description: Microsoft Azure Implements Get Virtualmachines In A Resource Group call: scvmm-virtualmachines.microsoftazurevirtualmachineslistbyresourcegroup outputParameters: - type: object mapping: $. - path: /v1/subscriptions/{subscriptionid}/resourcegroups/{resourcegroupname}/providers/microsoft-scvmm/virtualmachines/{virtualmachinename} name: subscriptions-subscriptionid-resourcegroups-resourcegroupname-providers-microsof description: REST surface for subscriptions-subscriptionId-resourceGroups-resourceGroupName-providers-Microsof. operations: - method: GET name: microsoftazurevirtualmachinesget description: Microsoft Azure Gets A Virtualmachine call: scvmm-virtualmachines.microsoftazurevirtualmachinesget with: virtualMachineName: rest.virtualMachineName outputParameters: - type: object mapping: $. - method: PUT name: microsoftazurevirtualmachinescreateorupdate description: Microsoft Azure Implements Virtualmachines Put Method call: scvmm-virtualmachines.microsoftazurevirtualmachinescreateorupdate with: virtualMachineName: rest.virtualMachineName body: rest.body outputParameters: - type: object mapping: $. - method: DELETE name: microsoftazurevirtualmachinesdelete description: Microsoft Azure Implements Virtualmachine Delete Method call: scvmm-virtualmachines.microsoftazurevirtualmachinesdelete with: virtualMachineName: rest.virtualMachineName retain: rest.retain force: rest.force deleteFromHost: rest.deleteFromHost outputParameters: - type: object mapping: $. - method: PATCH name: microsoftazurevirtualmachinesupdate description: Microsoft Azure Implements The Virtualmachines Patch Method call: scvmm-virtualmachines.microsoftazurevirtualmachinesupdate with: virtualMachineName: rest.virtualMachineName body: rest.body outputParameters: - type: object mapping: $. - path: /v1/subscriptions/{subscriptionid}/resourcegroups/{resourcegroupname}/providers/microsoft-scvmm/virtualmachines/{virtualmachinename}/createcheckpoint name: subscriptions-subscriptionid-resourcegroups-resourcegroupname-providers-microsof description: REST surface for subscriptions-subscriptionId-resourceGroups-resourceGroupName-providers-Microsof. operations: - method: POST name: microsoftazurevirtualmachinescreatecheckpoint description: Microsoft Azure Implements The Operation To Creates A Checkpoint In A Virtual Machine call: scvmm-virtualmachines.microsoftazurevirtualmachinescreatecheckpoint with: virtualMachineName: rest.virtualMachineName body: rest.body outputParameters: - type: object mapping: $. - path: /v1/subscriptions/{subscriptionid}/resourcegroups/{resourcegroupname}/providers/microsoft-scvmm/virtualmachines/{virtualmachinename}/deletecheckpoint name: subscriptions-subscriptionid-resourcegroups-resourcegroupname-providers-microsof description: REST surface for subscriptions-subscriptionId-resourceGroups-resourceGroupName-providers-Microsof. operations: - method: POST name: microsoftazurevirtualmachinesdeletecheckpoint description: Microsoft Azure Implements The Operation To Delete A Checkpoint In A Virtual Machine call: scvmm-virtualmachines.microsoftazurevirtualmachinesdeletecheckpoint with: virtualMachineName: rest.virtualMachineName body: rest.body outputParameters: - type: object mapping: $. - path: /v1/subscriptions/{subscriptionid}/resourcegroups/{resourcegroupname}/providers/microsoft-scvmm/virtualmachines/{virtualmachinename}/restart name: subscriptions-subscriptionid-resourcegroups-resourcegroupname-providers-microsof description: REST surface for subscriptions-subscriptionId-resourceGroups-resourceGroupName-providers-Microsof. operations: - method: POST name: microsoftazurevirtualmachinesrestart description: Microsoft Azure Implements The Operation To Restart A Virtual Machine call: scvmm-virtualmachines.microsoftazurevirtualmachinesrestart with: virtualMachineName: rest.virtualMachineName outputParameters: - type: object mapping: $. - path: /v1/subscriptions/{subscriptionid}/resourcegroups/{resourcegroupname}/providers/microsoft-scvmm/virtualmachines/{virtualmachinename}/restorecheckpoint name: subscriptions-subscriptionid-resourcegroups-resourcegroupname-providers-microsof description: REST surface for subscriptions-subscriptionId-resourceGroups-resourceGroupName-providers-Microsof. operations: - method: POST name: microsoftazurevirtualmachinesrestorecheckpoint description: Microsoft Azure Implements The Operation To Restores To A Checkpoint In A Virtual Machine call: scvmm-virtualmachines.microsoftazurevirtualmachinesrestorecheckpoint with: virtualMachineName: rest.virtualMachineName body: rest.body outputParameters: - type: object mapping: $. - path: /v1/subscriptions/{subscriptionid}/resourcegroups/{resourcegroupname}/providers/microsoft-scvmm/virtualmachines/{virtualmachinename}/start name: subscriptions-subscriptionid-resourcegroups-resourcegroupname-providers-microsof description: REST surface for subscriptions-subscriptionId-resourceGroups-resourceGroupName-providers-Microsof. operations: - method: POST name: microsoftazurevirtualmachinesstart description: Microsoft Azure Implements The Operation To Start A Virtual Machine call: scvmm-virtualmachines.microsoftazurevirtualmachinesstart with: virtualMachineName: rest.virtualMachineName outputParameters: - type: object mapping: $. - path: /v1/subscriptions/{subscriptionid}/resourcegroups/{resourcegroupname}/providers/microsoft-scvmm/virtualmachines/{virtualmachinename}/stop name: subscriptions-subscriptionid-resourcegroups-resourcegroupname-providers-microsof description: REST surface for subscriptions-subscriptionId-resourceGroups-resourceGroupName-providers-Microsof. operations: - method: POST name: microsoftazurevirtualmachinesstop description: Microsoft Azure Implements The Operation To Stop A Virtual Machine call: scvmm-virtualmachines.microsoftazurevirtualmachinesstop with: virtualMachineName: rest.virtualMachineName body: rest.body outputParameters: - type: object mapping: $. - type: mcp namespace: scvmm-virtualmachines-mcp port: 9090 transport: http description: MCP adapter for Microsoft Azure SCVMM — VirtualMachines. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: microsoft-azure-implements-get-virtualmachines description: Microsoft Azure Implements Get Virtualmachines In A Subscription hints: readOnly: true destructive: false idempotent: true call: scvmm-virtualmachines.microsoftazurevirtualmachineslistbysubscription outputParameters: - type: object mapping: $. - name: microsoft-azure-implements-get-virtualmachines-2 description: Microsoft Azure Implements Get Virtualmachines In A Resource Group hints: readOnly: true destructive: false idempotent: true call: scvmm-virtualmachines.microsoftazurevirtualmachineslistbyresourcegroup outputParameters: - type: object mapping: $. - name: microsoft-azure-gets-virtualmachine description: Microsoft Azure Gets A Virtualmachine hints: readOnly: true destructive: false idempotent: true call: scvmm-virtualmachines.microsoftazurevirtualmachinesget with: virtualMachineName: tools.virtualMachineName outputParameters: - type: object mapping: $. - name: microsoft-azure-implements-virtualmachines-put description: Microsoft Azure Implements Virtualmachines Put Method hints: readOnly: false destructive: false idempotent: true call: scvmm-virtualmachines.microsoftazurevirtualmachinescreateorupdate with: virtualMachineName: tools.virtualMachineName body: tools.body outputParameters: - type: object mapping: $. - name: microsoft-azure-implements-virtualmachine-delete description: Microsoft Azure Implements Virtualmachine Delete Method hints: readOnly: false destructive: true idempotent: true call: scvmm-virtualmachines.microsoftazurevirtualmachinesdelete with: virtualMachineName: tools.virtualMachineName retain: tools.retain force: tools.force deleteFromHost: tools.deleteFromHost outputParameters: - type: object mapping: $. - name: microsoft-azure-implements-virtualmachines-patch description: Microsoft Azure Implements The Virtualmachines Patch Method hints: readOnly: false destructive: false idempotent: true call: scvmm-virtualmachines.microsoftazurevirtualmachinesupdate with: virtualMachineName: tools.virtualMachineName body: tools.body outputParameters: - type: object mapping: $. - name: microsoft-azure-implements-operation-creates description: Microsoft Azure Implements The Operation To Creates A Checkpoint In A Virtual Machine hints: readOnly: false destructive: false idempotent: false call: scvmm-virtualmachines.microsoftazurevirtualmachinescreatecheckpoint with: virtualMachineName: tools.virtualMachineName body: tools.body outputParameters: - type: object mapping: $. - name: microsoft-azure-implements-operation-delete description: Microsoft Azure Implements The Operation To Delete A Checkpoint In A Virtual Machine hints: readOnly: false destructive: false idempotent: false call: scvmm-virtualmachines.microsoftazurevirtualmachinesdeletecheckpoint with: virtualMachineName: tools.virtualMachineName body: tools.body outputParameters: - type: object mapping: $. - name: microsoft-azure-implements-operation-restart description: Microsoft Azure Implements The Operation To Restart A Virtual Machine hints: readOnly: false destructive: false idempotent: false call: scvmm-virtualmachines.microsoftazurevirtualmachinesrestart with: virtualMachineName: tools.virtualMachineName outputParameters: - type: object mapping: $. - name: microsoft-azure-implements-operation-restores description: Microsoft Azure Implements The Operation To Restores To A Checkpoint In A Virtual Machine hints: readOnly: false destructive: false idempotent: false call: scvmm-virtualmachines.microsoftazurevirtualmachinesrestorecheckpoint with: virtualMachineName: tools.virtualMachineName body: tools.body outputParameters: - type: object mapping: $. - name: microsoft-azure-implements-operation-start description: Microsoft Azure Implements The Operation To Start A Virtual Machine hints: readOnly: false destructive: false idempotent: false call: scvmm-virtualmachines.microsoftazurevirtualmachinesstart with: virtualMachineName: tools.virtualMachineName outputParameters: - type: object mapping: $. - name: microsoft-azure-implements-operation-stop description: Microsoft Azure Implements The Operation To Stop A Virtual Machine hints: readOnly: false destructive: false idempotent: false call: scvmm-virtualmachines.microsoftazurevirtualmachinesstop with: virtualMachineName: tools.virtualMachineName body: tools.body outputParameters: - type: object mapping: $.