Skip to main content
Glama

adl_prepare_input

Inspects a UI control at a given image point and moves the pointer onto it without clicking, returning its role, name, and focus so you can verify the target before committing an action.

Instructions

In interactive_desktop, inspect the intended control at a source-image point and move the real pointer onto it without clicking. Returns actual role/name, pointer hit and keyboard focus, plus a one-shot confirmation valid<=30s. Optional include_image returns a fresh surrounding crop. Check this observation before adl_commit_input; target, focus, geometry and human input are checked again at commit.

Input Schema

NameRequiredDescriptionDefault
pointYes
actionYes
frame_idYes
session_idYes
include_imageNo
expected_targetNo
expected_revisionYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.4

TDQS

A4/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 pointer-move side effect (no click), the one-shot confirmation with a <=30s validity window, and that target/focus/geometry/human input are revalidated at commit. It does not cover failure modes (expired confirmation, pointer landing on wrong element) or whether moving the real pointer interferes with a user's session.

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 action and side-effect constraint, then returns, then workflow. Dense but nearly every clause carries information; minor jargon like 'source-image point' could be clearer.

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 7-param tool with no output schema, the description usefully enumerates return contents (role/name, pointer hit, keyboard focus, confirmation token, optional crop) and the commit interaction. The remaining gap is the undocumented required parameters, which an agent must infer from the schema alone.

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 coverage is 0% across 7 parameters. The description adds meaning only for point (source-image coordinates) and include_image (returns a fresh surrounding crop), and hints at expected_target via 'target... checked again at commit'. The five required params session_id, frame_id, expected_revision, action and expected_target are otherwise undocumented.

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 specific verbs and resource: inspect the control at a source-image point and move the real pointer onto it without clicking. It explicitly distinguishes itself from the sibling adl_commit_input, so an agent can tell prepare from commit without opening either schema.

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?

The last sentence gives clear ordering: 'Check this observation before adl_commit_input', establishing the prepare→commit workflow. It doesn't name explicit exclusions or say when not to prepare, but the sequencing context is strong.

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