Skip to main content
Glama

Screenshot

screenshot

Capture the Android device's current screen as an image with its dimensions, letting an AI agent inspect the display and choose format, quality, or size limits.

Instructions

Take a screenshot of the device screen right now and return it as an image you can look at, plus one line of text with the image size and the device's real screen size.

The default is a JPEG whose longest side is 1024 px (tens of KB). A full-size PNG of a 1440x3120 phone is about 3 MB, which is more than many MCP clients accept in a tool result, so ask for it only when you need it: format="png", max_side=None.

format is "jpeg", "webp" or "png"; quality is 1-100 (jpeg/webp); max_side caps the longest side in pixels (64-8192); scale (0.1-1) shrinks by a factor instead. When the image is smaller than the screen, pass its size as image_width/image_height to tap(), long_press() or swipe() so x,y are read in the image's pixels. Prefer snapshot() when you only need text and refs: it's far smaller.

Input Schema

NameRequiredDescriptionDefault
scaleNo
deviceNo
formatNojpeg
qualityNo
max_sideNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.2.0

TDQS

A4.6/5.0
Behavior4/5

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

With no annotations, the description carries the full burden and does well: it discloses the return payload shape, default encoding and size (~1024 px JPEG, tens of KB), and a concrete failure mode — a 3 MB PNG exceeding many MCP clients' tool-result limits. It doesn't say what happens with the nullable `device` parameter (whether it defaults to the active device) or what occurs on error when no device is attached.

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?

Front-loaded with the outcome and return shape, then cost guidance, then parameters — the ordering matches how an agent needs the information. Mild redundancy in restating the default size and then re-explaining when to override it, but nothing is padded.

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?

No output schema and no annotations exist, so the description must explain returns and cost, and it does — including the text line, image dimensions, and client size limits. Combined with the parameter ranges, an agent has everything needed to call this correctly on the first try.

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 0%, so the description must compensate, and it does for four of five parameters — explaining `format` values, `quality` range 1-100, `max_side` range 64-8192 and its default role, and `scale` (0.1-1) as a multiplicative alternative. The `device` parameter is never mentioned at all, leaving a real gap in an otherwise strong explanation.

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?

Specific verb and resource ("take a screenshot of the device screen") plus an explicit statement of what comes back (an image plus one line of size text). It also differentiates from the sibling snapshot() by contrasting image output with text+refs, so an agent can route correctly without opening the schema.

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?

Explicitly states when to use the expensive variant ("ask for it only when you need it: format=\"png\", max_side=None") and names the alternative ("Prefer snapshot() when you only need text and refs"). It also flags the downstream condition that coordinates must be interpreted in image pixels via image_width/image_height on tap/long_press/swipe.

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