Sample on example input
Smart Contract & EVM Security Composite Audit Suite
Composite 7-check smart contract & EVM security audit chaining reentrancy, selector lookup, ABI size, ERC-20 allowance risk, ERC-4337 userop, CREATE2, and Permit2 checks.
What you get
- Executive grade C, posture score 55/100 on this example input
- 7 sub-check results; failed on this example:
erc20_allowance- Prioritized remediation checklist and disclaimer
Example input
{
"deployer": "0x4e59b44847b379578588920cA78FbF26c0B4956C",
"allowance_atomic": "115792089237316195423570985008687907853269984665640564039457584007913129639935"
}
Parameters this suite reads
All parameters this suite reads. Pass your real values as query or JSON parameters; omitted ones use defaults. The suite evaluates the values you pass; it does not crawl or scan live URLs.
pattern, selector, signature, calldata_hex, spender, allowance_atomic, call_gas_limit, verification_gas_limit, pre_verification_gas, deployer, salt, init_code_hash, expiration_in_seconds, unlimited_amount
How to call it (0.05 USDC)
x402: Returns HTTP 402 with a base64 PAYMENT-REQUIRED header (x402 v2, USDC on Base, eip155:8453). Use any x402 v2 client (it signs an EIP-3009 authorization and retries with PAYMENT-SIGNATURE). Fallback: send the USDC yourself, then retry with header X-PAYMENT-TX: <tx hash>.
curl -i 'https://bot-bazaar.fly.dev/v1/x402/suite/smart-contract-security?deployer=0x4e59b44847b379578588920cA78FbF26c0B4956C&allowance_atomic=115792089237316195423570985008687907853269984665640564039457584007913129639935'
Prepaid key:
curl -s -H 'X-Bazaar-Key: bz_live_YOUR_KEY' 'https://bot-bazaar.fly.dev/v1/x402/suite/smart-contract-security?deployer=0x4e59b44847b379578588920cA78FbF26c0B4956C&allowance_atomic=115792089237316195423570985008687907853269984665640564039457584007913129639935'
MCP (streamable HTTP, tool suite_smart_contract_security):
curl -s https://bot-bazaar.fly.dev/mcp -H 'content-type: application/json' -H 'X-Bazaar-Key: bz_live_YOUR_KEY' -d '{"jsonrpc": "2.0", "id": 1, "method": "tools/call", "params": {"name": "suite_smart_contract_security", "arguments": {"deployer": "0x4e59b44847b379578588920cA78FbF26c0B4956C", "allowance_atomic": "115792089237316195423570985008687907853269984665640564039457584007913129639935"}}}'OpenAI-compatible (0.01 USDC per chat call)
The chat-completions router picks the suite from keywords in the prompt and is billed at the chat-completions price.
curl -s https://bot-bazaar.fly.dev/v1/x402/chat/completions -H 'content-type: application/json' -H 'Authorization: Bearer bz_live_YOUR_KEY' -d '{"model": "bazaar-suite-pro-v1", "messages": [{"role": "user", "content": "Run the smart contract security suite"}], "deployer": "0x4e59b44847b379578588920cA78FbF26c0B4956C", "allowance_atomic": "115792089237316195423570985008687907853269984665640564039457584007913129639935"}'
Full sample report (JSON)
{
"suite": "smart-contract-security",
"tool": "suite/smart-contract-security",
"title": "Smart Contract & EVM Execution Security Audit Suite",
"valid": true,
"composite_risk_score": 45,
"composite_posture_score": 55,
"executive_grade": "C",
"sub_check_count": 7,
"sub_checks": {
"reentrancy": {
"valid": true,
"pattern": "checks_effects_interactions_with_reentrancy_guard",
"cei_compliant": true,
"risk_level": "low"
},
"selector": {
"selector": "0xe3ee160e",
"known": true,
"signature": "transferWithAuthorization(address,address,uint256,uint256,uint256,bytes32,uint8,bytes32,bytes32)",
"category": "eip3009_gasless_transfer",
"risk_profile": "low_bounded_nonce"
},
"abi_encoding": {
"valid": true,
"total_bytes": 68,
"selector_bytes": 4,
"abi_32byte_words": 2,
"word_aligned": true
},
"erc20_allowance": {
"spender": "0x000000000022D473030F116dDEE9F6B43aC78BA3",
"allowance_atomic": "115792089237316195423570985008687907853269984665640564039457584007913129639935",
"is_unlimited": true,
"risk_level": "high_unlimited_approval",
"eip3009_comparison": "EIP-3009 TransferWithAuthorization requires zero ERC-20 allowance and cannot leave dangling approvals."
},
"erc4337_userop": {
"valid": true,
"total_gas_limit": 320000,
"checks": {
"call_gas_sufficient": true,
"verification_gas_bounded": true,
"pre_verification_gas_ok": true
},
"bundler_ready": true
},
"create2_address": {
"valid": true,
"deployer": "0x4e59b44847b379578588920cA78FbF26c0B4956C",
"salt": "0x0000000000000000000000000000000000000000000000000000000000000001",
"init_code_hash": "0x97b6771b04b068edcfb8c265b21ed5c6a5748d427138f776f3f164cc45f75b31",
"computed_address": "0x9574149F4100cd799bEe32DD61CF7DE5a3E3245f"
},
"permit2_signature": {
"valid": true,
"permit2_contract": "0x000000000022D473030F116dDEE9F6B43aC78BA3",
"expiration_in_seconds": 1800,
"unlimited_amount": false,
"safe_configuration": true
}
},
"passed_sub_checks": [
"reentrancy",
"abi_encoding",
"erc4337_userop",
"permit2_signature"
],
"failed_sub_checks": [
"erc20_allowance"
],
"informational_sub_checks": [
"selector",
"create2_address"
],
"prioritized_remediation_checklist": [
"Enforce Checks-Effects-Interactions (CEI) and OpenZeppelin ReentrancyGuard on external calls.",
"Prefer EIP-3009 TransferWithAuthorization or bounded Permit2 expirations over unlimited ERC-20 approvals.",
"Pin CREATE2 factory salt derivation and verify 32-byte ABI word alignment on custom calldata."
],
"remediation_note": "General hardening checklist for this suite; failed_sub_checks lists the findings specific to the input you passed.",
"input_note": "This suite evaluates the configuration values passed as query or JSON parameters; it does not crawl or scan live URLs. Omitted parameters fall back to the documented defaults.",
"disclaimer": "Automated composite analytical & schema audit only \u2014 not legal advice, not financial or investment advice, not tax advice, and not a formal third-party security certification.",
"generated_at": 1793508458
}