Skip to main content
Glama

get_navigation_data

Read-onlyIdempotent

Retrieves navigation data, NavMesh bounds volumes, and whole-world navigability for a specified world. Diagnoses missing navmesh tiles when AI pathing fails; world='server' is authoritative.

Instructions

Inventory of navigation in a chosen world: every ANavigationData actor (the RecastNavMesh included) with its class, every NavMeshBoundsVolume with its location, and whether the world is flagged whole-world-navigable. The first thing to read when AI will not path -- no bounds volume, or a volume with an empty brush, means zero navmesh tiles. Errors honestly if the world has no navigation system at all. World-aware: world='editor' (default) | 'server' | 'client' | 'pie:N' | 'pie'. WARNING: The navmesh is SERVER-AUTHORITATIVE: asking a client answers "Navigation System not found" while the server's navmesh is perfectly alive, so anchor world='server' -- and the reply stamps world_name/world_package/net_mode/pie_instance so you can prove which one you asked.

Returns: { world: string, navigation_data: [{ name: string, class: string }], navigation_data_count: number, nav_bounds_volumes: [{ name: string, location_x: number, location_y: number, location_z: number }], nav_bounds_volumes_count: number, navigation_system_available: bool, is_whole_world_navigable: bool, world_name: string|null, world_package: string|null, world_type: string|null, net_mode: string|null, pie_instance: number }

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
worldNoOptional world selector: absent/'editor' (default) | 'server' (the PIE world with authority -- the ONLY one that owns a navmesh) | 'client' | 'pie:N' | 'pie' (ambiguous) | 'game' (alias of 'pie'). An unrecognised value FAILS naming the worlds that exist; it never falls back to another world in silence.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.1.0

TDQS

A4.6/5.0
Behavior5/5

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

Annotations already establish readOnly/idempotent/non-destructive, and the description adds substantial context on top: the server-authoritative nature of the navmesh, the misleading 'Navigation System not found' answer from a client, honest error behavior when no navigation system exists, and the provenance fields stamped into the reply. That is genuine behavioral disclosure beyond structured fields.

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?

Purpose and the key diagnostic rule are front-loaded, and the trailing Returns block is justified because this tool has no output schema. It is dense rather than wasteful, though the WARNING and Returns sections make it longer than strictly necessary for a single-parameter read.

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 present, the description compensates by spelling out the full return shape field by field, plus error behavior and world-selection semantics. An agent has everything needed to call it and interpret the result correctly.

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?

Schema coverage is 100%, so the schema already documents 'world' and its accepted values, making some of the description redundant. However, the description adds diagnostic rationale the schema lacks — that only the server world owns a navmesh, and that a client query yields a spurious 'not found' — which materially changes how an agent should set this parameter.

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?

It states a specific verb+resource ('Inventory of navigation in a chosen world') and enumerates exactly what is returned: every ANavigationData actor with class, every NavMeshBoundsVolume with location, and the whole-world-navigable flag. This is unambiguous and distinct from write-side siblings like rebuild_navigation or diagnose_navmesh.

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?

It gives a clear triggering condition ('The first thing to read when AI will not path') plus an interpretation rule (no bounds volume / empty brush means zero navmesh tiles), and directs the agent to anchor world='server'. It does not, however, name a sibling such as diagnose_navmesh or get_recast_navmesh_settings as the next step when this tool is inconclusive, so alternatives are left implicit.

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