# MEV Explorer > Who extracted value in this block? Sandwiches, arbitrage, liquidations, builder and tips. Fetches one recent block and all of its receipts from a public node and looks for maximal-extractable-value patterns: sandwich attacks on Uniswap V2/V3-style pools (an actor trading right before and after a victim in the same pool), cyclic arbitrage (a transaction whose sender or contract ends with more of a token and less of none), Aave V3 liquidations, the block builder (fee recipient and extraData tag, plus the builder→proposer payment) and a priority-fee ranking. Part of usefulweb.site (https://usefulweb.site/). Results are deterministic calculations from the inputs and the listed assumptions; the API returns exactly what the web page shows. ## Use it - Human interface: https://mevexplorer.usefulweb.site/ (interactive tool at https://mevexplorer.usefulweb.site/tool) - JSON API: POST https://mevexplorer.usefulweb.site/api/v1/calculate with a JSON object of inputs (schema: https://mevexplorer.usefulweb.site/api/v1/tool) - OpenAPI: https://mevexplorer.usefulweb.site/openapi.json - MCP (Streamable HTTP): https://mevexplorer.usefulweb.site/mcp - tool `mev_explorer` ## Inputs - mode (select): What do you have? - chain (select): Chain - block (text): Block number - Public nodes only serve recent blocks (roughly the last day); older blocks need your own node (RPC_URL_). - blockJson (textarea): Block JSON (offline) - {"block": {number, miner, extraData, baseFeePerGas, timestamp}, "transactions": [...], "receipts": [...]} as returned by eth_getBlockByNumber(…, true) and eth_getBlockReceipts. ## Method - Data: eth_getBlockByNumber(n, true) and eth_getBlockReceipts(n) (falls back to one eth_getTransactionReceipt per transaction, max 300). - Swaps: Uniswap V2 Swap(address,uint256,uint256,uint256,uint256,address) and V3 Swap(address,address,int256,int256,uint160,uint128,int24) logs (also emitted by the many forks using the same events), converted to pool deltas; direction = which token the pool received. - Sandwich: in one pool, a front-run and back-run by the same actor (same sender, or the same `to` contract when at most two senders call it in the block — public routers are excluded) in opposite directions, bracketing a victim swap by a different actor in the front-run's direction; the back-run must sell 50–105 % of what the front-run bought. Profit = what the back-run took out minus what the front-run put in, per pool token (before gas and builder tips). - Cyclic arbitrage: a transaction with swaps in ≥ 2 pools in which the sender or the called contract paid out a token and got more of that same token back, with no token ending negative (from ERC-20 Transfer logs). CoW Protocol settlements (GPv2Settlement) are excluded. - Liquidations: Aave V3 LiquidationCall events; the emitter is checked against the official Aave V3 Pool for the chain. - Builder: the block fee recipient (miner) and printable extraData; the builder→proposer payment is the last transaction sent by the fee recipient. Tips = (effectiveGasPrice − baseFee) × gasUsed; direct coinbase transfers inside contracts are not visible without traces.