activate_tab_by_id
Focus a specific Chrome tab by its unique ID, bringing it to the front for active use. Requires the tab ID from get_tabs output, enabling precise tab control in the MCP Browser Tabs Server.
Instructions
🔥 PREFERRED METHOD: Activate (focus) a specific tab in Google Chrome using its unique tab ID. Brings the tab to the front and makes it active. Extract the Tab ID from [Tab ID: 1234567890] in get_tabs output.
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| tabId | Yes | The exact Tab ID number from [Tab ID: xxxxx] in get_tabs output - NOT the display number |
Implementation Reference
- src/index.ts:140-172 (handler)Core handler function that executes the activation of a Chrome tab by its unique ID using AppleScript executed via osascript.async function activateChromeTabById(tabId: number): Promise<void> { const script = ` tell application "Google Chrome" set targetTabID to "${tabId}" set tabFound to false repeat with w in (every window) repeat with i from 1 to count of (every tab of w) set t to item i of (every tab of w) if (id of t) as string = targetTabID then set (active tab index of w) to i set index of w to 1 set tabFound to true exit repeat end if end repeat if tabFound then exit repeat end repeat if not tabFound then error "Tab with ID " & targetTabID & " not found" end if end tell `; try { await execAsync(`osascript -e '${script}'`); } catch (error) { throw new Error( `Failed to activate Chrome tab with ID ${tabId}: ${error instanceof Error ? error.message : String(error)}` ); } }
- src/index.ts:342-353 (handler)MCP tool dispatch handler block that parses arguments, calls the core activateChromeTabById function, and returns success response.if (name === "activate_tab_by_id") { const { tabId } = request.params.arguments as { tabId: number }; await activateChromeTabById(tabId); return { content: [ { type: "text", text: `✅ Successfully activated tab with ID ${tabId}`, }, ], }; }
- src/index.ts:253-256 (schema)Zod schema defining the input parameter 'tabId' for the activate_tab_by_id tool.z.object({ tabId: z.number().int().positive().describe("The exact Tab ID number from [Tab ID: xxxxx] in get_tabs output - NOT the display number"), }) ),
- src/index.ts:249-257 (registration)Tool registration in the list of tools returned by tools/list, including name, description, and schema.{ name: "activate_tab_by_id", description: "🔥 PREFERRED METHOD: Activate (focus) a specific tab in Google Chrome using its unique tab ID. Brings the tab to the front and makes it active. Extract the Tab ID from [Tab ID: 1234567890] in get_tabs output.", inputSchema: zodToJsonSchema( z.object({ tabId: z.number().int().positive().describe("The exact Tab ID number from [Tab ID: xxxxx] in get_tabs output - NOT the display number"), }) ), },