Skip to main content
Glama

Scene image

get-scene-image
Read-onlyIdempotent

Capture a scene as an image with numbered token markers, grid, and metadata, so you can inspect the map and token positions.

Instructions

Take a picture of a scene so you can look at the map. Returns one image and, as JSON, every token with its number on the picture, name, grid cell, canvas position, size, disposition and hidden flag, plus the grid (type, cell size, distance) and how canvas pixels map to picture pixels. Grid labels on the picture count cells from 0 at the top left of the scene, the same numbers as the token list. When the GM views the scene, the rendered canvas is captured (background, tiles, drawings, token art; no lighting, fog or vision). Otherwise, or with mode "composed", the picture is the background with grid and numbered token markers. Read only.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
gridNoDraw grid lines (square grids).
modeNoauto: capture the canvas when the GM views this scene, otherwise compose. canvas: only a capture, an error when the scene is not on the canvas. composed: always background plus markers.auto
formatNojpeg (every client) or webp (smaller).jpeg
regionNoOnly this part of the scene, in grid cells counted from 0 at the top left.
maxBytesNoLargest encoded size in bytes, 50000 to 3750000. Quality is lowered first, then the size.
gridLabelsNoWrite column numbers along the top and row numbers along the left edge.
maxDimensionNoLong edge of the picture in pixels, 256 to 4096. Never enlarged beyond the scene.
tokenMarkersNoDraw the token numbers of the list on the picture, coloured by disposition.
sceneIdentifierNoScene by id or name. Without it the scene that is active for everyone.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv14.2609.4

TDQS

A4.8/5.0
Behavior5/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is covered. The description adds substantial behavioral context beyond annotations: it discloses what the canvas capture includes (background, tiles, drawings, token art) and excludes (lighting, fog, vision), explains the composed mode fallback, and details the coordinate system (grid labels count from 0 at top left). It also reveals the maxBytes quality-lowering behavior. This is rich, non-obvious behavioral disclosure.

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 dense but well-organized: it front-loads the core purpose, then the return payload, then mode behavior, then coordinate system. Every sentence earns its place, though the return-payload enumeration is long. It could be slightly tighter, but the density is justified given the tool's complexity and 9 parameters.

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?

For a tool with 9 parameters, no output schema, and nested objects, the description is remarkably complete. It covers the return format (image + JSON token list), the two rendering modes, the coordinate system, and the read-only safety profile. The only minor gap is not describing the exact JSON structure of the token list, but the description enumerates the fields (number, name, grid cell, canvas position, size, disposition, hidden flag) sufficiently for an agent to understand the output.

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 description coverage is 100%, so the baseline is 3. The description adds value by explaining the coordinate system ('Grid labels on the picture count cells from 0 at the top left of the scene, the same numbers as the token list') which directly clarifies the region parameter's semantics. It also explains the mode auto behavior in prose, reinforcing the schema enum descriptions. The description doesn't repeat every parameter but adds meaningful context for the most complex ones (region, mode, maxBytes).

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 opens with a specific verb and resource ('Take a picture of a scene so you can look at the map') and immediately distinguishes the tool's dual output: one image plus a JSON token list. It clearly separates this from sibling tools like get-canvas-view or list-scenes by emphasizing the map image and token metadata. The description is unambiguous about what the tool produces.

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?

The description explicitly explains when to use it ('so you can look at the map') and contrasts the two modes: canvas capture when the GM views the scene, composed background otherwise. It also names the alternative get-canvas-view implicitly by describing the canvas capture behavior. The mode parameter's auto behavior is fully explained, giving the agent clear decision criteria.

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