Skip to main content
Glama

Check a map layout (free)

check_map
Read-only

Lay out the map and report what it had to compromise on -- overlapping labels, truncated text, annotations off the page -- plus the imagery quality and what was drawn, so drafted labels can be edited. Returns no image. Free; iterate here before make_map.

Input Schema

NameRequiredDescriptionDefault
dpiNo
mapIdNoRevise a map you already bought. Returned as X-Map-Id on your paid export. Re-exports are free for 7 days as long as the FRAME is unchanged — change labels, styling, overlays and page elements freely; changing address, center, groundWidthM, pageSize, orientation or dpi makes it a different map.
titleNoTitle block heading. Defaults to the address.
centerNo[longitude, latitude] in WGS84. Alternative to address.
addressNoUS street address, city and state. Geocoded via the US Census.
overlaysNoThematic layers drawn under the annotations. A legend is added automatically. fema-flood: regulated floodplain (blank means no mapped hazard — FEMA draws Zone X with no symbol). nwi-wetlands: USFWS National Wetlands Inventory.
pageSizeNotabloid
autoLabelNoDraft tenant callouts from OpenStreetMap and road names from Census TIGER before drawing your own. Use this when you do not know what is at the location. Pass an object to control how many: fewer labels is the simplest cure for a crowded page.
labelScaleNoText size multiplier applied to every annotation that does not set its own textScale. Drop to ~0.8 to fit more labels; raise for a map read at arm’s length.
annotationsNoCallouts to draw. Placement, collision avoidance and leader lines are automatic.
orientationNoportrait
groundWidthMNoTrue ground width of the frame in meters. 500 fits a typical retail plaza; 20000-40000 makes a regional map, where autoLabel drafts cities, highway shields and water instead of tenants.
pageElementsNoPage furniture. Turn elements off to free up room for labels.
imagerySourceIdNoImagery source id. Defaults to the sharpest source covering the frame.
titleBlockScaleNoSize multiplier for the title block.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed10 schema fields changed
    • changedInput schema / properties / annotations / items / properties / boxColor / maxLength
      Previous value: -32New value: +40
    • addedInput schema / properties / annotations / items / properties / boxColor / pattern
      Added value: +"^(#[0-9a-f]{3,8}|[a-z]{3,20}|rgba?\\(\\s*[\\d.]+%?\\s*(,\\s*[\\d.]+%?\\s*){2,3}\\))$"
    • changedInput schema / properties / annotations / items / properties / color / maxLength
      Previous value: -32New value: +40
    • addedInput schema / properties / annotations / items / properties / color / pattern
      Added value: +"^(#[0-9a-f]{3,8}|[a-z]{3,20}|rgba?\\(\\s*[\\d.]+%?\\s*(,\\s*[\\d.]+%?\\s*){2,3}\\))$"
    • changedInput schema / properties / annotations / items / properties / inkColor / maxLength
      Previous value: -32New value: +40
    • addedInput schema / properties / annotations / items / properties / inkColor / pattern
      Added value: +"^(#[0-9a-f]{3,8}|[a-z]{3,20}|rgba?\\(\\s*[\\d.]+%?\\s*(,\\s*[\\d.]+%?\\s*){2,3}\\))$"
    • changedInput schema / properties / annotations / items / properties / markColor / maxLength
      Previous value: -32New value: +40
    • addedInput schema / properties / annotations / items / properties / markColor / pattern
      Added value: +"^(#[0-9a-f]{3,8}|[a-z]{3,20}|rgba?\\(\\s*[\\d.]+%?\\s*(,\\s*[\\d.]+%?\\s*){2,3}\\))$"
    • changedInput schema / properties / annotations / items / properties / outlineColor / maxLength
      Previous value: -32New value: +40
    • addedInput schema / properties / annotations / items / properties / outlineColor / pattern
      Added value: +"^(#[0-9a-f]{3,8}|[a-z]{3,20}|rgba?\\(\\s*[\\d.]+%?\\s*(,\\s*[\\d.]+%?\\s*){2,3}\\))$"
  2. First observed

TDQS

A4.3/5.0
Behavior4/5

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

Annotations declare readOnlyHint and openWorldHint but say nothing about cost, output medium, or diagnostic content; the description adds all three — free, no image returned, and a specific list of what the report contains. It does not describe what happens on a failed layout or whether warnings are per-annotation keyed, which it could since there is no output schema.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three short sentences, front-loaded with the action and its output, no filler. Each sentence carries a distinct fact: what it reports, that there is no image, and that it is free to repeat before make_map.

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?

Despite 15 parameters and nested objects, no output schema, and this being the pre-commit validation step, the description covers what an agent needs to decide and call: cost, output medium, diagnostic payload, and the ordering relative to make_map.

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 coverage is 80% across 15 parameters, so the schema does the heavy lifting and the baseline of 3 applies. The description adds nothing parameter-specific — it never mentions mapId, dpi, autoLabel or annotations, so the agent must read the schema to learn that visuals can be supplied for dry-run evaluation.

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?

A concrete verb and resource ('lay out the map and report what it had to compromise on') plus an explicit enumeration of what is checked: overlapping labels, truncated text, off-page annotations, imagery quality, what was drawn. 'Returns no image' and 'iterate here before make_map' separate it cleanly from the render sibling before either schema is opened.

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 states the workflow position unambiguously ('iterate here before make_map') and gives a use case (editing drafted labels). It falls short of naming preview_map, the sibling whose territory most overlaps, so the agent must infer the difference between a no-image check and an image preview from 'Returns no image' alone.

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