EvidenceForge
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@EvidenceForgescan /samples/release-v2 and diff it against baseline.json"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
EvidenceForge
Offline binary and application artifact triage, with reproducible evidence and beautiful release diffs.
EvidenceForge is a small, independent Python project for anyone who needs to answer: What's in this build? Which endpoints or dangerous configuration clues appeared? What changed between releases? It requires no Hopper, Ghidra, Node.js or cloud model, and never executes the target.
Scope: EvidenceForge is an early working alternative for static artifact inventory and comparison, not a replacement for full decompilation or runtime investigation. It is not affiliated with or endorsed by REA.
Why this exists
Deep reverse-engineering frameworks are excellent for call graphs, decompilation and runtime tracing. EvidenceForge optimizes a narrower workflow: download an artifact → produce immutable, reviewable observations → diff before/after → hand summaries to an AI agent.
Capability | EvidenceForge v0.1 |
Offline Python 3.10+, stdlib-only runtime | ✅ |
ELF, PE, Mach-O, JavaScript/TypeScript and ZIP recognition | ✅ Shallow metadata |
Folder and safe ZIP entry inventory | ✅ Bounded |
SHA-256, entropy and evidence offset recording | ✅ |
Selected web endpoints (redacted) and Electron configuration clues | ✅ Heuristic |
JSON snapshot + standalone HTML review | ✅ |
Deterministic release comparisons | ✅ |
Read-only, allowlisted MCP tools | ✅ Experimental |
Native decompilation / debugger / runtime tracing | ❌ Out of scope |
Malware verdicts and vulnerability proof | ❌ Out of scope |
Related MCP server: EvidenceLens MCP
Quick start
# Python 3.10+; no install required from a checked-out repository
PYTHONPATH=src python -m evidenceforge scan ./path/to/app --json build-a.json --html build-a.html
# Optionally install editable CLI from this source tree
python -m pip install -e .
evidenceforge scan ./release-v1 --json baseline.json --html baseline.html
evidenceforge scan ./release-v2 --json current.json --html current.html
evidenceforge diff baseline.json current.json --json delta.json --html delta.htmlOn Windows PowerShell, after python -m pip install -e ., use the evidenceforge command directly. Review the HTML offline in your browser. --stdout-json prints the complete report to the terminal; normal output is a compact summary.
Reports are not silently overwritten; pass --overwrite if you explicitly want to replace a file. If the scanner hits a budget or unsafe entry, summary.complete is false and the warning explains the limit.
Example agent integration via MCP
MCP tools are read-only, and disabled for file access until approved roots are provided.
macOS/Linux:
export EVIDENCEFORGE_ALLOWED_ROOTS='["/absolute/path/to/samples"]'
evidenceforge mcpWindows PowerShell:
$env:EVIDENCEFORGE_ALLOWED_ROOTS='["C:\\Users\\you\\samples"]'
evidenceforge mcpConfigure your MCP-compatible client to start the evidenceforge mcp command, passing that environment variable in the registration. The tools are evidenceforge_scan and evidenceforge_compare. This MCP endpoint is intentionally minimal; compatibility should be verified against your specific client.
Understanding the evidence
Each file record includes path, size, sha256, format, entropy, and selected evidence with byte offsets and either:
confidence: observed— literal bytes such as a URL were seen at an offset; this does not imply the endpoint is used.confidence: inferred— static text suggests a security-relevant code setting or API. It is not proof of reachable behavior.
The report digest is canonical SHA-256 over the JSON content without its own digest field; the CLI verifies it before diffing. It is not signed and cannot prove provenance against a determined attacker.
Tuning resource limits
evidenceforge scan ./my-build --max-files 500 --max-file-mb 16 --max-total-mb 128 --json artifact.jsonDefault scanning is bounded at 1,500 files, 8 MiB each, 64 MiB total, depth 12, and 200:1 ZIP compression ratio. The scanner does not follow symlinks or recurse into archive members that themselves are ZIPs. For detailed threat boundaries, see SECURITY.md.
Testing
python -m pip install -e .
python -m unittest discover -s tests -vCI runs these tests on Linux, Windows, and macOS, with Python 3.10 and 3.13.
Architecture
src/evidenceforge/
├── scanner.py # Controlled file / folder / ZIP reading, evidence extraction
├── formats.py # Shallow ELF / PE / Mach-O / file type recognition
├── diff.py # Deterministic comparison, no execution
├── model.py # Stable schemas and integrity digests
├── report.py # Script-free HTML renderer
├── mcp.py # Root-confined, read-only MCP adapter
└── cli.py # User-facing commandsRoadmap
Optional signed attestations and report verification
Better PE import and ELF dynamic-symbol parsing with strict bounds
Source maps / ASAR parsing in read-only mode
Better graph/visual diff of Electron security boundary changes
MCP client integration tests and advanced schema validation
Legal and ethical use
Analyze only software that you own or are authorized to inspect. Respect software licenses, privacy, export rules, and applicable law. The program is provided without any guarantee that its observations are complete or secure.
License
MIT. Independent original implementation; no code copied from REA. Reference: morluto/rea.
Related MCP Connectors
Generate SBOMs, scan vulnerabilities, and analyze dependencies from local projects or Git repos.
Read-only verifier for 25 ProofRelay MCP tools and non-confidential evidence bundles.
Browser-local and CLI static evidence for deployed AI model artifacts.
Scan packages and lockfiles (npm, PyPI, Go, Maven, Cargo, NuGet) for vulnerabilities and malware.
Related MCP Servers
- AlicenseAqualityCmaintenanceEnables read-only binary diff and fingerprinting of files without writing to disk, providing structured diffs and per-section SHA-256 hashes.3MIT
- AlicenseCqualityAmaintenanceEnables deterministic, read-only multimodal evidence review by normalizing text, tables, PDFs, images, and screenshots into provenance metadata, with optional controlled filesystem access and no provider calls.1MIT
- AlicenseNot gradedqualityCmaintenanceOffers proof-only tools to inspect and verify remediation closure receipts, deterministically confirming asset coverage, fixed artifact deployment, rescanning, deadline compliance, and zero-residual closure without executing scans or touching live systems.MIT

yotta-verify-mcpofficial
AlicenseNot gradedqualityBmaintenanceProvides a deterministic pre-install security scan for Agent skills, plugins, and MCP servers via stdio, returning verdicts, audited badges, CI gates, and reports without executing code or making network calls.74 npmMIT