Skip to main content
Glama

set_control_rotation

DestructiveIdempotent

Set a controller's control rotation in an active PIE session to aim the view and control-driven facing. Target a pawn's controller, a named controller, or the default PlayerController.

Instructions

Set a Controller's control rotation (AController::SetControlRotation) in the active PIE session -- aims the view and, for a possessed pawn, its control-driven facing. Targets the named pawn's controller, a named controller, or (no target_name) the PIE session's PlayerController. PIE-gated: clean error if no PIE session.

Returns: { applied: bool, target: string, control_rotation: [pitch, yaw, roll], pie_client_index: int }

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
yawYesRequired number. Control rotation yaw (degrees).
rollYesRequired number. Control rotation roll (degrees).
pitchYesRequired number. Control rotation pitch (degrees).
target_nameNoOptional. Name/label of the possessed pawn (uses its controller) or a controller; default = the PIE session's PlayerController.
pie_client_indexNoOptional int (default 0).

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 non-read-only, idempotent, non-open-world and destructive, so the safety profile is partly structured. The description adds real value beyond that: the PIE-gating constraint and the exact return shape. It does not explain the destructiveHint=true implication, which is the one gap.

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, then targeting, then gating, then return shape. Well-structured and mostly tight, though the parenthetical API reference is minor extraneous detail.

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?

There is no output schema, and the description compensates by supplying the return object shape. Combined with the targeting rules and PIE error behavior, an agent has everything needed to invoke and interpret this tool.

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

Parameters3/5

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

Schema description coverage is 100%, so the baseline is 3. The description adds the target-resolution logic (pawn's controller vs named controller vs default PlayerController), but this largely mirrors the schema's own target_name description, so little is added beyond structured data.

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 precise verb+resource (set a Controller's control rotation) and even names the underlying API (AController::SetControlRotation), plus the effect ('aims the view and, for a possessed pawn, its control-driven facing'). This clearly distinguishes it from nearby siblings like set_rig_control_value and set_actor_transform.

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

Usage Guidelines4/5

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

Gives clear operating context: it runs in the active PIE session, is PIE-gated with a clean error otherwise, and explains the three targeting modes. It stops short of naming an alternative tool for the non-PIE case, so it lacks explicit when-not/alternative routing.

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