Skip to content

viewport

viewport

MCP tool definitions for Houdini viewport and UI operations.

Provides tools for inspecting and controlling Houdini's viewport panes, display modes, camera assignment, screenshot capture, network editor navigation, and error node discovery.

Functions:

Name Description
capture_network_editor

Capture a screenshot of the network editor.

capture_screenshot

Capture a screenshot of the viewport or a specific pane tab.

find_error_nodes

Find all nodes with errors or warnings in the scene.

frame_all

Frame all geometry in the viewport.

frame_selection

Frame the current selection in the viewport.

get_viewport_info

Get viewport settings for a pane tab.

list_panes

List all visible pane tabs in the Houdini UI.

set_current_network

Navigate the network editor to a specific network path.

set_viewport_camera

Set the viewport to look through a specific camera.

set_viewport_direction

Set the viewport to a standard viewing direction.

set_viewport_display

Set the viewport shading mode.

set_viewport_renderer

Set the viewport's Hydra rendering delegate for live preview.

Functions

capture_network_editor async

capture_network_editor(
    ctx: Context, output_path: str, node_path: str | None = None
) -> list[TextContent | ImageContent]

Capture a screenshot of the network editor.

Parameters:

Name Type Description Default
output_path
str

Image file path.

required
node_path
str | None

Node path to navigate to before capture.

None

capture_screenshot async

capture_screenshot(
    ctx: Context, output_path: str, pane_name: str | None = None
) -> list[TextContent | ImageContent]

Capture a screenshot of the viewport or a specific pane tab.

Parameters:

Name Type Description Default
output_path
str

Image file path.

required
pane_name
str | None

Pane tab name.

None

find_error_nodes async

find_error_nodes(ctx: Context, root_path: str = '/') -> dict

Find all nodes with errors or warnings in the scene.

Parameters:

Name Type Description Default
root_path
str

Root node path to search from.

'/'

frame_all async

frame_all(ctx: Context, pane_name: str | None = None) -> dict

Frame all geometry in the viewport.

Parameters:

Name Type Description Default
pane_name
str | None

Pane tab name.

None

frame_selection async

frame_selection(ctx: Context, pane_name: str | None = None) -> dict

Frame the current selection in the viewport.

Parameters:

Name Type Description Default
pane_name
str | None

Pane tab name.

None

get_viewport_info async

get_viewport_info(ctx: Context, pane_name: str | None = None) -> dict

Get viewport settings for a pane tab.

Parameters:

Name Type Description Default
pane_name
str | None

Pane tab name.

None

list_panes async

list_panes(ctx: Context) -> dict

List all visible pane tabs in the Houdini UI.

set_current_network async

set_current_network(ctx: Context, network_path: str) -> dict

Navigate the network editor to a specific network path.

Parameters:

Name Type Description Default
network_path
str

Network path to navigate to.

required

set_viewport_camera async

set_viewport_camera(
    ctx: Context, camera_path: str, pane_name: str | None = None
) -> dict

Set the viewport to look through a specific camera.

Parameters:

Name Type Description Default
camera_path
str

Camera node path.

required
pane_name
str | None

Pane tab name.

None

set_viewport_direction async

set_viewport_direction(
    ctx: Context, direction: str, pane_name: str | None = None
) -> dict

Set the viewport to a standard viewing direction.

Parameters:

Name Type Description Default
direction
str

"front", "back", "top", "bottom", "left", "right", or "perspective".

required
pane_name
str | None

Pane tab name.

None

set_viewport_display async

set_viewport_display(
    ctx: Context, display_mode: str, pane_name: str | None = None
) -> dict

Set the viewport shading mode.

Parameters:

Name Type Description Default
display_mode
str

One of 'wireframe', 'shaded', 'smooth', 'smooth_wire', 'hidden_line', 'flat', 'flat_wire', 'matcap', 'matcap_wire'.

required
pane_name
str | None

Pane tab name.

None

set_viewport_renderer async

set_viewport_renderer(
    ctx: Context, renderer: str, pane_name: str | None = None
) -> dict

Set the viewport's Hydra rendering delegate for live preview.

Use this during lookdev to preview materials and lighting directly in the viewport instead of writing full renders to disk.

Parameters:

Name Type Description Default
renderer
str

Renderer name — "GL", "Storm", "Karma CPU", "Karma XPU", etc. Case-insensitive partial match.

required
pane_name
str | None

Pane tab name.

None