Local-first MCP reliability testing · v0.3.1

Make recovery
reproducible.

MCP Inspector shows what a server does. ResiliReplay proves what happens when it fails, whether it recovers safely, and whether that recovery remains fixed.

  • No API key
  • No telemetry
  • No hosted backend

Start in one command

Install the public CLI.

Node.js 22 or 24. The verified local workflow needs no account or provider.

npx --yes resilireplay@0.3.1 --version

Verified 60-second workflow

From reviewed target to executable regression.

This fixture-backed Studio capture is real. The measured workflow completed in 2.4 seconds and the GIF is assembled from six browser-driven frames.

ResiliReplay Studio moving through target review, campaign execution, timeline, baseline comparison, and evidence export
Real local run · 4 stdio scenarios · Streamable HTTP check · 2 verified regressions · static PNG · transcript · reproduce

Complementary tools

Inspect first. Break safely second.

01

MCP Inspector

Discover tools, inspect schemas, and confirm that a server behaves on the happy path.

02

ResiliReplay

Inject bounded faults, observe recovery, approve evidence, and export a regression.

ResiliReplay is not endorsed by MCP Inspector or the tested projects.

Campaign workflow

A reviewable path from config to CI.

  1. 01

    Review

    Import an Inspector-shaped config and dry-run a value-free execution plan.

  2. 02

    Declare

    Pin the target, tool allowlist, seed, budgets, faults, and expected outcomes.

  3. 03

    Run

    Execute a clean control, bounded fault, and recovery path through the real server.

  4. 04

    Compare

    Approve complete evidence and fail closed on later baseline differences.

  5. 05

    Keep fixed

    Generate and execute the minimized causal regression in Node or CI.

Independent field validation

Three public servers. Three reproducible cases.

Each run used a pinned public package, one read-only tool, and public ResiliReplay v0.3.0.

Passing MCP Everything campaign report

LF Projects · stdio

MCP Everything

Echo control, one recovered tool error, and one declared canary failure.

  • 2.7 s
  • 3 / 3 expected
  • 0 baseline differences
Open evidence →
Passing Playwright MCP campaign report

Microsoft · stdio

Playwright MCP

Isolated blank-page snapshot with no navigation, profile, or remote target.

  • 4.8 s
  • 3 / 3 expected
  • 0 baseline differences
Open evidence →
Passing UI5 MCP campaign report

UI5 · stdio

UI5 MCP Server

Bundled guidelines only—no project inspection, linting, generation, or writes.

  • 4.6 s
  • 3 / 3 expected
  • 0 baseline differences
Open evidence →

Authorization before automation

Fault injection needs a hard boundary.

Discovery calls no tool. Tool campaigns require an explicit allowlist and the exact hash of the reviewed campaign. Remote HTTP requires separate ownership confirmation.

Read the security model

Keep recovery fixed

Put the baseline in GitHub Actions.

Discovery-only campaigns need no tool confirmation. Review tool-calling hashes in code.

- uses: aliengineering-byte/resilireplay@v0.3.1
  with:
    campaign: reliability.campaign.yml

- run: npx --yes resilireplay@0.3.1 campaign compare runs/latest \
    --baseline baselines/reliability.json

Documentation

Read the contract before the campaign.

Honest limits

Evidence has edges.

Bring a real server

Can another developer reproduce your recovery?

Run the five-minute guide, sanitize the evidence, and share what did—or did not—recover.