Skip to main content
Glama

mobile_open_url

Open URLs in mobile device browsers using the Mobile Next MCP server. Specify device identifier and URL to launch web content on iOS or Android devices.

Instructions

Open a URL in browser on device

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
deviceYesThe device identifier to use. Use mobile_list_available_devices to find which devices are available to you.
urlYesThe URL to open

Implementation Reference

  • src/server.ts:327-338 (registration)
    Registration of the MCP tool 'mobile_open_url' using the 'tool' helper function. Includes the tool name, description, input schema (url: string), and inline handler that requires a selected robot/device and calls robot.openUrl(url).
    tool(
    	"mobile_open_url",
    	"Open a URL in browser on device",
    	{
    		url: z.string().describe("The URL to open"),
    	},
    	async ({ url }) => {
    		requireRobot();
    		await robot!.openUrl(url);
    		return `Opened URL: ${url}`;
    	}
    );
  • Inline handler function for the 'mobile_open_url' tool. Ensures a device/robot is selected via requireRobot(), then invokes the platform-specific robot.openUrl(url) method, and returns a success message.
    async ({ url }) => {
    	requireRobot();
    	await robot!.openUrl(url);
    	return `Opened URL: ${url}`;
    }
  • Android-specific implementation of openUrl in AndroidRobot class, using ADB to start an intent with ACTION_VIEW and the provided URL.
    public async openUrl(url: string): Promise<void> {
    	this.adb("shell", "am", "start", "-a", "android.intent.action.VIEW", "-d", url);
    }
  • iOS physical device implementation of openUrl in IosRobot, delegating to WebDriverAgent (WDA).
    public async openUrl(url: string): Promise<void> {
    	const wda = await this.wda();
    	await wda.openUrl(url);
    }
  • iOS Simulator implementation of openUrl in Simctl class (extends Robot), delegating to WebDriverAgent (WDA), with commented alternative using simctl.
    public async openUrl(url: string) {
    	const wda = await this.wda();
    	await wda.openUrl(url);
    	// alternative: this.simctl("openurl", this.simulatorUuid, url);
    }

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/EmpathySlainLovers/MCP'

If you have feedback or need assistance with the MCP directory API, please join our Discord server