Skip to main content
Glama

Get map

get_map
Read-onlyIdempotent

A map row plus its saved level data. Every placement has an immutable internal id and may have a user-authored mapData.materialRendering v1 snapshots the art style with optional profile, edgeMode and pixelSize overrides. Preserve it; it affects materials only, never geometry/physics. Hard edges suppress feathering without deleting saved blend widths. Absent settings retain original appearance. materialArea v1 visual fill: preserve its closed shape, material revision, repeatSize and blendWidthPx (inherits layer materialAreaBlendPx, default 16). Areas imply no swimming, damage or collision. Terrain layer can contain both materialGrid cells and materialArea objects: draw cells first, then shapes in array order. Honor materialArea.hidden. Terrain stays above Background and below object layers. Each placement can have a name plus map-unique gameplayId for game-code references; layers, Navigation paths, and per-placement custom-field values are included. Terrain materialGrid cells include elevation and continuous ramps; appearance.elevationShading (0–1, default 0.35) controls slope lighting, opaque cliff shading, and height-edge cues together, not collision. Zero disables all elevation lighting. Cell dimensions are authoritative; editor grid guides are not saved. Returns mapData:null when the map has never been saved.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
mapIdYesMap id.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint=false, so the read-only nature is covered. The description adds useful behavioral context beyond annotations by stating that returning mapData:null when the map has never been saved, and also clarifies that several values are immutable or must be preserved on round-trip. This provides edge-case and usage information that the annotations do not.

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?

The description is long, but the tool has no output schema, so it must document a fairly intricate payload. It is front-loaded with a high-level identity and then escalates from simple facts about immutability to more specialized rendering and gameplay details. While some details could arguably live in a schema, the description is not bloated with unrelated information.

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?

Because no output schema is present, the description itself must explain enough for an agent to know what the map will contain. It covers the map row, saved data, the materialRendering state, terrain materialGrid, navigation, custom fields, z-order, elevation rules, cell constraints, and the null case. That is a high level of completeness for a 1-parameter, read-only fetch 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?

The schema already documents mapId as 'Map id.' with 100% coverage, so the description does not need to restate it. It adds nothing technical beyond the phrase 'map row,' so the parameter retains the baseline meaning already supplied by the schema.

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?

The description names a specific resource ('A map row plus its saved level data') and itemizes the distinct kinds of data it returns: gameplayId, custom-field values, terrain, materialRendering, and Navigation paths. This clearly separates it from sibling fetch tools like get_asset or get_project and from list_maps, which returns a list rather than a full saved-map payload.

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

Usage Guidelines3/5

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

The description clearly covers what the tool returns, so an agent can infer this is the correct tool for fetching one map's full saved state. However, it never explicitly states when to use it instead of list_maps or get_project, nor does it say anything about retrieving only metadata or confirming a map's existence. Usage is implied rather than directly instructed.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources