naftiko: 1.0.0-alpha2 info: label: Viam Vision Service — Classifications description: Run image classification against camera images. tags: [Viam, Vision, Classifications] 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: vision-classifications baseUri: '{{env.VIAM_MACHINE_ADDRESS}}' description: Viam VisionService. resources: - name: get-classifications-from-camera path: /viam.service.vision.v1.VisionService/GetClassificationsFromCamera operations: - { name: getClassificationsFromCamera, method: POST, description: Classify a camera frame., outputRawFormat: json, inputParameters: [{ name: body, in: body, type: object, required: true }] } - name: get-classifications path: /viam.service.vision.v1.VisionService/GetClassifications operations: - { name: getClassifications, method: POST, description: Classify a provided image., outputRawFormat: json, inputParameters: [{ name: body, in: body, type: object, required: true }] } - name: capture-all-from-camera path: /viam.service.vision.v1.VisionService/CaptureAllFromCamera operations: - { name: captureAllFromCamera, method: POST, description: One-shot vision capture., 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: vision-classifications-mcp port: 9090 transport: http description: MCP adapter for image classification. tools: - { name: viam-classify-from-camera, description: Classify camera frame., hints: { readOnly: true, destructive: false, idempotent: true }, call: vision-classifications.getClassificationsFromCamera, with: { body: tools.body } } - { name: viam-classify-image, description: Classify image., hints: { readOnly: true, destructive: false, idempotent: true }, call: vision-classifications.getClassifications, with: { body: tools.body } } - { name: viam-capture-all-from-camera, description: One-shot vision capture., hints: { readOnly: true, destructive: false, idempotent: true }, call: vision-classifications.captureAllFromCamera, with: { body: tools.body } }