browser-smoke
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@browser-smokeOpen http://localhost:3000 and take a screenshot"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Browser Smoke
MCP browser smoke testing plugin for OpenCode — Playwright-based UI testing via browser automation. Jalankan smoke test terhadap web app langsung dari OpenCode dengan 24 tools.
Prerequisites
Requirement | Version |
Node.js | >= 18 |
Python | >= 3.8 |
OpenCode | terinstal |
Related MCP server: Browser Testing MCP Server
Quick Install
npx browser-smoke initCLI akan interaktif nanya:
Pilih lokasi instalasi:
[1] Global — untuk semua project (~/.config/opencode)
[2] Local — hanya project ini (./opencode.json)
[3] Cancel
Pilih [1/2/3]:Proses:
Setup Python virtual environment
Install dependencies (
fastmcp,playwright,pixelmatch,Pillow)Install Chromium browser
Config
opencode.json+ skill file
Restart OpenCode setelah selesai.
Opsi Init
Command | Description |
| Interaktif (tanya global/local) |
| Global, skip prompt |
| Local, skip prompt |
| Preview config tanpa install |
Manual Config
Kalo init gak bisa dipake, tambahin manual ke opencode.json:
{
"mcp": {
"browser-smoke": {
"type": "local",
"command": [".browser-smoke/.venv/bin/python3", "-m", "server"],
"cwd": ".browser-smoke/mcp"
}
}
}Tools (24 MCP Tools)
Navigasi & Page
Tool | Description |
| Buka URL. Returns title + status code + screenshot |
| Buka tab baru, fokus ke tab baru |
| List semua tab (title, URL, active status) |
| Tutup browser session |
| Scroll page (default: down 200px) |
Interaksi DOM
Tool | Description |
| List semua elemen interaktif (button, input, link) + CSS selector |
| Klik element berdasarkan CSS selector |
| Ketik teks ke input |
| Auto-fill input (text/email/password/search/number) |
Screenshot & Visual
Tool | Description |
| Screenshot halaman saat ini |
| Screenshot + diff dengan baseline. Threshold default 0.01 (1%) |
| Highlight element dengan outline |
JavaScript & Network
Tool | Description |
| Execute JavaScript di page context |
| Inject JS sebelum page load (mock API, polyfills) |
| Intercept network requests (mode: start/stop/get) |
| Block resources by glob pattern (*.jpg, *.png, analytics) |
Console & Error
Tool | Description |
| Ambil captured console logs |
| Ambil captured JS runtime errors |
Cookies & Storage
Tool | Description |
| Get all cookies |
| Set cookie |
| Clear all cookies |
| localStorage/sessionStorage access (all/get/set/clear) |
Report
Tool | Description |
| Generate smoke test report markdown |
Background
Tool | Description |
| Hidden page untuk background processing (open/exec/close) |
Usage Guide
Basic Smoke Test
Load skill
browser-smokedi OpenCodeTest flow:
browser_open(url="http://localhost:5173")
browser_extract_dom()
browser_click(selector="button:has-text('Login')")
browser_type(selector="input[type='email']", text="test@test.com")
browser_type(selector="input[type='password']", text="Test1234!")
browser_click(selector="button:has-text('Submit')")
browser_screenshot()
browser_console()
browser_errors()
browser_report(results_json)
browser_close()Network Capture
browser_network_capture(mode="start", patterns="*.api.*,*.json")
# lakukan interaksi...
browser_network_capture(mode="get") # lihat request/response
browser_network_capture(mode="stop")Script Injection
browser_inject_script(script="window.__TEST_MODE__=true")
browser_open(url="http://localhost:5173")
browser_execute(js_code="window.__TEST_MODE__") # → trueVisual Regression
browser_open(url="http://localhost:5173")
browser_screenshot_diff(name="homepage") # baseline (first run)
# setelah code change...
browser_screenshot_diff(name="homepage") # diff with baselineSkill Integration
Setelah install, skill browser-smoke otomatis terdaftar. Di OpenCode:
skill browser-smokeSkill ini menyediakan metodologi smoke testing lengkap dengan failure analysis loop.
Troubleshooting
Masalah | Solusi |
| Pastikan |
Chromium error |
|
Connection refused | Pastikan app target jalan ( |
Python not found |
|
Development
git clone https://github.com/sukirman1901/browser-smoke.git
cd browser-smoke
npm link # biar bisa npx browser-smoke dari lokalLicense
MIT
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
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/sukirman1901/browser-smoke'
If you have feedback or need assistance with the MCP directory API, please join our Discord server