MCP server by luzzwaix
Lazarus MCP
Lazarus MCP autopsies broken Node/Python repos, applies safe resurrection playbooks, reruns the pipeline, and writes judge-ready proof.
Why It Exists
Hackathon judges and maintainers need more than an AI claim. They need evidence: what failed, why it failed, what changed, and whether build/test is green afterward. Lazarus keeps the scope narrow and auditable: local Node and Python repositories only, conservative patches only, no remote pushes.
Quickstart
npm install
npm run build
npm test
Try a local fixture path:
npm run dev -- scan fixtures/dead-node-missing-build
npm run dev -- autopsy fixtures/dead-node-missing-build
npm run dev -- resurrect fixtures/dead-node-missing-build --safe
npm run dev -- evidence-pack fixtures/dead-node-missing-build
Try a GitHub HTTPS URL:
npm run dev -- scan https://github.com/<owner>/<repo>
npm run dev -- autopsy https://github.com/<owner>/<repo>
npm run dev -- resurrect https://github.com/<owner>/<repo> --safe
npm run dev -- evidence-pack https://github.com/<owner>/<repo>
GitHub URLs are cloned into .lazarus-workspaces/<repo-name>-<timestamp>. Lazarus creates local branches only, never pushes upstream, and never modifies remotes.
CLI Usage
lazarus scan <path-or-github-url>
lazarus autopsy <path-or-github-url>
lazarus resurrect <path-or-github-url> [--safe] [--branch <name>]
lazarus evidence-pack <path-or-github-url>
scan detects stack, package manager, config files, scripts, test runner hints, confidence, and health hints. autopsy runs safe install/build/test commands with timeouts and structured log classification. resurrect applies high-confidence playbooks, reruns the pipeline, and never pushes upstream. evidence-pack writes RESURRECTION_REPORT.md, AI_JUDGES.md, and evidence/summary.json.
MCP Tools
The stdio adapter in src/server.ts exposes:
scan_repoautopsyresurrectevidence_pack
The adapter is intentionally thin so the CLI core stays package-agnostic and green if MCP package APIs shift.
Proof It Works
tests/detect.test.tscovers stack and pytest detection.tests/autopsy.test.tscovers log classification and missing-script autopsy.tests/resurrect.node.test.tsresurrectsfixtures/dead-node-esm-cjsandfixtures/dead-node-missing-build.tests/resurrect.python.test.tsresurrectsfixtures/dead-python-missing-pytest.tests/report.test.tsverifies judge evidence generation.- CI runs
npm install,npm run build, andnpm test.
Demo Flow
- Show a broken fixture repository.
- Run
lazarus autopsy <path>and point to the failing phase and error class. - Run
lazarus resurrect <path> --safe. - Show after metrics are green.
- Run
lazarus evidence-pack <path>and open the generated report files.
Current MVP Scope
- Supported stacks: Node and Python.
- Supported input: local path or GitHub HTTPS URL.
- Supported Node fixes: missing build script, conservative ESM/CJS package type repair, strongly implied TypeScript dependency.
- Supported Python fixes: missing pytest dependency when tests/config imply pytest.
- No frontend, OAuth, remote HTTP server, broad language support, or remote git push.
Safety
- Commands time out after 120 seconds by default.
- Logs are redacted for obvious secrets.
- Lazarus never force-pushes, never pushes, and never modifies remotes.
- Low-confidence fixes are reported as suggestions instead of mutations.
- Applied changes are intentionally small and auditable.
Screenshots / Logs
Terminal demo placeholders live in docs/DEMO_SCRIPT.md and docs/VIDEO_STORYBOARD.md. The machine-readable run summary lives in evidence/summary.json.
Landing Page
The Vercel-ready hackathon landing page lives in apps/web.
npm run landing:dev
npm run landing:build
For Vercel, connect the GitHub repository, set the project root to apps/web, use the Next.js framework preset, and keep the build command as npm run build.