Skip to main content
Glama

run_eqs_query

Destructive

Execute an Environment Query System (EQS) query against the Unreal Editor world to return scored items; navigation-based generators require a built navmesh.

Instructions

Runs a UEnvQuery synchronously against the editor world (UEnvQueryManager::RunInstantQuery) and returns the scored items. Generators/tests needing navigation data (SimpleGrid/PathingGrid/Pathfinding/Project/Trace) require a built navmesh; without it the query returns a non-Success status honestly (still success:true, ran:true).

Returns: { query_path, ran, eqs_manager_present, status, is_successful, num_items, item_type, run_mode, items:[{index, score, location:{x,y,z}, actor?}], note? }

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
run_modeNo"SingleResult" | "RandomBest5Pct" | "RandomBest25Pct" | "AllMatching" (default "AllMatching")
max_itemsNoOptional cap on how many items are serialized into the payload (default 50; the query still evaluates all)
query_pathYes/Game/... path to the UEnvQuery asset (required)
querier_actorNoOptional actor display label or name used as the query Querier (drives contexts like EnvQueryContext_Querier); default: the query asset (no location)

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.1.0

TDQS

A3.9/5.0
Behavior3/5

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

With annotations present the bar is lower, and the description adds real behavior beyond them (synchronous editor-world execution, navmesh dependency, and the always-success:true/ran:true honest-status semantics). However, annotations declare destructiveHint=true and readOnlyHint=false, and the description never explains what is destructive, non-idempotent, or mutated — leaving the strongest annotation signal unaddressed.

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 purpose, then an explicitly labeled 'Returns:' block; no filler. It is dense and technical but every clause earns its place for a tool of this complexity.

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

Completeness4/5

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

For a 4-param tool with no output schema, the description embeds the full return shape and covers purpose, precondition, and failure semantics, which is close to complete. The remaining gap is the unexplained destructive/not-read-only annotation.

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 query_path, run_mode, max_items, and querier_actor are already documented in the schema. The description adds no parameter-level meaning (e.g., interaction between run_mode and max_items), 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 ('Runs'), a concrete resource (a UEnvQuery, pinned to UEnvQueryManager::RunInstantQuery), and the result ('returns the scored items'). This clearly separates it from siblings like create_eqs_query, add_eqs_generator, and get_eqs_query_info without opening any schema.

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 a genuine usage precondition: generators/tests needing navigation data require a built navmesh, and it explains the honest non-Success fallback. That is clear context for when the tool works, though it names no alternative tool or explicit exclusion set.

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