DevLab MCP Suite
Provides tools for Android device automation via ADB, including device inspection, app management, UI interaction, screenshots, logcat, and workflow execution.
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., "@DevLab MCP Suiteopen browser, navigate to game, and capture canvas 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.
DevLab MCP Suite
Modular testing and automation MCP servers for Android devices, desktop browsers, canvas games, and visual regression.
DevLab MCP Suite
├── @tanguito/android-dev-mcp ← Android device automation (ADB)
├── @tanguito/browser-dev-mcp ← Desktop browser automation (Playwright)
├── @tanguito/visual-regression-mcp ← Visual regression & pixel diff
└── @tanguito/devlab-shared ← Shared contracts and helpersThe Testing Triangle
┌──────────────────────┐
│ visual-regression │ ← pixel-perfect diffs
│ screenshot compare │
└──────────┬───────────┘
│
┌──────────────┴──────────────┐
│ │
┌──────┴──────┐ ┌───────┴──────┐
│ android │ │ browser │
│ device tests│ │ canvas/web │
└──────────────┘ └──────────────┘
browser-dev-mcp screenshot → visual-regression-mcp diff → markdown reportThree independent testing layers, same tool patterns, same evidence system, single monorepo.
5-Minute Quick Start
# 1. Clone and install
git clone https://github.com/Tanguito86/devlab-mcp.git
cd devlab-mcp
pnpm install
# 2. Environment check + auto-fix
pnpm setup
# 3. Build and test
pnpm build
pnpm test # 67 tests: 42 android + 8 browser + 8 visual + 9 shared
# 4. Your first browser workflow
node examples/browser-hello-world/run-hello-world.jsYou just ran a 5-step browser workflow: open → screenshot → console → errors → report. Takes ~5 seconds.
Package Table
Package | Purpose | Version | Tests | npm | Status |
| Types, schemas, helpers | 0.1.0 | 9 |
| Pending publish |
| Device automation (ADB) | 1.2.0 | 42 |
| ✅ Published |
| Browser/canvas (Playwright) | 1.0.0 | 8 |
| Pending publish |
| Screenshot diffing | 0.1.0 | 8 |
| Pending publish |
Total: 67 tests | 70 tools | 4 packages
Publishing:
android-dev-mcpis already on npm.shared,browser, andvisual-regressionare ready. See publishing guide for exact commands.
Case Study: Galaxy Raiders
We validated browser-dev-mcp and visual-regression-mcp against a real 68-script HTML5 Canvas shmup with 5 bosses across 20 levels.
Browser Testing
Metric | Result |
Workflows executed | 4 (smoke, boss ladder, performance, console audit) |
Total steps | 81/81 (100%) |
Page errors | 0 across all workflows |
Bosses validated | 5/5 (Crabtron, Serpentrix, Colossus, Lieutenant, Emperor) |
Screenshots | 13 real rendered canvas captures |
Leak test | 3/3 consecutive cycles clean |
Visual Regression
boss-lv5: 81 kB, 360×640, 0 changed pixels, ✅ PASS
boss-lv20: 90 kB, 360×640, 0 changed pixels, ✅ PASSPipeline: browser-dev-mcp captures canvas screenshots → visual-regression-mcp diffs against baselines → markdown report with pass/fail.
Packages
browser-dev-mcp
Desktop browser automation via Playwright. 24 tools for navigation, screenshots, canvas game testing, JavaScript evaluation, keyboard/mouse input, and evidence capture.
pnpm --filter @tanguito/browser-dev-mcp build
pnpm --filter @tanguito/browser-dev-mcp test
pnpm --filter @tanguito/browser-dev-mcp run doctorKey tools: browser_open_url, browser_screenshot, browser_screenshot_canvas, browser_click, browser_click_percent, browser_press_key, browser_type_text, browser_evaluate_js, browser_evaluate_game_state, browser_wait_for_canvas_change, browser_get_console_logs, browser_get_page_errors, and 12 more.
visual-regression-mcp
Visual regression testing — pixel comparison, diff generation, markdown reporting. 4 tools: visual_compare_images, visual_create_baseline, visual_compare_folder, visual_generate_report. Zero native dependencies — pure Node.js PNG parsing with zlib.
pnpm --filter @tanguito/visual-regression-mcp build
pnpm --filter @tanguito/visual-regression-mcp test
pnpm --filter @tanguito/visual-regression-mcp run doctorandroid-dev-mcp
Android device automation via ADB. 42 tools for device inspection, app management, UI interaction, screenshots, logcat, and workflow execution.
pnpm --filter @tanguito/android-dev-mcp build
pnpm --filter @tanguito/android-dev-mcp testdevlab-shared
Minimal shared contracts: textResponse, sanitizeName, validateSessionId, RegisterTool, WorkflowStep, StepResult, and base evidence types. Zero IO, zero runtime dependencies. 9 tests, full doctor check. 107 lines.
pnpm --filter @tanguito/devlab-shared build
pnpm --filter @tanguito/devlab-shared test
pnpm --filter @tanguito/devlab-shared run doctorExamples
Example | Time | What it does |
~5s | Opens test page, takes screenshot, collects console/errors | |
~15s | Loads Galaxy Raiders, starts game, captures canvas, jumps to boss | |
~2s | Pixel-diff Galaxy Raiders boss screenshots against baselines |
# Hello World
node examples/browser-hello-world/run-hello-world.js
# Galaxy Raiders (requires game running on localhost:5173)
node examples/galaxy-raiders/run-galaxy-smoke.jsScripts
Command | Description |
| Detect environment, auto-install Chromium, suggest fixes |
| Build all packages |
| Run all 67 tests |
| Health checks per package (use |
| TypeScript type checking |
| Remove dist/ from all packages |
| Preview npm package contents |
| Create a version changeset |
| Bump versions from changesets |
| Publish changed packages to npm |
Troubleshooting
"Browser not open" on WSL
WSL's headless Chromium shell is missing shared libraries. browser-dev-mcp automatically uses the full Chromium binary if PLAYWRIGHT_CHROMIUM_EXECUTABLE_PATH is set.
# Find your Chromium binary
ls ~/.cache/ms-playwright/chromium-*/chrome-linux64/chrome
# Set the env var
export PLAYWRIGHT_CHROMIUM_EXECUTABLE_PATH=/home/user/.cache/ms-playwright/chromium-1223/chrome-linux64/chromeRun pnpm setup — it detects WSL and suggests the fix automatically.
Playwright not found
pnpm setup # Auto-detects and suggests fixes
npx playwright install chromium # Manual installADB not found (android-dev-mcp only)
ADB is optional — only needed for @tanguito/android-dev-mcp.
# Install Android SDK Platform Tools
# https://developer.android.com/tools/releases/platform-toolsRepository Structure
devlab-mcp/
pnpm-workspace.yaml
package.json # Root scripts + pnpm setup
.changeset/ # Changesets configuration
.github/workflows/ci.yml # CI matrix (Node 20/22)
scripts/
devlab-setup.js # Environment detector + auto-fixer
packages/
shared/ # @tanguito/devlab-shared (107 lines)
android-dev-mcp/ # @tanguito/android-dev-mcp (42 tools)
browser-dev-mcp/ # @tanguito/browser-dev-mcp (24 tools)
visual-regression-mcp/ # @tanguito/visual-regression-mcp (4 tools)
examples/
browser-hello-world/ # 5-step first workflow
galaxy-raiders/ # Real canvas game smoke test
galaxy-visual-regression/ # Pixel-diff boss screenshots
docs/
devlab-suite-v1-freeze.md # v1 freeze document
architecture.md # Suite architecture decisions
case-study-galaxy-raiders.md # Full Galaxy Raiders validation
publishing.md # How to version and publishArchitecture
Monorepo with pnpm workspaces — shared iteration, single CI
Independent packages — each installable, runnable, testable in isolation
Shared is minimal — 107 lines of pure contracts, zero runtime coupling
Changesets for independent versioning within the monorepo
Workflow-first — declarative JSON test plans executed by MCP servers
Full architecture → Freeze document →
License
MIT — see individual package LICENSE files.
This server cannot be installed
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/Tanguito86/devlab-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server