VMware · Capability

VMware vSphere Automation REST API — VM Hardware

VMware vSphere Automation REST API — VM Hardware. 10 operations. Lead operation: Vmware Get Vm Hardware Configuration. Self-contained Naftiko capability covering one Vmware business surface.

Run with Naftiko VmwareVM Hardware

What You Can Do

GET
Getvmhardware — Vmware Get Vm Hardware Configuration
/v1/vcenter/vm/{vm}/hardware
PATCH
Updatevmhardware — Vmware Update Vm Hardware Configuration
/v1/vcenter/vm/{vm}/hardware
GET
Getvmcpu — Vmware Get Vm Cpu Configuration
/v1/vcenter/vm/{vm}/hardware/cpu
PATCH
Updatevmcpu — Vmware Update Vm Cpu Configuration
/v1/vcenter/vm/{vm}/hardware/cpu
GET
Listvmdisks — Vmware List Vm Virtual Disks
/v1/vcenter/vm/{vm}/hardware/disk
POST
Createvmdisk — Vmware Add a Virtual Disk to a Vm
/v1/vcenter/vm/{vm}/hardware/disk
GET
Listvmethernet — Vmware List Vm Network Adapters
/v1/vcenter/vm/{vm}/hardware/ethernet
POST
Createvmethernet — Vmware Add a Network Adapter to a Vm
/v1/vcenter/vm/{vm}/hardware/ethernet
GET
Getvmmemory — Vmware Get Vm Memory Configuration
/v1/vcenter/vm/{vm}/hardware/memory
PATCH
Updatevmmemory — Vmware Update Vm Memory Configuration
/v1/vcenter/vm/{vm}/hardware/memory

MCP Tools

vmware-get-vm-hardware-configuration

Vmware Get Vm Hardware Configuration

read-only idempotent
vmware-update-vm-hardware-configuration

Vmware Update Vm Hardware Configuration

idempotent
vmware-get-vm-cpu-configuration

Vmware Get Vm Cpu Configuration

read-only idempotent
vmware-update-vm-cpu-configuration

Vmware Update Vm Cpu Configuration

idempotent
vmware-list-vm-virtual-disks

Vmware List Vm Virtual Disks

read-only idempotent
vmware-add-virtual-disk-vm

Vmware Add a Virtual Disk to a Vm

vmware-list-vm-network-adapters

Vmware List Vm Network Adapters

read-only idempotent
vmware-add-network-adapter-vm

Vmware Add a Network Adapter to a Vm

vmware-get-vm-memory-configuration

Vmware Get Vm Memory Configuration

read-only idempotent
vmware-update-vm-memory-configuration

Vmware Update Vm Memory Configuration

idempotent

Capability Spec

