mobile_launch_app
Launch mobile apps on iOS or Android devices by specifying the package name, enabling automated app testing and interaction through the Mobile Next MCP server.
Instructions
Launch an app on mobile device. Use this to open a specific app. You can find the package name of the app by calling list_apps_on_device.
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| device | Yes | The device identifier to use. Use mobile_list_available_devices to find which devices are available to you. | |
| packageName | Yes | The package name of the app to launch |
Implementation Reference
- src/server.ts:224-235 (registration)Registration of the mobile_launch_app tool, including schema definition and inline handler that validates input, requires a selected robot/device, calls robot.launchApp, and returns success message.tool( "mobile_launch_app", "Launch an app on mobile device. Use this to open a specific app. You can find the package name of the app by calling list_apps_on_device.", { packageName: z.string().describe("The package name of the app to launch"), }, async ({ packageName }) => { requireRobot(); await robot!.launchApp(packageName); return `Launched app ${packageName}`; } );
- src/server.ts:230-234 (handler)Inline handler function for mobile_launch_app tool: requires a device/robot to be selected, launches the app via robot.launchApp, returns confirmation.async ({ packageName }) => { requireRobot(); await robot!.launchApp(packageName); return `Launched app ${packageName}`; }
- src/android.ts:116-118 (helper)AndroidRobot.launchApp implementation: uses adb shell monkey to launch the app with LAUNCHER intent.public async launchApp(packageName: string): Promise<void> { this.adb("shell", "monkey", "-p", packageName, "-c", "android.intent.category.LAUNCHER", "1"); }
- src/iphone-simulator.ts:72-74 (helper)Simctl.launchApp (iPhone Simulator) implementation: uses xcrun simctl launch.public async launchApp(packageName: string) { this.simctl("launch", this.simulatorUuid, packageName); }
- src/ios.ts:140-143 (helper)IosRobot.launchApp implementation: asserts tunnel, uses go-ios launch command.public async launchApp(packageName: string): Promise<void> { await this.assertTunnelRunning(); await this.ios("launch", packageName); }