## Problem The browser tool at `https://172.16.168.19/tools/browser` cannot visit any web page. ## Root Cause Three-layer gap: 1. **SLM frontend** (`BrowserTool.vue`) calls `/api/browser/mcp/navigate`, `/api/browser/mcp/status`, `/api/browser/mcp/screenshot` 2. **SLM backend** (`autobot-slm-backend/`) has **zero browser routes** — these return 404 3. **Browser worker** (.25:3000) only has `/search`, `/test-frontend` — missing `/navigate`, `/screenshot`, `/status` ## Fix 1. Add persistent-page navigate/screenshot/status endpoints to `playwright-server.js` on .25 2. Add `api/browser.py` to SLM backend — MCP bridge that proxies to browser worker at .25:3000 3. Register new router in `autobot-slm-backend/main.py` 4. Deploy both components ## Acceptance Criteria - [ ] `GET /api/browser/mcp/status` returns connected status - [ ] `POST /api/browser/mcp/navigate {url}` navigates to any http/https URL - [ ] `POST /api/browser/mcp/screenshot` returns base64 screenshot - [ ] Browser tool can visit any web page including external sites - [ ] Go back/forward/refresh work
Activity
mrveiss commentedon Feb 22, 2026
Implementation Complete
Root cause: Three-layer gap in the SLM stack:
BrowserTool.vue(SLM frontend) calls/api/browser/mcp/*Fix applied:
autobot-browser-worker/playwright-server.js (deployed to .25)
navPage(Playwright page that stays open across requests)GET /status— returns browser/page connection statePOST /navigate— navigates page; handlesjavascript:scheme for back/forward/refreshPOST /screenshot— returns current page as base64 PNG--ignore-certificate-errorsto Chromium args (self-signed cert on .19)autobot-slm-backend/api/browser.py (new file, commit 4aef565)
/browser/mcpprefix172.16.168.25:3000BROWSER_WORKER_URLenv var (defaults tohttp://172.16.168.25:3000)Registered in api/init.py and main.py (commit 4aef565)
Verified:
GET /api/browser/mcp/status→{"status":"connected", ...}✓POST /api/browser/mcp/navigatewithhttp://172.16.168.19/→{"success":true,"url":"https://172.16.168.19/",...}✓POST /api/browser/mcp/screenshot→ base64 PNG 384KB ✓Note:
playwright-server.jslocal git copy not committed due to pre-existingconsole.logviolations (#1087 followup tracked in #1124)fix(browser): add SLM browser API routes for BrowserTool (#1120)
Merge pull request #1126 from mrveiss/fix/1116-f541
fix(browser): resolve Playwright Chromium launch failure after servic…
fix(browser): resolve Playwright Chromium launch failure (#4060) (#4066)