vsphere-vm-hardware.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: VMware vSphere Automation REST API — VM Hardware
  description: 'VMware vSphere Automation REST API — VM Hardware. 10 operations. Lead operation: Vmware Get Vm Hardware Configuration.
    Self-contained Naftiko capability covering one Vmware business surface.'
  tags:
  - Vmware
  - VM Hardware
  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-hardware
    baseUri: https://{vcenter}/api
    description: VMware vSphere Automation REST API — VM Hardware business capability. Self-contained, no shared references.
    resources:
    - name: vcenter-vm-vm-hardware
      path: /vcenter/vm/{vm}/hardware
      operations:
      - name: getvmhardware
        method: GET
        description: Vmware Get Vm Hardware Configuration
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: updatevmhardware
        method: PATCH
        description: Vmware Update Vm Hardware Configuration
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: vcenter-vm-vm-hardware-cpu
      path: /vcenter/vm/{vm}/hardware/cpu
      operations:
      - name: getvmcpu
        method: GET
        description: Vmware Get Vm Cpu Configuration
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: updatevmcpu
        method: PATCH
        description: Vmware Update Vm Cpu Configuration
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: vcenter-vm-vm-hardware-disk
      path: /vcenter/vm/{vm}/hardware/disk
      operations:
      - name: listvmdisks
        method: GET
        description: Vmware List Vm Virtual Disks
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: createvmdisk
        method: POST
        description: Vmware Add a Virtual Disk to a Vm
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: vcenter-vm-vm-hardware-ethernet
      path: /vcenter/vm/{vm}/hardware/ethernet
      operations:
      - name: listvmethernet
        method: GET
        description: Vmware List Vm Network Adapters
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: createvmethernet
        method: POST
        description: Vmware Add a Network Adapter to a Vm
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: vcenter-vm-vm-hardware-memory
      path: /vcenter/vm/{vm}/hardware/memory
      operations:
      - name: getvmmemory
        method: GET
        description: Vmware Get Vm Memory Configuration
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: updatevmmemory
        method: PATCH
        description: Vmware Update Vm Memory Configuration
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    authentication:
      type: apikey
      key: vmware-api-session-id
      value: '{{env.VMWARE_API_KEY}}'
      placement: header
  exposes:
  - type: rest
    namespace: vsphere-vm-hardware-rest
    port: 8080
    description: REST adapter for VMware vSphere Automation REST API — VM Hardware. One Spectral-compliant resource per consumed
      operation, prefixed with /v1.
    resources:
    - path: /v1/vcenter/vm/{vm}/hardware
      name: vcenter-vm-vm-hardware
      description: REST surface for vcenter-vm-vm-hardware.
      operations:
      - method: GET
        name: getvmhardware
        description: Vmware Get Vm Hardware Configuration
        call: vsphere-vm-hardware.getvmhardware
        outputParameters:
        - type: object
          mapping: $.
      - method: PATCH
        name: updatevmhardware
        description: Vmware Update Vm Hardware Configuration
        call: vsphere-vm-hardware.updatevmhardware
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/vcenter/vm/{vm}/hardware/cpu
      name: vcenter-vm-vm-hardware-cpu
      description: REST surface for vcenter-vm-vm-hardware-cpu.
      operations:
      - method: GET
        name: getvmcpu
        description: Vmware Get Vm Cpu Configuration
        call: vsphere-vm-hardware.getvmcpu
        outputParameters:
        - type: object
          mapping: $.
      - method: PATCH
        name: updatevmcpu
        description: Vmware Update Vm Cpu Configuration
        call: vsphere-vm-hardware.updatevmcpu
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/vcenter/vm/{vm}/hardware/disk
      name: vcenter-vm-vm-hardware-disk
      description: REST surface for vcenter-vm-vm-hardware-disk.
      operations:
      - method: GET
        name: listvmdisks
        description: Vmware List Vm Virtual Disks
        call: vsphere-vm-hardware.listvmdisks
        outputParameters:
        - type: object
          mapping: $.
      - method: POST
        name: createvmdisk
        description: Vmware Add a Virtual Disk to a Vm
        call: vsphere-vm-hardware.createvmdisk
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/vcenter/vm/{vm}/hardware/ethernet
      name: vcenter-vm-vm-hardware-ethernet
      description: REST surface for vcenter-vm-vm-hardware-ethernet.
      operations:
      - method: GET
        name: listvmethernet
        description: Vmware List Vm Network Adapters
        call: vsphere-vm-hardware.listvmethernet
        outputParameters:
        - type: object
          mapping: $.
      - method: POST
        name: createvmethernet
        description: Vmware Add a Network Adapter to a Vm
        call: vsphere-vm-hardware.createvmethernet
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/vcenter/vm/{vm}/hardware/memory
      name: vcenter-vm-vm-hardware-memory
      description: REST surface for vcenter-vm-vm-hardware-memory.
      operations:
      - method: GET
        name: getvmmemory
        description: Vmware Get Vm Memory Configuration
        call: vsphere-vm-hardware.getvmmemory
        outputParameters:
        - type: object
          mapping: $.
      - method: PATCH
        name: updatevmmemory
        description: Vmware Update Vm Memory Configuration
        call: vsphere-vm-hardware.updatevmmemory
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: vsphere-vm-hardware-mcp
    port: 9090
    transport: http
    description: MCP adapter for VMware vSphere Automation REST API — VM Hardware. One tool per consumed operation, routed
      inline through this capability's consumes block.
    tools:
    - name: vmware-get-vm-hardware-configuration
      description: Vmware Get Vm Hardware Configuration
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: vsphere-vm-hardware.getvmhardware
      outputParameters:
      - type: object
        mapping: $.
    - name: vmware-update-vm-hardware-configuration
      description: Vmware Update Vm Hardware Configuration
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: vsphere-vm-hardware.updatevmhardware
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: vmware-get-vm-cpu-configuration
      description: Vmware Get Vm Cpu Configuration
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: vsphere-vm-hardware.getvmcpu
      outputParameters:
      - type: object
        mapping: $.
    - name: vmware-update-vm-cpu-configuration
      description: Vmware Update Vm Cpu Configuration
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: vsphere-vm-hardware.updatevmcpu
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: vmware-list-vm-virtual-disks
      description: Vmware List Vm Virtual Disks
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: vsphere-vm-hardware.listvmdisks
      outputParameters:
      - type: object
        mapping: $.
    - name: vmware-add-virtual-disk-vm
      description: Vmware Add a Virtual Disk to a Vm
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: vsphere-vm-hardware.createvmdisk
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: vmware-list-vm-network-adapters
      description: Vmware List Vm Network Adapters
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: vsphere-vm-hardware.listvmethernet
      outputParameters:
      - type: object
        mapping: $.
    - name: vmware-add-network-adapter-vm
      description: Vmware Add a Network Adapter to a Vm
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: vsphere-vm-hardware.createvmethernet
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: vmware-get-vm-memory-configuration
      description: Vmware Get Vm Memory Configuration
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: vsphere-vm-hardware.getvmmemory
      outputParameters:
      - type: object
        mapping: $.
    - name: vmware-update-vm-memory-configuration
      description: Vmware Update Vm Memory Configuration
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: vsphere-vm-hardware.updatevmmemory
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.