Work with views and XR
Frame a desktop view
Section titled “Frame a desktop view”- Ask the assistant to read
get_xr_mode. - In desktop mode, choose a model from
list_loaded_models. - Request
set_camera_viewwithfront,back,left,right,top, orbottom. - Read
get_cameraand inspect the result.
These views follow the model’s local axes: +Z is front, +X is right, and +Y is top. They do not infer which part of a model is its semantic front.
Use frame_model to fit the model while preserving the current viewing direction. It starts an animated camera movement; an accepted request does not mean the camera has reached its final pose.
move_camera uses metre offsets relative to the current camera direction. rotate_camera changes the camera orientation or orbits its current focus. set_camera_fov accepts a vertical field of view from 15 to 90 degrees.
Use MCP during XR review
Section titled “Use MCP during XR review”- Read
get_xr_modeand confirm that XR is available. - If you want to enter XR, request
set_xr_modewithenabled: "true". - Wait until readback confirms the requested mode and no transition is pending.
- Use model, State, environment, and runtime UI tools as available during the review.
Desktop camera positioning tools are unavailable in XR. They do not reposition the headset user. Ask for a model State when you want an authored named view, and specify when the assistant should keep XR mode and model transforms unchanged.
To leave XR, request set_xr_mode with enabled: "false" and check the mode again before using desktop camera controls.
Show controls and capture the view
Section titled “Show controls and capture the view”Use list_windows to discover available runtime panels. show_window opens a panel; for example, window: "system" with section: "external-connections" opens the connection settings. Use list_ui_scrolls after opening a panel, then scroll_ui with a returned area ID.
Ask the assistant to call capture_screenshot when you want it to inspect the visible result. The capture includes the application UI; in XR it uses the desktop mirror.
save: "true"is the default. It saves a full-resolution PNG under{PersistentDataPath}/Screenshotsand returns an image preview with the saved path.save: "false"returns the preview without saving the full-resolution file.
The preview is compressed and can be smaller than the saved image. For animation, compare views over time; get_model_animation reads playback clocks but does not prove that motion is visibly correct.
