Viam · Capability

Viam Machine Management — Status

Inspect viam-server status, version, and cloud metadata on a device.

Viam Machine Management — Status is a Naftiko capability published by Viam, one of 27 capabilities the APIs.io network indexes for this provider. It bundles 4 operations.

The capability includes 2 read-only operations and 2 state-changing operations. Lead operation: Get machine status. Can be deployed as a REST endpoint, MCP tool, or Agent Skill via Naftiko.

Tagged areas include Viam, Machine, and Status.

Run with Naftiko ViamMachineStatus

MCP Tools

viam-get-machine-status

Get machine status.

read-only idempotent
viam-get-version

Get viam-server version.

read-only idempotent
viam-stop-all

Stop all components.

idempotent
viam-shutdown

Shutdown viam-server.

idempotent

Capability Spec

machine-status.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Viam Machine Management — Status
  description: Inspect viam-server status, version, and cloud metadata on a device.
  tags: [Viam, Machine, Status]
  created: '2026-05-25'
  modified: '2026-05-25'
binds:
- namespace: env
  keys:
    VIAM_API_KEY: VIAM_API_KEY
    VIAM_MACHINE_ADDRESS: VIAM_MACHINE_ADDRESS
capability:
  consumes:
  - type: http
    namespace: machine-status
    baseUri: '{{env.VIAM_MACHINE_ADDRESS}}'
    description: Viam RobotService — status operations against a viam-server endpoint.
    resources:
    - name: get-machine-status
      path: /viam.robot.v1.RobotService/GetMachineStatus
      operations:
      - { name: getMachineStatus, method: POST, description: Retrieve machine status., outputRawFormat: json, inputParameters: [{ name: body, in: body, type: object, required: true }] }
    - name: get-version
      path: /viam.robot.v1.RobotService/GetVersion
      operations:
      - { name: getVersion, method: POST, description: Retrieve viam-server version., outputRawFormat: json, inputParameters: [{ name: body, in: body, type: object, required: true }] }
    - name: get-cloud-metadata
      path: /viam.robot.v1.RobotService/GetCloudMetadata
      operations:
      - { name: getCloudMetadata, method: POST, description: Retrieve cloud registration metadata., outputRawFormat: json, inputParameters: [{ name: body, in: body, type: object, required: true }] }
    - name: stop-all
      path: /viam.robot.v1.RobotService/StopAll
      operations:
      - { name: stopAll, method: POST, description: Stop all components on the machine., outputRawFormat: json, inputParameters: [{ name: body, in: body, type: object, required: true }] }
    - name: shutdown
      path: /viam.robot.v1.RobotService/Shutdown
      operations:
      - { name: shutdown, method: POST, description: Shut down viam-server., outputRawFormat: json, inputParameters: [{ name: body, in: body, type: object, required: true }] }
    authentication:
      type: apikey
      key: key
      value: '{{env.VIAM_API_KEY}}'
      placement: header
  exposes:
  - type: mcp
    namespace: machine-status-mcp
    port: 9090
    transport: http
    description: MCP adapter for viam-server status.
    tools:
    - { name: viam-get-machine-status, description: Get machine status., hints: { readOnly: true, destructive: false, idempotent: true }, call: machine-status.getMachineStatus, with: { body: tools.body } }
    - { name: viam-get-version, description: Get viam-server version., hints: { readOnly: true, destructive: false, idempotent: true }, call: machine-status.getVersion, with: { body: tools.body } }
    - { name: viam-stop-all, description: Stop all components., hints: { readOnly: false, destructive: true, idempotent: true }, call: machine-status.stopAll, with: { body: tools.body } }
    - { name: viam-shutdown, description: Shutdown viam-server., hints: { readOnly: false, destructive: true, idempotent: true }, call: machine-status.shutdown, with: { body: tools.body } }