insideos-designs avatar

Cowork Qa

insideos-designs/cowork-qa-mcp

Playwright-backed browser automation for LLMs with a twist: every session starts with a stated goal, and every action (goto, click, fill, press, eval) gets logged with timestamps, post-action URLs, and aria-snapshots. When you call session_end, you get a structured JSON trace on disk that a second LLM can read via qa_get_trace to judge whether the goal was actually met. Five tools, stdio transport, runs on npx with no cloud dependency. Reach for this when you need an audit trail of what your agent did in the browser, not just real-time HTML responses. Each session gets its own Chromium context, and you can toggle headless mode with an env var to watch it work.

tools
5
transport
STDIO
env vars
2
last updated
May 6, 2026

Tools

5 tools

Public tool metadata for what this MCP can expose to an agent.

session_startOpen a fresh tab, optional starting URL, return a session id

Open a fresh tab, optional starting URL, return a session id

No parameter schema in public metadata yet.

session_actRun one of: goto, click, fill, press, eval. Records the step.

Run one of: goto, click, fill, press, eval. Records the step.

No parameter schema in public metadata yet.

session_observeReturn current URL + full aria-snapshot of the page

Return current URL + full aria-snapshot of the page

No parameter schema in public metadata yet.

session_endClose the tab, persist the trace to disk, return the file path

Close the tab, persist the trace to disk, return the file path

No parameter schema in public metadata yet.

qa_get_traceReturn the goal, every step, final URL, and final aria-snapshot — formatted for an LLM to read

Return the goal, every step, final URL, and final aria-snapshot — formatted for an LLM to read

No parameter schema in public metadata yet.

Sponsors

Configuration

COWORK_QA_HEADED

Set to '1' to launch Chromium with a visible window instead of headless.

COWORK_QA_DATA

Directory where session traces (<session-id>.json) are written. Defaults to <cwd>/.cowork-qa.

Readme

cowork-qa-mcp

demo

A Model Context Protocol server that gives an LLM a real Chromium browser, records every action it takes toward a stated goal, and hands back a structured trace so the LLM (or a second LLM) can decide whether the goal was actually achieved.

Built on Playwright. Five tools, one binary, no cloud dependency.

Why

Most browser-tool MCP servers are stateless — the LLM clicks, gets HTML back, repeats. There's no record of what happened, no way to grade the run after the fact, and no goal context.

cowork-qa-mcp flips that:

  • Every session starts with a goal in plain English.
  • Every action (goto, click, fill, press, eval) is recorded with timestamps, the URL after, and the page's aria-snapshot.
  • When the session ends, a JSON trace is persisted to disk and exposed via a single qa_get_trace call.

The orchestrating LLM can then reason over the trace ("did this run actually fulfill the goal, or did it click the wrong button?") instead of trusting the run-time chatter.

Tools


View the full README on GitHub

Details

Repository
github.com/insideos-designs/cowork-qa-mcp
Category
Web & Browser Automation
Package
cowork-qa-mcp
Transport
STDIO
Registry
MCP registry, active

Related Web & Browser Automation MCP servers

View all
1quartzunit avatarBrowsegrabquartzunit/browsegrabToken-efficient browser agent for local LLMs. Playwright + accessibility tree + MarkGrab.0stars
2agentdeskai avatarBrowserToolsagentdeskai/browser-tools-mcpMonitor browser logs directly from Cursor and other MCP compatible IDEs.7.2Kstars
3billy-enrizky avatarOpenbrowser Aibilly-enrizky/openbrowser-aiAI browser automation. Write async Python to navigate, click, type, and extract data.279stars
4yokingma avatarOne Search Mcpyokingma/one-search-mcpWeb search, URL discovery, scraping & extraction with agent-browser and search providers148stars
5sh3ll3x3c avatarNative DevToolssh3ll3x3c/native-devtools-mcpMCP server for desktop, browser (CDP), and Android automation. Screenshot, OCR, click, type.113stars
6justasmonkev avatarMcp Accessibility Scannerjustasmonkev/mcp-accessibility-scannerMCP server for automated web accessibility scanning with Playwright and Axe-core.54stars