Manage Chrome extensions
manage_extensionsList, enable, disable, load, or unload Chrome extensions in the active profile. Control the master switch and manage unpacked extensions for browser automation.
Instructions
List, enable, disable or load Chrome extensions.
Two separate mechanisms are in play. The master switch: Chrome runs with --disable-extensions by default, so extensions installed in the profile stay dark until it is turned on. And unpacked extensions loaded from a folder on disk. The master switch governs both — with it off, unpacked extensions stay registered but do not load.
"load" only works on Chromium or Chrome for Testing. Official Google Chrome builds have ignored --load-extension since v137 (still true on Chrome 151, even with --enable-unsafe-extension-debugging), and this tool says so rather than pretending it worked. On official Chrome the working path is: install the extension once from the Web Store into a persistent profile, then switch it on with "on".
Extensions only persist in a persistent profile — on the default ephemeral one nothing can stay installed.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| path | No | Folder containing the extension's manifest.json, for "load" and "unload". Ignored by the other actions. | |
| action | No | "list" shows the extensions installed in the active profile plus the current state, and changes nothing. "on" and "off" flip the master switch. "load" registers an unpacked extension from `path` and implies "on". "unload" stops loading `path`, or every unpacked extension when `path` is empty. Every action except "list" restarts the browser. | list |
| browser | No | Which browser to act on. Each name is an independent Chrome, created on first use. Omit for the shared default; parallel agents each need their own name. | default |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| result | Yes |