Skip to main content
Glama
mobile-debug-mcp

mobile-debug-mcp

run_journey

Run an ordered sequence of app actions (start, tap, wait) and deterministic assertions on a mobile device; stops at first failed step.

Instructions

Run an ordered, bounded sequence of start_app, tap, wait, and deterministic assertion steps against one device. Stops after the first failed step. Tap steps may include expectedState from a successful same-device get_ui_tree. A failed condition blocks that input, retains fresh condition evidence through a diagnostics reference in compact mode, and stops subsequent steps. Conditions are not journey defaults or supported on other step types.

Input Schema

NameRequiredDescriptionDefault
stepsYes
defaultsNo
deviceIdNo
platformYes
responseModeNocompact
systemTraceIdNoExplicit active same-device system trace. Invalid references prevent all journey input. Capture lifetime is controlled separately.
captureOnFailureNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv0.34.0

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 does disclose real behavior: fail-fast on the first failed step, that a failed condition blocks that input and stops subsequent steps, and that evidence is retained via a diagnostics reference in compact mode. However, it is silent on prerequisites (device availability/ownership), retry or cleanup behavior, and what verificationMode, responseMode and captureOnFailure actually change at runtime.

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?

The scoping and step vocabulary are front-loaded in sentence one, and every later sentence adds a distinct rule rather than restating the name. Sentence three is dense, compressed jargon ('retains fresh condition evidence through a diagnostics reference in compact mode') that costs a reread, but there is no outright filler.

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

Completeness3/5

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

For a complex nested 7-parameter batch executor with no annotations and no output schema, the definition covers purpose and failure semantics adequately but leaves the operational surface thin. An agent still lacks guidance on response shape/responseMode, timeout and defaults semantics, and device resolution, all of which matter for invoking this correctly.

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 description coverage is only 14% across 7 parameters, so the description must compensate and largely does not. It adds genuine meaning only for the tap-level expectedState (sourced from a successful same-device get_ui_tree) and clarifies that 'conditions' do not belong in the defaults object; platform, deviceId, responseMode, captureOnFailure, verificationMode, actionTimeoutMs and verificationTimeoutMs get nothing beyond their JSON schema shapes.

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 a specific verb+resource+scope: run an ordered, bounded sequence of start_app, tap, wait and assertion steps against one device. It also names the exact step vocabulary, which lets an agent distinguish this batched executor from the single-action siblings (tap, wait_for_ui, expect_state) without opening the schema.

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?

Usage is implied rather than stated: the description makes clear this is for multi-step ordered flows that should abort on first failure, but it never says 'use this instead of chaining tap/wait_for_ui calls' or names an alternative. The one explicit exclusion — conditions are not journey defaults nor supported on other step types — is a step-level constraint, not a tool-selection rule.

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