naftiko: 1.0.0-alpha2 info: label: VMware vSphere Automation REST API — VM Power description: 'VMware vSphere Automation REST API — VM Power. 5 operations. Lead operation: Vmware Get Vm Power State. Self-contained Naftiko capability covering one Vmware business surface.' tags: - Vmware - VM Power created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: VMWARE_API_KEY: VMWARE_API_KEY capability: consumes: - type: http namespace: vsphere-vm-power baseUri: https://{vcenter}/api description: VMware vSphere Automation REST API — VM Power business capability. Self-contained, no shared references. resources: - name: vcenter-vm-vm-power path: /vcenter/vm/{vm}/power operations: - name: getvmpowerstate method: GET description: Vmware Get Vm Power State outputRawFormat: json outputParameters: - name: result type: object value: $. - name: vcenter-vm-vm-power?action=reset path: /vcenter/vm/{vm}/power?action=reset operations: - name: resetvm method: POST description: Vmware Reset a Virtual Machine outputRawFormat: json outputParameters: - name: result type: object value: $. - name: vcenter-vm-vm-power?action=start path: /vcenter/vm/{vm}/power?action=start operations: - name: poweronvm method: POST description: Vmware Power on a Virtual Machine outputRawFormat: json outputParameters: - name: result type: object value: $. - name: vcenter-vm-vm-power?action=stop path: /vcenter/vm/{vm}/power?action=stop operations: - name: poweroffvm method: POST description: Vmware Power Off a Virtual Machine outputRawFormat: json outputParameters: - name: result type: object value: $. - name: vcenter-vm-vm-power?action=suspend path: /vcenter/vm/{vm}/power?action=suspend operations: - name: suspendvm method: POST description: Vmware Suspend a Virtual Machine outputRawFormat: json outputParameters: - name: result type: object value: $. authentication: type: apikey key: vmware-api-session-id value: '{{env.VMWARE_API_KEY}}' placement: header exposes: - type: rest namespace: vsphere-vm-power-rest port: 8080 description: REST adapter for VMware vSphere Automation REST API — VM Power. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/vcenter/vm/{vm}/power name: vcenter-vm-vm-power description: REST surface for vcenter-vm-vm-power. operations: - method: GET name: getvmpowerstate description: Vmware Get Vm Power State call: vsphere-vm-power.getvmpowerstate outputParameters: - type: object mapping: $. - path: /v1/vcenter/vm/{vm}/power-action-reset name: vcenter-vm-vm-power-action-reset description: REST surface for vcenter-vm-vm-power?action=reset. operations: - method: POST name: resetvm description: Vmware Reset a Virtual Machine call: vsphere-vm-power.resetvm outputParameters: - type: object mapping: $. - path: /v1/vcenter/vm/{vm}/power-action-start name: vcenter-vm-vm-power-action-start description: REST surface for vcenter-vm-vm-power?action=start. operations: - method: POST name: poweronvm description: Vmware Power on a Virtual Machine call: vsphere-vm-power.poweronvm outputParameters: - type: object mapping: $. - path: /v1/vcenter/vm/{vm}/power-action-stop name: vcenter-vm-vm-power-action-stop description: REST surface for vcenter-vm-vm-power?action=stop. operations: - method: POST name: poweroffvm description: Vmware Power Off a Virtual Machine call: vsphere-vm-power.poweroffvm outputParameters: - type: object mapping: $. - path: /v1/vcenter/vm/{vm}/power-action-suspend name: vcenter-vm-vm-power-action-suspend description: REST surface for vcenter-vm-vm-power?action=suspend. operations: - method: POST name: suspendvm description: Vmware Suspend a Virtual Machine call: vsphere-vm-power.suspendvm outputParameters: - type: object mapping: $. - type: mcp namespace: vsphere-vm-power-mcp port: 9090 transport: http description: MCP adapter for VMware vSphere Automation REST API — VM Power. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: vmware-get-vm-power-state description: Vmware Get Vm Power State hints: readOnly: true destructive: false idempotent: true call: vsphere-vm-power.getvmpowerstate outputParameters: - type: object mapping: $. - name: vmware-reset-virtual-machine description: Vmware Reset a Virtual Machine hints: readOnly: false destructive: false idempotent: false call: vsphere-vm-power.resetvm outputParameters: - type: object mapping: $. - name: vmware-power-virtual-machine description: Vmware Power on a Virtual Machine hints: readOnly: false destructive: false idempotent: false call: vsphere-vm-power.poweronvm outputParameters: - type: object mapping: $. - name: vmware-power-off-virtual-machine description: Vmware Power Off a Virtual Machine hints: readOnly: false destructive: false idempotent: false call: vsphere-vm-power.poweroffvm outputParameters: - type: object mapping: $. - name: vmware-suspend-virtual-machine description: Vmware Suspend a Virtual Machine hints: readOnly: false destructive: false idempotent: false call: vsphere-vm-power.suspendvm outputParameters: - type: object mapping: $.