Skip to main content
Glama

get_viewport_state

Read-onlyIdempotent

Read the active Unreal Engine 5 level editor viewport without changing it, returning camera location and rotation, view mode, camera speed, and show flags like Grid and Collision.

Instructions

Read the active level editor viewport (the focused one, else the first) without changing it: realtime, view mode name and index, camera speed, camera location [x, y, z] and rotation [pitch, yaw, roll], and the Grid, Bounds, Collision, Wireframe and Lighting show flags.

Returns: { realtime: bool, view_mode_index: int, view_mode: string, camera_speed: number, location: [number], rotation: [number], show_flags: object }

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.1.0

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint, destructiveHint=false and openWorldHint=false, so the safety profile is covered. The description adds useful context beyond that: the selection rule (focused viewport, else the first) and the explicit list of fields read. It does not cover failure modes (e.g. no viewport open), which keeps it from a 5.

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?

Front-loaded with the core action and scope in the first clause, and appropriately short. There is mild redundancy: the prose field list (realtime, view mode name/index, camera speed, location, rotation, show flags) is restated in the Returns object, though the latter usefully adds types.

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?

With no input parameters, rich annotations, and no output schema, the description carries the remaining burden well: it documents the viewport selection rule, the read-only nature, and the full return shape including field names and types. Nothing an agent needs to call it correctly is missing.

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?

The tool takes zero parameters, so per the baseline rule a 4 is appropriate; there is no parameter semantics to explain. The description's enumeration of returned fields compensates slightly for the absent output schema but adds nothing about inputs, since there are none.

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?

States a specific verb (read) and resource (active level editor viewport) with a precise scope: focused viewport, else the first. It enumerates exactly what is returned (realtime, view mode, camera state, show flags) and explicitly says 'without changing it', which distinguishes it from the set_viewport_* siblings.

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

Usage Guidelines3/5

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

Usage is implied by 'read ... without changing it', which tells the agent this is the non-mutating counterpart to the many set_viewport_* tools. However, no alternative is named and no explicit when-to-use or when-not-to-use condition is given (e.g. vs capture_viewport or get_view_type).

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

Deploy Server

Other Tools