Node.js tool that probes live APIs, diagnosing endpoint failures with root causes and evidence over MCP.
Copy the AI prompt to install this server into Claude Code, Cursor, or another agent โ or use 1-click editor setup below.
We haven't yet run this listing's install command through our automated sandbox check. This isn't a red flag โ we're steadily working through the catalog.
๐ก Paste the JSON block into your client's configuration file under mcpServers, then restart the application.
Inspect callable tools, capabilities, and parameters exposed to AI agents by Qa Probe.
qa_probe_get_report"Show me all broken routes and their scores"
qa_probe_explain_failure"Why is /reports showing no data?"
qa_probe_probe_endpoint"Is GET /users returning data right now?"
qa_probe_get_graph"Which backend routes does /dashboard call?"
qa_probe_get_blast_radius"What pages break if the users endpoint goes down?"
qa_probe_suggest_fix"What should I do about feature_flag_disabled?"
Find out exactly why your pages are blank - in under 5 minutes.
qa-probe is a Node.js command-line tool that reads your React frontend, maps every API call to its backend route, probes those endpoints live with real auth, and tells you the root cause when something is wrong - not just a status code.
It works best on React apps backed by FastAPI, Express, Next.js, GraphQL, or tRPC with an OpenAPI spec available. Built by the LightShield SIEM team and battle-tested against a production SIEM.
Your dashboard loads. Nothing crashes. But every table is empty, every chart shows zero, and you have no idea why. The cause is almost always one of:
/api/users/ but the backend route is /api/users (trailing slash)HAS_BILLING=false) silently disabled an entire routerqa-probe builds a source-aware map from frontend calls to live backend responses, then explains each failure in one line with a fix hint. It complements Playwright (user journeys) and Schemathesis (contract fuzzing) - it is the layer that answers "why is this page blank?" first.
qa-probe.config.js in your project root:
qa-probe will parse your frontend, fetch /openapi.json, probe every endpoint with
real auth, and write a full report to .qaprobe/ (report.md, report.json,
ai-context.md, report.html). A summary table prints to the terminal.
Route status
| Status | Meaning |
|---|---|
| healthy | endpoints respond, data present, schema valid |
| degraded | works but has an issue (empty data, slow response) |
| broken | unreachable, 404, 5xx, or a security/logic failure |
Common root causes
| Root cause | What happened | What to do |
|---|---|---|
feature_flag_disabled | router not registered (a HAS_* flag is false) | enable the flag and restart |
contract_mismatch | a similar route exists (slash/casing) | align the frontend path |
missing_route | 404, not in the OpenAPI spec | fix the typo or include_router() |
empty_db | 200 OK but empty array | seed the database |
precondition_required | 428 - terms/onboarding/MFA gate not satisfied | clear the gate for the probe account |
auth_scope_mismatch | 401/403 - wrong role/scope | use a user with the required permissions |
schema_mismatch | a field was renamed/removed vs the spec | align frontend, backend, and spec |
auth_bypass | endpoint returns 200 without auth | add the missing auth guard |
assertion_failed | response violated a declared invariant | fix the response or the assertion |
server_error | 5xx | check backend logs |
Every result is verifiable. Each diagnosis carries its evidence (the request,
a snapshot of the response, timing) and a confidence level - high, medium, or
none. A confidence: none / unknown result is explicitly not a confirmed pass.
Score: each route is 0-100; the overall score is the average. Use
--fail-under 80 to make CI fail when the score drops.
qa-probe run --fail-under 80 blocks a deploy when pages regress.qa-probe ships a Model Context Protocol (MCP) server. Point your AI assistant at it and the assistant can read your QA data and explain failures directly - no manual report-reading.
Run qa-probe once to populate the cache:
Then add the MCP server. For Claude Code / Cursor, add to .mcp.json at your
repo root:
Restart the assistant. Now you can ask in plain English:
| Tool | Ask it |
|---|---|
qa_probe_get_report | "Show me all broken routes and their scores" |
qa_probe_explain_failure | "Why is /reports showing no data?" |
qa_probe_probe_endpoint | "Is GET /users returning data right now?" |
qa_probe_get_graph | "Which backend routes does /dashboard call?" |
qa_probe_get_blast_radius | "What pages break if the users endpoint goes down?" |
qa_probe_suggest_fix | "What should I do about feature_flag_disabled?" |
qa_probe_run_analysis | "Run a full QA check and give me the summary" |
qa_probe_label | "Mark this finding as expected / a real bug" |
MCP output is sanitized - SQL errors, stack traces, and table names are redacted
before they reach the assistant. Raw data stays on disk. Results carry their
evidence and confidence, and explain_failure returns a plain-English trust note
when a finding is unverified, so the assistant does not report guesses as passes.
You can also simply open the qa-probe folder (or your project with .qaprobe/) in
an AI coding tool and ask it to read ai-context.md - a compact, LLM-oriented summary
written on every run.
--fail-under <N> exits non-zero when the overall score is below N (a CI gate).
Factual signals from GitHub, npm, and our automated checks โ not a rating.
No reviews yet โ be the first to share how this listing worked for you.
Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.
[](https://allmcps.com/mcp/ls-siem-llp-qa-probe)<a href="https://allmcps.com/mcp/ls-siem-llp-qa-probe"><img src="https://allmcps.com/api/badge/ls-siem-llp-qa-probe?style=directory" alt="Qa Probe on AllMCPs" /></a>