Skip to main content
Glama

android_flow

Destructive

Execute up to 40 UI automation steps on an Android phone with guard conditions, captures, and trace output under a 20-second deadline. No shell or file changes allowed.

Instructions

Execute 1..40 bounded UI steps locally on the phone with guards, captures, trace output and a maximum 20 second deadline. Shell and file mutation are not available inside flows.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
stepsYes
timeoutMsNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv0.8.1

TDQS

A4.2/5.0
Behavior4/5

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

The description adds meaningful behavioral context beyond the annotations: execution is local, bounded to 1..40 steps, capped at 20 seconds, and excludes shell/file mutation. It also mentions guards, captures, and trace output. It does not contradict the destructiveHint or other annotations.

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, no filler, with the core action front-loaded and the key limitation stated immediately after. Every clause adds useful information.

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

Completeness2/5

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

This is a complex tool with a nested step schema, no output schema, and no documentation of what values the required 'type' field accepts. The description gives a good high-level summary, but an agent still lacks enough information to correctly construct steps, interpret guards/captures, or understand error/fallback behavior.

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

Parameters4/5

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

With 0% schema description coverage, the description compensates by explaining that 'steps' are UI steps bounded to 1..40 and that the deadline is 20 seconds, mapping to steps and timeoutMs. It also hints at step-level concepts like guards and captures. It does not enumerate valid step 'type' values, but the schema still provides the structural shape.

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 opens with 'Execute 1..40 bounded UI steps locally on the phone', naming a specific verb, resource, and scope. It also distinguishes the tool from shell/file siblings by explicitly stating 'Shell and file mutation are not available inside flows.'

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 description clearly implies use for bounded, local UI automation sequences and explicitly says shell and file mutation are not available, giving a useful when-not signal. However, it does not name sibling alternatives such as android_batch or android_act_and_observe, so the routing guidance is not fully explicit.

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