# Reported issues for playwright-report-mcp

Pod holds 16 of 45 problems reported by people outside the maintainer team. Issues filed by the project's own owners, members and collaborators are excluded entirely — a maintainer's release checklist is not a warning to a prospective user.

Back to [playwright-report-mcp](/mcp/playwright-report-mcp).

## Most discussed

### [ci] Extend MCP registry smoke-check retry window

## User Story

As a tester, I want registry publication verification to tolerate indexing delays so that successful MCP releases are not reported as failed.

## Context

The `v3.3.0` release exposed an eventual-consistency problem in `.github/workflows/publish-mcp.yml:88-105`.

Run https://github.com/hubertgajewski/playwright-report-mcp/actions/runs/31577349819 successfully completed:

- version synchronization
- MCP publisher installation and authentication
- `mcp-publisher publish`

The subseq

[Read the thread](https://github.com/hubertgajewski/playwright-report-mcp/issues/150) · 2026-08-12 · closed · 0 comments

### [chore] Bump to 3.3.0 for dual-era MCP protocol support

# [chore] Bump to 3.3.0 for dual-era MCP protocol support

## Context

PR #147 closed #146 and added backward-compatible support for both modern and legacy MCP protocol eras:

- Modern clients can negotiate MCP revision `2026-07-28` through `server/discover`.
- Existing clients can continue using the legacy 2025-era `initialize` lifecycle.
- The selected protocol era is pinned for the connection lifetime.
- Unsupported pinned revisions fail with an explicit negotiation error instead of silently 

[Read the thread](https://github.com/hubertgajewski/playwright-report-mcp/issues/148) · 2026-08-12 · closed · 0 comments

### [enhancement] Support MCP 2026-07-28 while preserving legacy clients

## User Story

As a tester, I want `playwright-report-mcp` to negotiate either MCP `2026-07-28` or the legacy 2025-era protocol so that I can use modern stateless clients without breaking existing MCP integrations.

## Context

The server currently depends on `@modelcontextprotocol/sdk` v1 in `package.json:43` and imports its server APIs in `index.ts:2-3`.

The CLI constructs one global `McpServer` at `index.ts:621` and connects it directly to `StdioServerTransport` at `index.ts:962-965`. Direct

[Read the thread](https://github.com/hubertgajewski/playwright-report-mcp/issues/146) · 2026-08-12 · closed · 0 comments

### [chore] Bump to 3.2.2 for split runtime modules

# [chore] Bump to 3.2.2 for split runtime modules

## Context

PR #120 closed #119 and split the monolithic implementation/test suite into
focused modules while preserving public MCP server and CLI behavior:

- Runtime source now lives under `src/`, with compiled output under `dist/`.
- `src/index.ts` remains the executable entrypoint, and package `main` / `bin`
  still point at `dist/index.js`.
- Package publishing now includes `dist/**` so all required compiled runtime
  modules ship with the 

[Read the thread](https://github.com/hubertgajewski/playwright-report-mcp/issues/121) · 2026-06-04 · closed · 0 comments

### [enhancement] Split monolithic implementation and tests into focused modules

## User Story

As a maintainer, I want the monolithic implementation and test files split into focused modules so that future changes are easier to review, test, and publish safely as an npm package.

## Context

The project currently keeps nearly all runtime code in `index.ts`:

- `index.ts` is about 966 lines.
- `test/server.test.ts` is about 2,466 lines.
- `package.json` currently points both `main` and `bin` at `dist/index.js`.
- `package.json` currently publishes only `dist/index.js` via `f

[Read the thread](https://github.com/hubertgajewski/playwright-report-mcp/issues/119) · 2026-06-04 · closed · 0 comments

### [chore] Bump to 3.2.1 for token-efficient run status polling

# [chore] Bump to 3.2.1 for token-efficient run status polling

## Context

PR #115 fixed excessive token usage in the `v3.2.0` non-blocking Playwright
run polling workflow:

- `get_run_status` no longer returns retained `stdoutTail` and `stderrTail`
  text on every poll.
- The server parses compact Playwright progress markers such as `[528/662]`
  from stdout without retaining raw stdout/stderr output.
- `get_run_status` now returns `progress: { current, total }`, with nullable
  values before 

[Read the thread](https://github.com/hubertgajewski/playwright-report-mcp/issues/116) · 2026-05-29 · closed · 0 comments

### [bug] get_run_status polling consumes too many tokens

## Bug

`get_run_status` in `v3.2.0` consumes too many tokens during normal polling of
long-running Playwright suites because every status response includes retained
stdout/stderr tails.

## Actual behavior

`get_run_status` returns `stdoutTail` and `stderrTail` on every poll. Those tails
are stored on the tracked run and capped only by `RUN_TAIL_LIMIT = 20_000` per
stream in `index.ts`.

In a full-suite measurement, 9 status polls produced 229,457 text chars from
`get_run_status`; stdout/stderr

[Read the thread](https://github.com/hubertgajewski/playwright-report-mcp/issues/114) · 2026-05-29 · closed · 0 comments

### [chore] Bump to 3.2.0 for non-blocking run status polling

# [chore] Bump to 3.2.0 for non-blocking run status polling

## Context

PR #111 added backward-compatible MCP API surface for long-running Playwright
test workflows:

- `run_tests({ wait: false })` starts a tracked background Playwright run and
  returns a stable `runId` immediately.
- `get_run_status` reports active and terminal run state, output tails,
  `results.json` metadata, parsed stats, and idle status for a working
  directory when no run is tracked.

PR: https://github.com/hubertgajew

[Read the thread](https://github.com/hubertgajewski/playwright-report-mcp/issues/112) · 2026-05-29 · closed · 0 comments

## Most recent

### [enhancement] Add non-blocking test run status polling

## User Story

As an AI coding agent, I want to start a Playwright test run without blocking and poll its current status so that I can understand whether tests are still running, failing, timing out, or producing report output during long runs.

## Context

`run_tests` currently runs Playwright through synchronous `spawnSync` in `index.ts`, via `runPlaywright(...)`. While that child process is running, the MCP server process cannot serve another tool call from the same client. That means an agen

[Read the thread](https://github.com/hubertgajewski/playwright-report-mcp/issues/110) · 2026-05-29 · closed · 0 comments

### [chore] Bump to 3.1.4 after Node 26 CI validation

# [chore] Bump to 3.1.4 after Node 26 CI validation

## Context

PR #103 added Node.js 26 to the CI test matrix and verified the package against Node 22, 24, and 26:

- PR: https://github.com/hubertgajewski/playwright-report-mcp/pull/103
- Merge commit: `9fc8b09e15d7cbccd841f2d9245b1922f1ff2eea`
- Issue: #102

The current release is `v3.1.3`, and the version fields still point at `3.1.3`:

| File | Field | Current | Target |
| --- | --- | --- | --- |
| `package.json` | `version` | 3.1.3 | 3.1.4 

[Read the thread](https://github.com/hubertgajewski/playwright-report-mcp/issues/104) · 2026-05-09 · closed · 0 comments

### [chore] Bump to 3.1.3

# [chore] Bump to 3.1.3

## Context

The latest published npm and GitHub release version is 3.1.2. The release workflow requires the package metadata and MCP registry metadata to stay in sync before cutting a new v* tag.

This is a PATCH bump from 3.1.2 to 3.1.3 for the next release.

## Scope

Update all version fields to 3.1.3 in one change:

| File | Field | Current | Target |
| --- | --- | --- | --- |
| package.json | version | 3.1.2 | 3.1.3 |
| package-lock.json | root version entries | 3.1

[Read the thread](https://github.com/hubertgajewski/playwright-report-mcp/issues/100) · 2026-05-09 · closed · 0 comments

### [chore] Bump to 3.1.2 for MCP publisher OIDC fix

# [chore] Bump to 3.1.2 for MCP publisher OIDC fix

## Context

The `v3.1.1` release completed successfully for GitHub Releases and npm, but
the chained MCP registry publish failed during `Authenticate via GitHub OIDC`:

- Release: https://github.com/hubertgajewski/playwright-report-mcp/releases/tag/v3.1.1
- Failed MCP publish run: https://github.com/hubertgajewski/playwright-report-mcp/actions/runs/25564862587
- Failure: registry expected OIDC audience `https://registry.modelcontextprotocol.io`

[Read the thread](https://github.com/hubertgajewski/playwright-report-mcp/issues/97) · 2026-05-08 · closed · 0 comments

### [ci] Bump MCP publisher for registry OIDC audience

# [ci] Bump MCP publisher for registry OIDC audience

## Context

The `v3.1.1` release was cut from PR #94 and `release.yml` completed
successfully:

- GitHub Release: https://github.com/hubertgajewski/playwright-report-mcp/releases/tag/v3.1.1
- npm now reports `playwright-report-mcp@3.1.1`

The chained `publish-mcp.yml` workflow failed before publishing to the MCP
registry:

- Failed run: https://github.com/hubertgajewski/playwright-report-mcp/actions/runs/25564862587
- Failure step: `Authentic

[Read the thread](https://github.com/hubertgajewski/playwright-report-mcp/issues/95) · 2026-05-08 · closed · 0 comments

### [chore] Bump to 3.1.1 for dependency updates

# [chore] Bump to 3.1.1 for dependency updates

## Context

PR #90 updated the lockfile for `zod` from `4.3.6` to `4.4.3`.
PR #91 updated the lockfile for `ip-address` from `10.1.0` to `10.2.0`
and `express-rate-limit` from `8.3.1` to `8.5.1`.
PR #92 updated the lockfile for `hono` from `4.12.14` to `4.12.18`,
including upstream security fixes.

These are dependency maintenance updates after the `3.1.0` release. There are
no intended public API changes, tool schema changes, or behavior changes.

[Read the thread](https://github.com/hubertgajewski/playwright-report-mcp/issues/93) · 2026-05-08 · closed · 0 comments

### [chore] Bump to 3.1.0 for run_tests CLI flag additions

# [chore] Bump to 3.1.0 for run_tests CLI flag additions

## Context

PR #85 (merged as `bfa7b3d`, closes #84) added 6 new optional input fields to
`run_tests` — `updateSnapshots`, `headed`, `workers`, `retries`, `maxFailures`,
`trace`. All changes are **additive** (new optional fields, no renames, no
removals, no behavior change for callers who do not set the new fields).

Under semver that's a **MINOR** bump from the current 3.0.0 to **3.1.0**:

- MAJOR (4.0.0) — overstates it, nothing broke.

[Read the thread](https://github.com/hubertgajewski/playwright-report-mcp/issues/86) · 2026-04-24 · closed · 0 comments

### [feat] Expose common Playwright CLI flags on run_tests (updateSnapshots, headed, workers, retries, maxFailures, trace)

# [feat] Expose common Playwright CLI flags on `run_tests` (updateSnapshots, headed, workers, retries, maxFailures, trace)

## Context

`run_tests` currently exposes only `spec`, `browser`, `tag`, and `timeout`. Consumers
with workflows that should flow through the MCP — notably visual-regression baseline
refreshes (`--update-snapshots`) — have to fall back to running `npx playwright test`
directly. That workaround is especially painful in agent environments where a
PreToolUse hook blocks direct

[Read the thread](https://github.com/hubertgajewski/playwright-report-mcp/issues/84) · 2026-04-24 · closed · 0 comments

The remaining reports are on [the project's issue tracker](https://github.com/hubertgajewski/playwright-report-mcp/issues).
