Cryptoclaw etherscan
Query block explorer APIs (Etherscan, BSCScan, Polygonscan, etc.) for transactions, contracts, and gas data.
git clone https://github.com/TermiX-official/cryptoclaw
T=$(mktemp -d) && git clone --depth=1 https://github.com/TermiX-official/cryptoclaw "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/etherscan" ~/.claude/skills/termix-official-cryptoclaw-etherscan && rm -rf "$T"
skills/etherscan/SKILL.mdMulti-chain Explorer API
Query Etherscan-compatible block explorer APIs for transaction history, contract source code, ABIs, and gas data.
Supported Explorers
| Chain | Base URL | Env Var (optional override) |
|---|---|---|
| Ethereum | | |
| BSC | | or same key |
| Polygon | | |
| Arbitrum | | |
| Optimism | | |
| Base | | |
All explorers accept the
apikey parameter. Many share a single Etherscan key, but some chains require separate registration.
Rate limit: 5 calls/second per key.
Modules & Actions
Account — Transaction History
?module=account&action=txlist&address={addr}&startblock=0&endblock=99999999&page=1&offset=20&sort=desc&apikey={key}
Returns normal transactions for an address.
Account — Token Transfers (ERC-20)
?module=account&action=tokentx&address={addr}&page=1&offset=20&sort=desc&apikey={key}
Filter by contract: add
&contractaddress={token}
Account — ERC-721 Transfers
?module=account&action=tokennfttx&address={addr}&page=1&offset=20&sort=desc&apikey={key}
Account — Balance
?module=account&action=balance&address={addr}&tag=latest&apikey={key}
Returns balance in wei. Divide by 1e18 for ETH/BNB.
Contract — Get ABI
?module=contract&action=getabi&address={addr}&apikey={key}
Returns the contract ABI as a JSON string. Tip: Parse the result and pass it to
read_contract or write_contract for dynamic contract interaction.
Contract — Get Source Code
?module=contract&action=getsourcecode&address={addr}&apikey={key}
Returns source code, compiler version, constructor arguments, and proxy implementation address if applicable.
Gas Tracker (Ethereum only)
?module=gastracker&action=gasoracle&apikey={key}
Returns SafeGasPrice, ProposeGasPrice, FastGasPrice in gwei.
Workflow: Dynamic Contract Interaction
- User provides a contract address
- Call
to fetch the ABIgetabi - Parse the ABI to list available read/write functions
- Use
with the ABI and function name to queryread_contract - Use
for state-changing calls (with user confirmation)write_contract
This enables interacting with ANY verified contract without pre-built tools.
Usage Notes
- Always include
— requests without it are heavily rate-limited&apikey={key} - Use
andoffset
for pagination; don't fetch more than neededpage - The
endpoint only works for verified contractsgetabi - For proxy contracts,
includes the implementation address — fetch that ABI toogetsourcecode - Cross-reference contract data with
skill for risk assessmentsecurity-check
Example Queries
User: "Show my recent transactions on BSC" → Call BSCScan
txlist for active wallet, present last 10 with value and status
User: "Get the ABI for this contract: 0x..." → Call
getabi, parse result, summarize available functions
User: "What's the current gas price on Ethereum?" → Call
gasoracle, present safe/standard/fast prices