Skip to content

Claude-in-Chrome: background tab creation + tab cleanup #31119

Description

@timthemit53

Problem

When Claude Code uses the Claude-in-Chrome MCP tools (tabs_create_mcp, navigate), Chrome steals focus from whatever application the user is working in. This is disruptive when Claude is doing browser work in the background while the user works in another app (IDE, terminal, spreadsheet, etc.).

Additionally, Claude has no way to close tabs it opened during a session. Over the course of a conversation, this leads to tab accumulation — Claude opens tabs for research, validation, or automation, but can't clean up after itself.

Requested Changes

1. Background tab creation / navigation

Add an active parameter (default true for backward compatibility) to tabs_create_mcp and navigate:

tabs_create_mcp({ active: false })  // creates tab without bringing Chrome to foreground
navigate({ url: "...", tabId: 123, active: false })  // navigates without stealing focus

Chrome's native API already supports this — chrome.tabs.create({ active: false }) opens a tab in the background. The extension just needs to pass the parameter through.

2. Tab close capability

Add a tabs_close_mcp tool that lets Claude close tabs it previously opened:

tabs_close_mcp({ tabId: 123 })

Scoped to the MCP tab group only (can't close tabs Claude didn't open). This lets Claude clean up research/validation tabs when done, keeping the user's browser tidy.

Use Case

User is VP of Operations running a local scheduling tool. Claude automates browser-based validation (reading grid state, checking DOM, taking screenshots) while the user works in Excel/terminal. Every tabs_create_mcp call pops Chrome to foreground, forcing the user to alt-tab back. Over a session, 5-10 orphaned tabs accumulate.

Environment

  • Windows 11
  • Claude Code CLI (Opus 4.6)
  • Claude-in-Chrome extension

Workaround

User currently uses Windows Virtual Desktops to isolate Chrome, but this is friction — not a fix.

🤖 Generated with Claude Code

Metadata

Metadata

Assignees

No one assigned

    Labels

    duplicateThis issue or pull request already exists

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions