Skip to main content
Glama

type_text

Enter text into the focused Android field, or tap a target first, then optionally clear existing content and submit with Enter.

Instructions

Type text into the focused field. Optionally tap a target first to focus it, clear it, and press enter afterwards.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
xNoScreen x (with y), from a screenshot or get_ui
yNo
idNoMatch resource id / Compose testTag
textNoMatch element text or content description (case-insensitive)
clearNoDelete the existing text first
exactNoRequire the whole text/id to match instead of a substring
indexNoElement [ref] from get_ui or a change report
valueYesPrintable ASCII text to type
serialNoadb serial; optional when exactly one device is connected
submitNoPress enter afterwards
observeNoWhat to return after the action: changes (default: only what changed since you last saw the screen, full tree on a new screen), ui (full tree), screenshot, both (tree + screenshot), nonechanges
settle_msNoWait before observing
occurrenceNoWhich match to use when several match (0-based)

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A3.7/5.0
Behavior3/5

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

With no annotations, the description must carry behavioral burden; it usefully discloses that a target can be tapped first, cleared, and that enter can be pressed afterwards. It omits other consequential behaviors present in the schema — observation mode (changes/ui/screenshot), settle delay, multi-match disambiguation, and device targeting — and doesn't say what happens if the target isn't found.

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 core action, zero filler. Every clause maps to an actual capability in the schema.

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?

Hmm — reconsider: 13 params, no annotations, no output schema. The description covers the core flow and the schema covers all field semantics richly (92%). Missing: failure behavior and the observe-mode return shape, but observe is fully described in-schema. This is arguably a 4.

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 92%, so parameters are already well documented; baseline is 3. The description adds a coherent framing of the targeting→clear→submit sequence but no details beyond the schema's own field descriptions.

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 and resource ('Type text into the focused field') and names the optional targeting step. It is distinguishable from siblings like tap or press_key, though it doesn't spell out the relationship to those tools explicitly.

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?

Implies usage ('into the focused field', optionally tap a target first to focus it), which gives an agent a workable mental model. However, there is no explicit guidance on when to use this vs. press_key/tap or what to do when no field is focused.

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