Skip to main content
Glama

Capture paired Android displays

mobile_screen_capture_pair

Capture same-moment screenshots from multiple Android logical displays in parallel, returning tightly paired images for synchronized multi-display comparisons.

Instructions

Capture multiple logical displays as tightly paired same-moment screenshots (parallel screencap after one display resolve).

Input Schema

NameRequiredDescriptionDefault
serialYesExact ADB serial from mobile_devices_list; never inferred when multiple devices exist
displayIdsYes
saveArtifactNo

Output Schema

NameRequiredDescriptionDefault
serialYes
skewMsYes
capturesYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed5 schema fields changedv0.9.0
    • changedInput schema / $schema
      Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
    • changedOutput schema / $schema
      Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
    • addedOutput schema / properties / captures / items / properties / coordinateSpace
      Added value: +{
      +  "additionalProperties": false,
      +  "properties": {
      +    "displayHeight": {
      +      "type": "number"
      +    },
      +    "displayWidth": {
      +      "type": "number"
      +    },
      +    "imageHeight": {
      +      "type": "number"
      +    },
      +    "imageWidth": {
      +      "type": "number"
      +    },
      +    "scaleX": {
      +      "type": "number"
      +    },
      +    "scaleY": {
      +      "type": "number"
      +    }
      +  },
      +  "required": [
      +    "imageWidth",
      +    "imageHeight"
      +  ],
      +  "type": "object"
      +}
    • addedOutput schema / properties / captures / items / properties / downscaled
      Added value: +{
      +  "type": "boolean"
      +}
    • changedOutput schema / properties / captures / items / required
      Previous value: -[
      -  "displayId",
      -  "mimeType",
      -  "sizeBytes",
      -  "durationMs"
      -]New value: +[
      +  "displayId",
      +  "mimeType",
      +  "sizeBytes",
      +  "durationMs",
      +  "downscaled",
      +  "coordinateSpace"
      +]
  2. First observedv0.5.0

TDQS

B3/5.0
Behavior3/5

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

Annotations declare non-read-only, non-idempotent, non-destructive, closed-world. The description adds genuine behavioral context beyond them by disclosing the mechanism: 'parallel screencap after one display resolve,' which explains how simultaneity is achieved. It does not disclose what happens to saveArtifact output or artifact persistence, so it is useful but incomplete.

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?

A single compact sentence, front-loaded with the verb and the distinguishing scope. Nothing is wasted, though the parenthetical is dense and could be clearer.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists so return values need not be explained, but with 33% schema coverage on a 3-param tool the description should at minimum account for saveArtifact and give a hint of when this tool is appropriate. As written it is minimally viable for a moderately simple capture tool.

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

Parameters2/5

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

Schema description coverage is only 33%: serial and the displayIds item type are documented in the schema, but saveArtifact has no description anywhere. The tool description adds no parameter meaning at all, so it fails to compensate for the coverage gap.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb (Capture) and resource (multiple logical displays as tightly paired same-moment screenshots), and the 'paired/same-moment' scope clearly distinguishes it from the singular mobile_screen_capture sibling, even though that sibling is not named.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No explicit when/when-not guidance. The phrase 'tightly paired same-moment' implies it is for synchronized multi-display captures, but nothing tells the agent when to prefer this over two calls to mobile_screen_capture or what prerequisites (e.g., display IDs from mobile_displays_list) apply.

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