Skip to main content
Glama

Launch App

mobile_launch_app

Launch a mobile app directly by its package name or localized label, skipping home-screen navigation. Optionally wait for it to reach the foreground before continuing.

Instructions

Launch an app directly without navigating the home screen. Identify it by packageName or by the label in the device's current locale. By default, wait until the requested app is confirmed in the foreground; use mobile_launch_and_ready when a fresh validated screenshot is also needed.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
modeNoresume keeps the existing app task; cold force-stops the package before launching and is opt-inresume
deviceYesThe device identifier to use. Use mobile_list_available_devices to find which devices are available to you.
localeNoComma-separated BCP 47 locale tags to launch the app with (e.g., fr-FR,en-GB)
appNameNoThe app label in the device's current locale, for example 設定 or Settings
waitForNoReadiness conditions. Foreground defaults to true; a target can require an exact visible UI field.
packageNameNoThe package name of the app to launch

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.0.1

TDQS

A4/5.0
Behavior3/5

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

Annotations already provide readOnlyHint=false, openWorldHint=true, and destructiveHint=false, so the safety profile is present. The description adds useful behavioral context: direct launch and waiting for foreground confirmation. However, it does not disclose side effects such as cold-mode force-stopping, which appears only in the schema, so the behavioral disclosure stops short of being rich.

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 with no filler: the first states the core action and identification strategy, the second states the default wait behavior and names the sibling alternative. Every sentence earns its place and the key information is front-loaded.

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 tool with six parameters and a nested waitFor object, the description covers the essential concepts: how to identify the app, the default readiness behavior, and when to switch to the screenshot-returning variant. It could additionally summarize cold-mode effects, but the schema already documents those, so the description is complete enough for correct tool selection.

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?

All six parameters have schema descriptions, so the tool description does not need to compensate for missing semantics. It reinforces the packageName-versus-label choice and the foreground wait default, but adds no meaning beyond what the schema already states.

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 states a specific verb and resource: launch an app directly without navigating the home screen. It also names the two identification routes (packageName or locale label), which clearly distinguishes the tool's purpose from home-screen automation and from the sibling launch variant.

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 gives explicit routing guidance: by default it waits for the foreground app, and mobile_launch_and_ready should be used when a fresh validated screenshot is also needed. It does not enumerate exclusions versus other launch-ish siblings like mobile_ensure_app or mobile_open_app_link, but the core alternative is clearly covered.

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