SPARDA MCP server
io.github.zakariagharzouli/sparda-mcp·v0.71.4·8 starsAI writes. SPARDA proves. Deterministic, offline security gate for AI edits.
8 stars208 downloads/wk
Reviews
Write oneNobody has reviewed SPARDA yet.
If you have run it, two minutes of your experience saves the next person an afternoon.
SPARDA tools (6)
write = sends, deletes, buys or postsRead from the package source without running it. The installed server may list more.
sparda_confirmConfirms a pending write or delete operation gated by human-in-the-loop policies using its confirmation token.
sparda_get_contextCall this FIRST. Returns the full living context of this app: every tool with its description, known workflows, runtime telemetry (per-tool calls/errors/latency), quarantined tools, and the immune memory of past diagnosed failures. Lets any AI session resume exactly where the previous one stopped.
sparda_infoInfo about this SPARDA endpoint. SPARDA is the trust layer for AI-written code — AI writes, SPARDA proves: deterministic, offline behavior proofs (guards, invariants, irreversible effects) plus a live gate for AI edits, no API key. By Residual Labs (residual-labs.fr) — github.com/zakariagharzouli/sparda
sparda_list_disabled_toolsLists write tools (POST/PUT/DELETE) disabled by SPARDA write-safety, and how to enable them.
sparda_proveProve this app is safe to deploy — NOW, before you commit. Compiles the current source to its behavior graph and discharges the static proof obligations (unguarded mutation, non-atomic aggregate write, unvalidated constrained write). If a baseline was saved (`sparda apocalypse --save-baseline`), it ALSO diffs against it: any finding flagged `regression:true` means your edit removed a guard, droppe
sparda_witnessGenerate-and-check for object-level authorization (BOLA/IDOR, OWASP API #1). Call with no arguments to list the routes where sparda_prove could not prove an ownership scope (O7 advisories). If you can SEE the ownership check in the code (an inline `if (row.ownerId !== req.user.id) deny`, or a helper call like `assertOwner(row.ownerId, req.user.id)`), call again with hints: [{route, file, line}] na
Public scan report
scanner v0.1.10 · 2026-10-29 · same rubric, same numbers if you re-run it
- Code scan114 source files scanned25/25
- –Live reliabilityno gateway calls yet and no remote to proben/a
- –Tool poisoningtools not inspected (local package is not executed); not countedn/a
- Auth qualitylocal package, no credentials required12/15
- Maintenancelast push 43 days ago12/15
- Maintainer identityregistry namespace matches repository owner; GitHub account older than a year8/10
How SPARDA compares
Against every graded Security MCP server, from our own scans and uptime checks. Updated after each scan run.
- Safety score
- 88/100
- higher than 85% of 915 Security servers
- Tools
- 6
- the typical Security server has 6
- Tools that change things
- 0%
- typical: 0%. Fewer write tools means less an agent can break
- GitHub stars
- 8
- more than 88% of 587 Security servers
- Downloads a week
- 208
- more than 74% of 249 Security servers with a package
What its tools let an agent do: 6 read
Install SPARDA in Claude Code, Cursor or VS Code
Runs npx -y sparda-mcp on your machine. Read the scan report first; the gateway never runs local packages.
claude mcp add sparda-mcp -- npx -y sparda-mcp
What the publisher says
From the SPARDA repository's README, as published. We do not edit it. Read it on GitHub
SPARDA
🇫🇷 Français — L'IA écrit. SPARDA prouve. Un gate déterministe et hors-ligne qui détecte quand une modif d'IA retire une garde, expose une route ou casse un invariant — sans clé API, directement dans la boucle d'édition de l'agent. Pour tout comprendre en 10 minutes (douleur, architecture, vision) : SPARDA-EXPLIQUE.md.
AI writes. SPARDA proves. L'IA écrit. SPARDA prouve.
The trust layer for AI-written backends. SPARDA compiles your backend — routes, database queries, state mutations, guards, side-effects — into one deterministic behavior graph, then statically proves what can and can't break before you ship: no unguarded mutation, no broken invariant, no non-atomic aggregate write.
100% local · deterministic · zero API key · no cloud account. It fails loudly on a real risk, and when it can only see part of your app it says PROVEN (PARTIAL) — never a false green. And when it can prove it was not even looking at your whole app, it says PREMISE NOT VERIFIED and claims nothing at all.
60-second proof
From your Express, FastAPI, Flask, Next.js, NestJS or Medusa app — nothing to configure:
npx sparda-mcp apocalypse # prove the tree is safe to deploy — exit 1 on any real risk, or on an unverified premise
npx sparda-mcp prove # the whole verdict: proof + coverage + shareable seal
npx sparda-mcp badge # a README badge: proven · coverage% · routesUnder the hood it compiles your backend into one language-agnostic graph — the Unified Behavior Graph (UBG), serialized as .sparda/ubg.json under the SBIR specification (SPARDA Behavior IR) — and every command is a pass over that graph.
The wedge — catch an AI edit that removes a guard, in the loop
The one thing a text-diff review and a pattern scanner structurally can't do: prove that this specific edit dropped a protection the previous version had. sparda gate diffs the behavior graph before/after an edit and blocks a regression — deterministic, offline, sub-second, exit 2 (the Claude Code PostToolUse contract that stops the agent's edit loop). See it end-to-end in one command, zero setup:
npm run wedge # (from a clone) — or drive it on your own app with `sparda gate --arm` then `sparda gate --hook`1. baseline armed on the guarded code (POST /admin/delete-user · requireAdmin)
2. an AI edit "simplifies" requireAdmin → a pass-through (still compiles, still 200s)
3. sparda gate on the edit:
✗ [critical] GUARD_REMOVED — POST /admin/delete-user was guarded in the baseline
and is now reachable without any guard (src/app.js:11)
⏱ ~40 ms · deterministic · offline · no API key
⛔ exit 2 on --hook — Claude Code PostToolUse blocks the editWire it into Claude Code in one line — the plugin registers a PostToolUse hook that runs npx -y sparda-mcp gate --hook after every Edit/Write, so a guard-removing edit is caught before it lands.
Shortened. The full README is on GitHub.
Nothing above is checked by us. What we check is on the safety report.
SPARDA: common questions
- Is SPARDA MCP server safe?
- Yes, by our scan: it is graded A (88/100). Read the SPARDA safety report
- How do I install SPARDA?
- It runs on your machine. Copy the Claude Code, Cursor, VS Code or Claude Desktop config from the install section.
- Does SPARDA need an API key?
- No secret keys are declared. It reads 2 settings from the environment.
- Is SPARDA maintained?
- The last commit was 50 days ago (2026-09-16). The latest release is v0.71.4.
- What can I use instead of SPARDA?
- Servers from other publishers that do the same job: Guardvibe MCP server, Pentest MCP server and Zn Gate MCP server. Compare all SPARDA alternatives.
- How does SPARDA compare with other Security MCP servers?
- safety score 88/100 (higher than 85% of 915 Security servers); tools 6 (the typical Security server has 6); tools that change things 0% (typical: 0%. Fewer write tools means less an agent can break). Full comparison.
Alternatives to SPARDA
Same job from other publishers: the closest match first, then the best rated.
- GuardvibeDeterministic security layer your AI can't be. 644 rules, 39 tools, CLI + doctor + host audit.not reviewedGrowingC
- PentestOffline methodology engine for authorized penetration testing, CTF, and security research.not reviewedGrowingB
- Zn GateThe local security layer for coding agents: secret redaction, injection checks and an MCP proxy.not reviewedGrowingB
- ZeroDOMThe deterministic attack-surface perception layer for AI security agentsnot reviewedGrowingA
- SafeinstallLocal-first supply-chain security gate for npm/pnpm/bun: typosquat, release age, provenance checksnot reviewedGrowingA