Skip to main content
Glama

set_current_level

DestructiveIdempotent

Choose which loaded, visible sub-level is current before spawning or pasting actors, so they land in the intended streaming level instead of the active one.

Instructions

Choose which sub-level of the editor world is CURRENT, i.e. where newly spawned or pasted actors will land. Set it before spawn_actor / paste_actors when a map is split into streaming sub-levels, otherwise everything piles into whichever level happens to be active. Errors honestly if the named streaming level is not loaded/visible; already_current:true when it was already the one. Use move_actors_to_level to relocate actors that ended up in the wrong one.

Returns: { current_level: string, changed: bool, already_current: bool, success: true } -- current_level is the level current after the call; a level that is not found, or not loaded and visible, is an error instead.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
level_nameYes"persistent" for the persistent level, or the SHORT name of a loaded, visible streaming sub-level (not a /Game path).

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.1.0

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already declare destructiveHint=true and idempotentHint=true, so the safety profile is partly covered, yet the description adds real value: it discloses that a missing or not-loaded/visible level yields an error rather than a silent fallback, and that already_current:true signals a no-op. It does not explain why the tool is flagged destructive, which is the one loose end.

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 and the prerequisite in the first two sentences, then adds error/idempotency semantics and the return shape. Every sentence earns its place, though the returns sentence is slightly verbose for three booleans plus a string.

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, so describing the return object (current_level, changed, already_current, success) is necessary and done. Combined with the error behavior and the sibling hand-off, an agent has everything needed to call this correctly.

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 single level_name parameter (with its 'persistent' vs short-name-not-path guidance) is fully documented in the schema. The description adds nothing parameter-specific, so the 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+resource and defines the otherwise-ambiguous term 'CURRENT' explicitly ('where newly spawned or pasted actors will land'). It also names the related siblings (spawn_actor, paste_actors, move_actors_to_level), so an agent can place it precisely among neighbors.

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?

Gives explicit when-to-use ('set it before spawn_actor / paste_actors when a map is split into streaming sub-levels'), the consequence of skipping it ('everything piles into whichever level happens to be active'), and an explicit alternative for the inverse case (move_actors_to_level). Routing and exclusions are both present.

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