Pre-sign check
presign_checkCall before your agent signs anything. Send tx fields (to, data, value, chainId), or typedData (an eth_signTypedData_v4 payload), or untrusted text, with an optional wren-guard policy. Returns block, review or allow, the decoded call and every finding: unlimited approvals, permits, Permit2, setApprovalForAll, EIP-7702 delegation, deployments, injected instructions and, with a policy, unknown recipients, caps and lookalike addresses. Static check, not a simulation. Costs $0.01 USDC on Base per call, paid over x402 (MCP transport): an unpaid call returns a PaymentRequired result, and an x402 MCP client retries with the payment in _meta["x402/payment"]. You sign one USDC authorisation for exactly that price to Wren's wallet: no approvals. Bad input is rejected before anything is charged.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| to | No | Destination contract or recipient (0x address); omit for a deployment | |
| data | No | Calldata, 0x hex | |
| text | No | Untrusted text that asked for this action, screened for injected instructions | |
| value | No | Native value in wei (decimal or 0x hex) | |
| policy | No | Optional wren-guard config: allowlist, spenders, caps and flags | |
| chainId | No | Chain id, decimal | |
| typedData | No | eth_signTypedData_v4 payload (instead of a transaction) |