Skip to main content
Glama

Manage Camera

manage_camera
Destructive

Create, configure, and control cameras in Unity. Supports basic Camera and Cinemachine for flexible camera management, including setup, targets, priorities, lens, body, aim, and screenshots.

Instructions

Manage cameras (Unity Camera + Cinemachine). Works without Cinemachine using basic Camera; unlocks presets, pipelines, and blending when Cinemachine is installed. Use ping to check Cinemachine availability.

SETUP:

  • ping: Check if Cinemachine is available

  • ensure_brain: Ensure CinemachineBrain exists on main camera

  • get_brain_status: Get Brain state (active camera, blend, etc.)

CAMERA CREATION:

  • create_camera: Create camera with preset (third_person, freelook, follow, dolly, static, top_down, side_scroller). Falls back to basic Camera without Cinemachine.

CAMERA CONFIGURATION:

  • set_target: Set Follow and/or LookAt targets on a camera

  • set_priority: Set camera priority for Brain selection

  • set_lens: Configure lens (fieldOfView, nearClipPlane, farClipPlane, orthographicSize, dutch)

  • set_body: Configure Body component (bodyType to swap, plus component properties)

  • set_aim: Configure Aim component (aimType to swap, plus component properties)

  • set_noise: Configure Noise component (amplitudeGain, frequencyGain)

EXTENSIONS:

  • add_extension: Add extension (extensionType: CinemachineConfiner2D, CinemachineDeoccluder, CinemachineImpulseListener, CinemachineFollowZoom, CinemachineRecomposer, etc.)

  • remove_extension: Remove extension by type

CAMERA CONTROL:

  • set_blend: Configure default blend (style: Cut/EaseInOut/Linear/etc., duration)

  • force_camera: Override Brain to use specific camera

  • release_override: Release camera override

  • list_cameras: List all cameras with status

CAPTURE:

  • screenshot: Capture a screenshot. By default (no camera specified) uses ScreenCapture API, which captures all render layers including Screen Space - Overlay UI canvases. Specifying a camera uses direct camera rendering, which EXCLUDES Screen Space - Overlay canvases (use only when you need a specific viewpoint without UI). Supports include_image=true for inline base64 PNG, batch='surround' for 6-angle contact sheet, batch='orbit' for configurable grid, view_target/view_position for positioned capture, and capture_source='scene_view' to capture the active Unity Scene View viewport.

  • screenshot_multiview: Shorthand for screenshot with batch='surround' and include_image=true.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
batchNoBatch capture mode: 'surround' (6 angles) or 'orbit' (configurable grid).
actionYesThe camera action to perform.
cameraNoCamera to capture from (name, path, or instance ID). Omit to use ScreenCapture API (captures all layers including Screen Space Overlay UI). Specify only when you need a particular camera viewpoint; note that Screen Space - Overlay canvases will NOT appear in camera-rendered captures.
targetNoTarget camera (name, path, or instance ID).
orbit_fovNoCamera FOV in degrees for batch='orbit' (default 60).
propertiesNoAction-specific parameters (dict or JSON string).
view_targetNoTarget to focus on. GameObject name/path/ID or [x,y,z]. For game_view: aims camera at target. For scene_view: frames the Scene View on the target.
orbit_anglesNoNumber of azimuth samples for batch='orbit' (default 8, max 36).
include_imageNoIf true, return screenshot as inline base64 PNG. Default false.
output_folderNoOptional folder for screenshot output. Project-relative (e.g. 'Assets/Screenshots' or 'Captures') or absolute path inside the project. Overrides the user's Editor preference. If omitted, falls back to the Editor preference, then to the built-in default (Assets/Screenshots).
search_methodNoHow to find target.
view_positionNoWorld position [x,y,z] to place camera for positioned capture.
view_rotationNoEuler rotation [x,y,z] for camera. Overrides view_target if both provided.
capture_sourceNoScreenshot source. 'game_view' (default) captures the game/camera path; 'scene_view' captures the active Unity Scene View viewport.
max_resolutionNoMax resolution (longest edge px) for inline image. Default 640.
orbit_distanceNoCamera distance from target for batch='orbit' (default auto).
orbit_elevationsNoElevation angles in degrees for batch='orbit' (default [0, 30, -15]).
screenshot_file_nameNoScreenshot file name (optional). Defaults to timestamp.
screenshot_super_sizeNoScreenshot supersize multiplier (integer >= 1).
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Beyond the destructiveHint annotation, the description details behaviors like fallback to basic Camera, how extensions work, and the critical difference in screenshot capture (ScreenCapture API includes UI, camera rendering excludes Screen Space Overlay). No contradictions with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is lengthy but well-structured into sections (SETUP, CAMERA CREATION, etc.), making it easy to navigate. Each sub-action gets a brief explanation. Slightly verbose but efficient given the tool's breadth.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (19 parameters, many actions), the description covers all sub-actions thoroughly. The screenshot details are especially complete, covering capture sources, batch modes, and parameter interactions. No output schema, but the description adequately explains what each action does.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline is 3. The description adds meaningful context for key parameters like 'camera' (explains UI exclusion) and 'batch' (describes surround/orbit modes), enhancing the schema descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it manages cameras (Unity Camera + Cinemachine) and lists all sub-actions (setup, creation, configuration, extensions, control, capture). The purpose is specific and distinguishes from sibling tools, none of which deal with cameras.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides explicit guidance: setup steps (ping to check Cinemachine), when to use screenshot with camera parameter vs without (UI capture), and shorthand for screenshot_multiview. It also explains fallback behavior without Cinemachine.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Ryan6-VRC/vrc-mcp-proxy'

If you have feedback or need assistance with the MCP directory API, please join our Discord server