Skip to main content
Glama

set_viewport_exposure

DestructiveIdempotent

Set the active level editor viewport's exposure mode: fixed at an EV100 value or automatic eye adaptation. It affects only the viewport and saves nothing.

Instructions

Set the exposure of the active level editor viewport: fixed at ev100 when fixed is true, automatic eye adaptation when false. Affects the viewport only and saves nothing. Returns applied, fixed and ev100 as read back; get_viewport_exposure reads them.

Returns: { applied: bool, fixed: bool, ev100: number }

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
ev100YesEV100 value to use when fixed=true (any float; typical range -3..20)
fixedYesTrue for fixed exposure (use FixedEV100), false for automatic eye-adaptation

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 idempotentHint=true and destructiveHint=true; the description adds the important non-structured facts that the change is viewport-only and is not persisted ('saves nothing'), and it reports the read-back fields. This goes beyond what annotations convey.

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-loads the core action then behavior then returns, which is well structured. Minor redundancy: the returned fields are stated twice ('Returns applied, fixed and ev100 as read back' and again as the Returns block).

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 output schema, the description compensates by documenting the return shape {applied, fixed, ev100}, the persistence behavior, and the paired reader. 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.

Parameters3/5

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

Schema description coverage is 100%, so both parameters (fixed, ev100) are already fully documented including the typical -3..20 range. The description restates the fixed/ev100 relationship but adds no syntax or constraint detail beyond the schema, so baseline 3 applies.

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 and resource ('Set the exposure of the active level editor viewport') and names the paired sibling get_viewport_exposure, so an agent can distinguish the write from the read without opening either schema. The two modes (fixed ev100 vs automatic) are spelled out inline.

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 scope ('affects the viewport only and saves nothing') and explicitly points to get_viewport_exposure as the reader, which supports routing. It stops short of an explicit when-to-use/when-not statement, but the context is unambiguous.

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