Paradox

Your app will approve
what nobody reviewed.

Paradox is a testing tool for WebMCP apps — it finds these races and proves the fix against every explored future.

bun add github:Joe-Simo/paradox-webmcp
The race

The agent inspects $2,399 · v7. Agent inspected 2,399 dollars at version 7 and created a version 7 review.

First — what is WebMCP?

Your site just got a second user.

WebMCP gives agents real tools on your pages — the same actions your buttons perform, as callable functions. This page's registry is live.

document.modelContext.registerTool(…) — live on this page

Act 01 — Record

The race is real.

Every operator followed the rules. The system still broke its own.

inspect_expenseapprove_reviewed_expense

Act 02 — Explore

Every ordering, explored.

Paradox tries every ordering of the recorded actions and checks each outcome against one rule: approved = reviewed.

explore_futures

Act 03 — Repair

The guard goes in.

The shortest failure is isolated, and a version guard goes into the approval tool.

inspect_counterexampleapply_version_guard

Act 04 — Verify

The color leaves the universe.

The same failing sequence replays as blocked. Nothing survives re-exploration.

verify_repair

Explore every future
before your users do.

Playwright tests your pages. Unit tests check your functions. Paradox tests what happens when a human and an AI agent act on the same live state at the same time — because that race ships in carts, bookings, refunds, and permissions.

36 schedules36 states27 counterexamplesComputed, not scripted

Install the instrumentation