Repository navigation
v0.2.0
Fuzzing and benchmarks.
pip install -U mcp-toolproofNew
toolproof fuzz: generates valid and invalid inputs from each tool's input schema with Hypothesis and reports crashes, hangs, internal errors, leaked tracebacks, outputSchema violations and invalid input that was accepted, each shrunk to the smallest failing input- Fuzzing restarts a crashed server and keeps going, skips tools marked destructive by default, and prints its seed so a run can be repeated
toolproof bench: p50/p95/p99 latency, throughput and error rate at a chosen concurrency, with thresholds that fail the runbench:andfuzz:sections in toolproof.yaml;toolproof runincludes them when present (--skip-bench,--skip-fuzz)- Fuzz and bench results in the console, JUnit and JSON reports
fuzz,benchandinspectfall back to./toolproof.yamlwhen no server is given
Try it
toolproof fuzz -- python examples/buggy_server.pyThis finds all five bugs planted in the example server without any hand-written tests.
See the README for details.