Skip to main content
Glama

Read a capture back as an image

read_capture
Read-only

Retrieve a capture's PNG image by its filename to view the actual screenshot, solving the problem of filesystem paths being unusable for remote agents.

Instructions

Return one capture's PNG as image content.

shot answers with a filesystem path, which is worth nothing to an agent that is not running on this machine. This is how the picture itself gets back, and it is a SEPARATE call on purpose: a full-frame PNG is tens of kilobytes before base64, so a caller that only wanted to know the capture succeeded should not be made to pay for the pixels.

Args: name: A capture filename from captures, e.g. <mod>-shot-<token>-001-topleft.png. A NAME, never a path — see captures.read for why the containment is structural.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
nameYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.6.3

TDQS

A4.7/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false, so the safety profile is covered. The description adds meaningful behavioral context: it returns image content (PNG), is a separate call for performance reasons (tens of kilobytes before base64), and implies that calling it is unnecessary if the pixels aren't needed. It doesn't mention error handling or what happens if the name is invalid, but given the annotation coverage and simple nature, the added context earns a 4.

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?

The description is concise and well-structured. It opens with a one-sentence summary, then a short paragraph explaining the rationale for the separate call, and finally a focused argument description. Every sentence adds value; there is no filler or redundant phrasing. The purpose is front-loaded, making it easy for an agent to quickly grasp the tool's role.

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 single-parameter read tool with annotations covering safety, the description is nearly complete. It explains the purpose, why it exists as a separate call, and the parameter format. It references `captures.read` for additional containment details, which covers deeper context. The only missing piece is what happens on error (e.g., if the name doesn't exist), but that's a minor gap for a simple read operation and the description is otherwise sufficient.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must compensate for the parameter documentation. It does so thoroughly: it explains that `name` is a capture filename from `captures`, provides a concrete example format (`<mod>-shot-<token>-001-topleft.png`), and clarifies that it is a name, not a path, pointing to `captures.read` for structural containment reasons. This gives the agent everything needed to supply a valid argument.

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 states exactly what the tool does: 'Return one capture's PNG as image content.' It also distinguishes itself from the sibling `shot` tool by explaining that `shot` returns a filesystem path, which is useless to an agent not on that machine, and that this tool retrieves the actual image. The verb and resource are specific, and it clearly names the sibling it is not.

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 provides explicit guidance on when to use this tool versus alternatives. It explains that `shot` returns a filesystem path and that this tool is the way to get the actual picture, and it explicitly states that callers who only need to know a capture succeeded should not call it due to the size cost. This gives the agent a clear decision rule and names the alternative tool.

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