Skip to main content
Glama

Robot Actions — Remote Device Control

iOS screenshot

ios_screenshot
Read-onlyIdempotent

Take a HIGH-FIDELITY screenshot of an iOS device (slow full-fidelity path). Returns base64 PNG image. For routine per-action screen checks prefer ios_mjpeg_screenshot — it is much faster; reserve ios_screenshot for when you need a crisp, full-fidelity frame. If the device is asleep (black frame) it auto-wakes and retries once. Requires an active iOS automation session (auto-starts if needed) — when no session is running and you do not want to start one, ios_fast_screenshot captures without one, at a higher per-call cost.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
udidYesiOS device UDID

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A3.9/5.0
Behavior1/5

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

The description discloses useful side effects (auto-wakes and retries once on a black frame; auto-starts an iOS automation session if needed), but these are environment modifications that directly contradict the annotation readOnlyHint=true. Because the description contradicts the structured safety signal, this dimension scores 1 per the annotation-contradiction rule.

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 front-loaded with the core action and slow-path qualifier, then adds return format, sibling preference, edge-case behavior, and session requirement in a tight sequence. Every sentence adds distinct operational information with no wasted wording.

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 single-parameter screenshot tool with no output schema, the description covers the return format (base64 PNG), session prerequisite, auto-start behavior, wake retry, and two alternatives. Nothing an agent needs to invoke it correctly is missing, aside from the annotation mismatch noted above.

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 description coverage is 100% for the single udid parameter, and the description adds no parameter-level detail such as UDID format, acquisition, or constraints. Baseline 3 applies when the schema fully documents the parameter and the description does not enrich it.

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 a specific verb+resource ('Take a HIGH-FIDELITY screenshot of an iOS device'), names the exact output ('base64 PNG image'), and distinguishes itself from siblings ios_mjpeg_screenshot and ios_fast_screenshot by its full-fidelity slow path. An agent can select this over alternatives without opening any 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?

It explicitly routes the agent: prefer ios_mjpeg_screenshot for routine per-action checks, reserve ios_screenshot for crisp full-fidelity frames, and use ios_fast_screenshot when no session should be started. The when-to-use and when-not-to-use conditions are fully stated.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources