Stack · Product engineering

Bug reproduction

Tools to investigate a bug report and work toward a reproducible test case.

Built for: Whoever picks up the report that says it happens sometimes, and has to decide within an hour whether it is real.

Install all 10 parts

The button opens the checkout, where the 5 servers and 5 skills are listed one by one. Every member is free, so the checkout lists them and asks for no card.

$0/mo
every member is free — 5 servers and 5 skills
$0
the free-tier version keeps 5 servers and 5 skills — and all 8 tools
$0
5 skills with no monthly cost
172k
tokens if every skill file is read in full — a skill loads its description first and the rest only when used
01 · Outcome

What your agent can do with this

The reason to buy a stack rather than five listings: each line below needs more than one member connected at the same time.

  1. 01

    Pull the error, its stack trace and its frequency out of Sentry, and say how many people it reached.

  2. 02

    Replay the path in a real browser with Puppeteer and stop when the page does not fail the way the report says it does.

  3. 03

    Read the rows behind the report against a read-only Postgres connection with row caps and a statement timeout.

  4. 04

    Write the reproduction down as a markdown note with a diagram, so the next person starts where this one stopped.

02 · Assembly

The assembly, part by part

What each part contributes, and why it was picked over the obvious alternative. Prices and permissions are read from the listings, so nothing here can disagree with the catalogue.

5 servers5 skills8 tools
SE01

The report as the system recorded it: the event, the release and how often it happened, which is what decides whether this is worth an hour.

read/write split not recordedruns on your machine B v0.42.0 · updated 3 weeks ago API key · runs locally
Free
$0 of the monthly total
LO02

A local log server the app posts structured events to, with a live tail — the missing half when the stack trace stops at the boundary.

4 readread-onlyruns on your machine A v0.3.0 credential not declared · runs locally
Free
$0 of the monthly total
DA03

Read-only Postgres with row caps and statement timeouts, so checking the data behind a bug cannot become an incident of its own.

read/write split not recordedruns on your machine A v0.4.2 API key · runs locally
Free
$0 of the monthly total
PU04

Drives a real browser through the reported path, which is the only way to tell a broken page from a misremembered one.

read/write split not recordedruns on your machine A v0.7.2 credential not declared · runs locally
Free
$0 of the monthly total
FI05

Views and edits the files the reproduction lives in — the failing script, the fixture, the note — without giving the agent a shell.

1 read3 writeruns on your machine A v1.3.0 credential not declared · runs locally
Free
$0 of the monthly total
and the instructions that drive them A skill is a prompt file, not a server: it adds context and a procedure, never a tool or a permission of its own.
DE06
Debugging and Error Recovery Agent skill by addyosmani

Holds the desk to root cause: reproduce, isolate, then explain — rather than the first plausible change that makes the symptom go away.

2.7k tokens when loaded in full write access not declared 1 file · MIT needs no server of its own
Free
no monthly cost
CH07
Chrome DevTools Agent skill by mrgoonie

Screenshots, console and performance traces through Puppeteer scripts, so 'it is slow' turns into a number from the profile.

30.2k tokens when loaded in full write access not declared 24 files · Apache-2.0 needs no server of its own
Free
no monthly cost
E208
E2E Test Agent skill by coleam00

Researches the codebase and the schema before writing the end-to-end case, which is how a reproduction ends up in the suite instead of in a comment.

2.7k tokens when loaded in full write access not declared 1 file · licence not declared needs no server of its own
Free
no monthly cost
MA09
Markdown and Mermaid Writing Agent skill by K-Dense-AI

Writes the reproduction up with the sequence diagram attached, so the handover is a document rather than a paragraph of chat.

70.4k tokens when loaded in full asks the agent to write 37 files · Apache-2.0 needs no server of its own
Free
no monthly cost
KE10
Keep the Why Agent skill by oliver-zehentleitner

Finds the incident learning or workaround that explains the odd code, which is often the bug's actual origin.

66k tokens when loaded in full write access not declared 15 files · MIT v0.20.0 needs no server of its own
Free
no monthly cost
03 · Cost

What it costs, and on what assumption

Every member is free, so the monthly figure is $0 whatever you do with the stack: nothing here is billed by the call, and only adding a paid member could change it.

PartWhat you are paying forMonthly, as quoted
Sentry Free —
Logsafe Free —
Database Postgres Free —
Puppeteer Free —
Filesystem Free —
Skills
Debugging and Error Recovery Free · context cost only —
Chrome DevTools Free · context cost only —
E2E Test Free · context cost only —
Markdown and Mermaid Writing Free · context cost only —
Keep the Why Free · context cost only —
Everything above $0 of servers plus $0 of skills, the same in a quiet month and a busy one $0/mo

Subscriptions at their monthly plan price; one-off licences spread over 12 months.

What moves the bill
Flat every month$0 · 0 subscriptions
Carries a call allowancenothing
Paid oncenothing
Traffic assumed5k calls / month

Nothing in this stack carries a call allowance, so nothing here can run out before the month does. The bill is decided when you install it, not when you use it.

The spend cap is one figure for the whole account, set in your dashboard and checked when an order is placed. On the call path what stops a retry loop is the plan's call allowance and its rate limit, and a refused call is never billed.

04 · Setup

Setting it up, in order

The steps below come before the install lines: what to decide and scope before connecting anything, in the order it matters. The lines themselves follow, part by part, for the client you pick.

1
Connect Sentry to the right projects
One token, read-only, limited to the projects that raise the reports this desk triages.
2
Point Postgres at a replica
A read-only role on a replica rather than the primary. The server carries row caps and statement timeouts; the role is what makes them a boundary rather than a setting.
3
Decide what the filesystem server may see
It views, creates and edits files. Give it the reproduction folder, not your home directory.
4
Install the skills last
The debugging skill drives the servers above; without them connected it is advice rather than a procedure.
Install, part by part10 parts of 10 in Claude Code

npx mcprush@latest stack add bug-repro writes all 5 servers into Claude Code’s config in one go — or run the lines below one by one. The 5 skills are not included — add them with lines 06–10.

Keys you’ll need
Sentry
SENTRY_ACCESS_TOKEN — Your Sentry user authentication token
Database Postgres
POSTGRES_HOST — Database host
POSTGRES_USER — Database user (a read-only user is recommended)
POSTGRES_PASSWORD — Database password (or use POSTGRES_PASSWORD_FILE)
POSTGRES_DATABASE — Database name

Set them where you start Claude Code — export SENTRY_ACCESS_TOKEN=… in your shell profile on macOS and Linux, setx SENTRY_ACCESS_TOKEN "…" on Windows, then open a new terminal. Claude Code reads them at start; the config keeps only the names.

# 01 · Sentry claude mcp add --scope user --env 'SENTRY_ACCESS_TOKEN=${SENTRY_ACCESS_TOKEN}' --transport stdio getsentry-sentry-mcp '--' npx -y @sentry/mcp-server # 02 · Logsafe claude mcp add --scope user logsafe-mcp '--' npx -y @coglet/logsafe mcp # 03 · Database Postgres claude mcp add --scope user --env 'POSTGRES_HOST=${POSTGRES_HOST}' --env 'POSTGRES_USER=${POSTGRES_USER}' --env 'POSTGRES_PASSWORD=${POSTGRES_PASSWORD}' --env 'POSTGRES_DATABASE=${POSTGRES_DATABASE}' --transport stdio database-postgres-mcp '--' npx -y @database-mcp/postgres # 04 · Puppeteer claude mcp add --scope user puppeteer-mcp '--' npx -y puppeteer-mcp-server # 05 · Filesystem claude mcp add --scope user filesystem-mcp '--' npx -y filesystem-mcp # 06 · Debugging and Error Recovery npx mcprush@latest skill add addyosmani/debugging-and-error-recovery # 07 · Chrome DevTools npx mcprush@latest skill add mrgoonie/chrome-devtools # 08 · E2E Test npx mcprush@latest skill add coleam00/e2e-test # 09 · Markdown and Mermaid Writing npx mcprush@latest skill add k-dense-ai/markdown-and-mermaid-writing # 10 · Keep the Why npx mcprush@latest skill add oliver-zehentleitner/keep-the-why
Requirements and Windows tips
  • Node.js — the current LTS (24) is the safe choice (for npx).
  • Windows PowerShell says 'running scripts is disabled on this system'? Run Set-ExecutionPolicy -Scope CurrentUser RemoteSigned once, or type npx.cmd instead of npx (codex.cmd, gemini.cmd, grok.cmd likewise). PowerShell 7 needs neither.

Nothing is connected until you approve it in Claude Code. mcprush is not in the path and meters nothing here.

Before you start
  • 2 members want an API key, set in your own client’s config on your machine — this marketplace never holds it.
  • 3 members have not declared what credential they need — check each one’s own page before you start.
  • What this stack can write is not recorded — 3 members of 5 have no imported tool surface. Section 05 says what is known before you approve anything.
  • 5 members are connected straight from their own package or address — nothing in them goes through mcprush.
05 · Permissions

What the whole stack can reach

Installed together, these tool surfaces add up. It is the first thing a security reviewer asks for, so what has been counted — and what nobody has counted yet — is on the page rather than in a PDF.

—
tools that only read
Which tools read and which write is counted from the surface a publisher imports, and 3 members of 5 have no imported tool surface.
—
tools that can change something
Not recorded, and not estimated: a total added up from the members that have a surface would be read as the whole stack’s. The table below is what is known, member by member.
0
tools that reach the network
8 of the 8 never leave your machine — they belong to the local members.
Who grants the write accessnot recorded
MemberTool surfaceWrite tools
Filesystem imported 3
Database Postgres not imported not recorded
Puppeteer not imported not recorded
Sentry not imported not recorded
Reading the number

A stack's blast radius is the union of its members, not the worst of them. That union cannot be taken here, because 3 members of 5 have no imported tool surface — so the figure a review asks for is missing rather than low, and a member marked not imported is one nobody has counted rather than one that cannot write.

1 skill in this stack instructs the agent to write — Markdown and Mermaid Writing. A skill holds no permission of its own; it can only ask a server that already has the scope, and the approval gate still applies.

Tools in total8
Write sharenot recorded
Members that can writeat least 1 of 5
Surface imported2 of 5 members
06 · Swaps

Sensible swaps

A stack is a default, not a verdict. These are the substitutions the maintainer would make, and what each one costs or saves.

Where the flow needs an agent that decides its own next click instead of a script that repeats yours, take the browser-use server and give up the step-by-step replay.

same money at 5k calls tool counts not recorded both grade A

The same read-only guardrails, row caps and statement timeouts against MySQL, for the half of the estate that never moved to Postgres.

same money at 5k calls tool counts not recorded both grade A
07 · Limits

Where this stack stops

Written by the maintainer, kept on the page rather than in a support thread.

  • It cannot fix the bug in your repository. Nothing here has write access to code — the desk hands over a reproduction, not a patch.

  • Postgres access is read-only by design, so a data-level bug can be found here but never corrected here.

  • The browser member is an experimental Puppeteer server. A flow behind a login wall or a CAPTCHA is where it stops, and the desk should say so rather than keep clicking.

08 · Maintenance

Who keeps this current

A stack has an owner: whoever keeps it re-checks the combination when a member changes, and the members themselves are published by the people named on each row.

Maintainer
mcprush
The marketplace’s own editors — keep 40 stacks here
Version
—
Not versioned — the curator edits in place
Scanned members
5 of 5
Servers in it that carry a scan grade for the release they serve.
Member trust score
88–100
Lowest to highest client score of its 5 scanned servers, out of 100.
Composition
5 + 5
5 servers, 5 skills
Nearby

Stacks that share parts with this one

All 40 stacks