Eth Find Calls
eth_find_callsFIND SMART-CONTRACT CALLS on one Ethereum (eth, ETH, mainnet, L1) contract by method — "who called method X on contract Y, when, did it succeed" in one filtered query. NOT event logs a contract emitted → use eth_find_events. NOT what one address signed or received → use eth_transactions. Returns up to limit calls (default 20, at most 10000), newest first; page back with the last row's Cursor - each page covers the days window ending there. Match by method name (e.g. "transfer"), full signature ("transfer(address,uint256)"), or raw 4-byte selector (e.g. "a9059cbb"); optionally restrict to one caller. Searches the last 7 days by default — set after_time to reach further back. Includes reverted calls when only_successful=0 (with error text). Then inspect a transaction's fund movements with eth_tx_transfers. SCAN COST scales with the window, not with the limit: on a very high-traffic contract set days=1 and page back with cursor - several times cheaper than a 7-day window for the same page. Widen days for quiet contracts or rare matches. Calls inside one transaction come back in no particular order - sort them by CallPath if you need execution order. Each row carries the call's decoded input Arguments (Name, Type, Value; integers are decimal strings in raw units, NOT divided by token decimals; addresses as 0x-hex) - at most 32 per row: ArgumentCount is the full number and ArgumentsTruncated=1 marks a cut list (every array element counts as one). A method the decoder does not recognise has no Arguments. Value is the ETH attached to the call. Each row: Tx, Time, Block, Caller, Method, Signature, Selector, CallPath, Value, Success, Reverted, Error, GasUsed, Cursor, Arguments, ArgumentCount, ArgumentsTruncated.
Tool call template
Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {
"contract": "<contract>"
},
"name": "eth_find_calls"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| days | No | Size of the default scan window in DAYS, ending at the cursor position, before_time, or now. Ignored when after_time is set. Use days=1 on a very high-traffic contract and page back with cursor. | |
| limit | No | Max calls to return (newest first). At most 10000. | |
| caller | No | Only calls made by this address, 0x-hex (case-insensitive). Empty = any caller. | |
| cursor | No | Exact paging cursor: pass the Cursor value of the LAST row of the previous page to get the next page. Prefer this over before_time, which skips any rows sharing the last row's timestamp (busy contracts often have hundreds in one second). When set, before_time is ignored and the scan window (days) is measured back from the cursor position. Empty = first page. | |
| format | No | Shape of the returned data. "rows" (the default) returns one item per row. "columnar" returns a single item, {"columns":[...],"rows":[[value,...],...]}, naming the columns once and listing each row's values in that order; it is more compact for large results and carries the same values. | rows |
| method | No | Method to match — name (e.g. "transfer") or full signature (e.g. "transfer(address,uint256)"), case-insensitive. Empty = any method. | |
| contract | Yes | Contract address that was called, 0x-hex (case-insensitive). | |
| selector | No | Raw 4-byte selector, hex with or without 0x (e.g. "a9059cbb") — alternative to `method` for unrecognized methods. Empty = ignore. | |
| after_time | No | Only calls at/after this UTC time. Empty = the default 7-day window. Format: YYYY-MM-DD, YYYY-MM-DD HH:MM[:SS], ISO-8601 like 2026-09-20T00:00:00Z (fraction or +02:00 offset allowed) or 10-digit unix seconds. | |
| before_time | No | Only calls strictly before this UTC time. COARSE filter only — it drops every row that shares the last row's timestamp, so do not page with it; page with cursor. Ignored when cursor is set. Empty = up to now. Format: YYYY-MM-DD, YYYY-MM-DD HH:MM[:SS], ISO-8601 like 2026-09-20T00:00:00Z (fraction or +02:00 offset allowed) or 10-digit unix seconds. | |
| only_successful | No | 1 (default) = only successful calls in successful transactions; 0 = also include failed/reverted calls. |