Skip to main content
Glama
esp32-iphone-agent

esp32-iphone-agent

screenshot

Captures the iPhone screen's current state after the last action settles, providing pixel coordinates that other tools use for accurate taps, typing, and swipes.

Instructions

The iPhone's screen now (after the last action has settled). Coordinates for the other tools are pixels of this 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
deviceNoboard id; only needed with several boards

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.5

TDQS

A3.5/5.0
Behavior3/5

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

With no annotations, the description carries the full burden, and it does disclose two real behaviors: the capture reflects a settled UI state, and the returned image defines the coordinate space for all other input tools. It stops short of stating the return format (image content vs. a file path), resolution, or whether a device must be foregrounded, all of which matter for a zero-annotation tool.

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?

Two tight sentences, front-loaded with the identity of the artifact, then the cross-tool coordinate contract. No filler, though the first sentence's telegraphic phrasing ("The iPhone's screen now") costs a little clarity for the terseness gained.

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 screenshot tool with no required parameters and no output schema, this covers the essentials an agent needs: what the image represents, when it is valid, and how its pixels map to other tools' coordinates. Only the return format and multi-board behavior are left unstated, which are modest gaps.

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% and the single optional 'device' parameter is documented in-schema as a board id needed only with multiple boards. The description adds nothing about it, but the baseline of 3 applies when the schema already does the work.

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?

The description identifies the resource concretely ("The iPhone's screen now") and adds a decisive qualifier — "after the last action has settled" — that tells an agent exactly what state the image represents. It also distinguishes itself from every sibling by declaring that their coordinates are pixels of this image, which no other tool can claim. The only shortfall is that the capture verb itself is implied rather than stated.

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

Usage Guidelines3/5

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

Timing guidance is present and useful: take it after an action has settled, which implies calling it to verify results and to obtain coordinates before calling tap/swipe/longpress. However, there is no explicit when-to-use statement, no note on whether repeated captures are cheap, and no mention of what to do if the screen is mid-animation.

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