Skip to main content
Glama

Take a screenshot

screenshot

Capture a full-resolution PNG of an Android or iOS device screen and return its path with size, scale, and safe area for UI inspection or visual review.

Instructions

Save a full-resolution PNG of the screen and return its path with size, scale and safe area. Use ui_tree to read the screen; inline only to look at the image.

Tool call template

This tool declares no required parameters. Add optional parameters from the input schema as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {},
    "name": "screenshot"
  }
}

Input Schema

NameRequiredDescriptionDefault
outNoAbsolute PNG path, ending in .png. Default: a new temp file.
deviceNoId or name.
inlineNoAlso return the image. Take coordinates from ui_tree, not from the image.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.2/5.0
Behavior4/5

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

Annotations mark it non-read-only, and the description fills in what writes occur: a PNG saved to an explicit path or a new temp file by default, which signals low blast radius. It also warns to take coordinates from ui_tree rather than the image, a real behavioral caveat. Overwrite behavior for an existing 'out' path is unstated, which keeps this short of a 5.

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?

Two sentences, front-loaded with the action and return values, then the sibling routing. No filler.

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?

With no output schema, the description correctly specifies the return shape (path plus size, scale, safe area) and the default output location. Only file-overwrite semantics for 'out' are missing, a minor gap for a capture 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?

Schema coverage is 100%, so the baseline is 3; the schema already documents 'out', 'device' and 'inline' fully. The description adds only the caution not to derive coordinates from inline images, which reinforces rather than extends parameter meaning.

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?

States a specific verb ('Save'), resource ('a full-resolution PNG of the screen') and the returned payload (path, size, scale, safe area). It clearly distinguishes itself from ui_tree, the sibling that reads rather than captures.

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?

Routes the agent explicitly to ui_tree for reading the screen, and scopes 'inline' to visual inspection only. It doesn't spell out when capturing a screenshot is preferable to other observation paths or note any prerequisites, but the key exclusion is stated.

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