The Gauntlet
MCPTrust's comprehensive integration test suite
"The Gauntlet" is MCPTrust's comprehensive integration test suite. It runs the entire toolchain against a deterministic mock server (or a live optional server) to verify security guarantees.
Usage
# Run the full suite
bash tests/gauntlet.sh
# Run in Fixture Mode (no live server dependencies needed)
MCPTRUST_FORCE_FIXTURE=1 bash tests/gauntlet.shPrerequisites
- Go (to build the binary)
- Bash (to run the script)
- jq or python3 (for JSON assertions)
- zip / unzip (for bundle verification)
What It Proves
The Gauntlet moves through 8+ phases to prove:
- Discovery:
mcptrust scanproduces valid JSON reports. - Governance:
mcptrust policydetects violations (if any). - Persistence:
mcptrust lockcreates a hash-locked file. - Identity:
mcptrust sign/verifyworks with Ed25519 keys. - Distribution:
mcptrust bundle exportcreates valid ZIPs. - Determinism: Running the bundle export twice produces bit-for-bit identical ZIPs.
- Tamper Detection:
- It manually flips a bit in
mcp-lock.jsonhash. - It asserts that
verifyFAILS (exit 1). - It asserts that
diffDETECTS the drift (exit 1).
- It manually flips a bit in
- Negative Tests: Verified failure on wrong keys and corrupted signatures.