Back to skills
SKILL.md
Chrome Devtools Extensions
ASecurityInstall, manage, reload, and trigger Chrome extensions via Chrome DevTools MCP. Enables agent-driven extension testing, side-loading unpacked extensions, and extension action automation.
- 10 stars
- 0 votes
- 0 copies
- 5 views
- Added September 9, 2026
Works with
Security analysis
100/100npx -y skills add yanacuti1121/Yana-AI --skill chrome-devtools-extensions --agent claude-codeAre you the author of Chrome Devtools Extensions?
Add the live security badge to your README. It updates with every re-scan.
[](https://www.skillsdirectory.com/skills/yanacuti1121-chrome-devtools-extensions)---
name: chrome-devtools-extensions
description: Install, manage, reload, and trigger Chrome extensions via Chrome DevTools MCP. Enables agent-driven extension testing, side-loading unpacked extensions, and extension action automation.
origin: https://github.com/ChromeDevTools/chrome-devtools-mcp (Apache-2.0)
license: Apache-2.0
version: 1.0.0
compatibility: claude-sonnet-4-6, claude-opus-4-7
---
# Chrome DevTools Extensions
Manage Chrome extensions programmatically through 5 MCP tools — install, reload, trigger, list, uninstall.
## When to Use
- Testing an unpacked extension during development (side-load → trigger → verify)
- Automating extension regression tests (install specific version → run checks)
- Validating extension behavior after code changes without manual clicks
- Agent workflow that depends on a browser extension being active (ad-blocker, auth helper)
## Do NOT use for
- Publishing extensions to Chrome Web Store (use CWS dashboard)
- Bypassing extension security reviews for production deployments
- Installing extensions from unknown sources on production systems (security risk)
## MCP Tools (5)
```
browser_extension_install — install extension from .crx path or unpacked dir
browser_extension_list — list all installed extensions (id, name, version, enabled)
browser_extension_reload — reload an extension by id (applies code changes)
browser_extension_trigger — click extension action button (opens popup or runs background)
browser_extension_uninstall — remove extension by id
```
## Usage Pattern
```yaml
# Development workflow: side-load → test → iterate
1. browser_extension_install: path: "./dist/my-extension"
# → returns extensionId
2. browser_navigate: url: "https://app.example.com"
3. browser_extension_trigger: extensionId: "abc123..."
# → triggers extension action on current page
4. browser_screenshot
# → verify extension popup / overlay appeared
# After code change:
5. browser_extension_reload: extensionId: "abc123..."
6. browser_extension_trigger: extensionId: "abc123..."
# → test again with updated code
```
## Extension List Response
```json
[
{
"id": "abc123def456",
"name": "My Dev Extension",
"version": "0.4.2",
"enabled": true,
"type": "extension"
}
]
```
## CI Integration Pattern
```yaml
# In agent test loop:
setup:
- browser_extension_install: path: "$EXTENSION_DIST_DIR"
per_test:
- browser_navigate: url: "$TEST_URL"
- browser_extension_trigger: extensionId: "$EXT_ID"
- browser_wait_for: selector: "[data-ext-loaded]"
- browser_screenshot # capture result
teardown:
- browser_extension_uninstall: extensionId: "$EXT_ID"
```
## Anti-Fake-Pass Checklist
- [ ] `browser_extension_install` returned a valid extensionId (not null)
- [ ] `browser_extension_list` confirms extension is `enabled: true` before trigger
- [ ] After `browser_extension_reload`, waited for extension service worker to restart
- [ ] `browser_extension_uninstall` called in teardown to avoid state leakage between tests
- [ ] Extension path is local/trusted — never install from arbitrary remote URLs
Attribution
Comments
Loading comments…
Newsletter
Get the weekly list of safe new skills, and the ones we pulled.