Reading Onchain Data

Coordinates blockchain data retrieval via events, indexing protocols, analytics platforms, and batched reads.

Updated Mar 6, 2026
One-click install
npx skills add https://github.com/andginja/ethskills --skill reading-onchain-data
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: Reading Onchain Data
Source: https://github.com/andginja/ethskills/tree/main/skills/indexing
Command: npx skills add https://github.com/andginja/ethskills --skill reading-onchain-data

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes scripts (resource) and references (resource) components.

What problem does it solve?

This Skill solves the challenge of efficiently reading historical and real-time blockchain data, which is often inefficient or impossible through direct RPC calls due to limitations in iteration, state access, and query capabilities.

Core Features & Use Cases

  • Event-Driven Data Retrieval: Leverages smart contract events (logs) as the primary mechanism for accessing historical data.
  • Tool Selection Guidance: Provides clear recommendations on when to use The Graph, Dune Analytics, or Multicall3 based on specific use cases like dApp backends, analytics, or batched reads.
  • RPC Limitation Awareness: Educates users on the constraints of RPC endpoints, including rate limits, historical state access, and eth_getLogs range limitations.
  • Use Case: An AI agent needs to track the total supply of a token over time. This Skill guides the agent to use an appropriate indexing solution like The Graph or Dune, rather than attempting inefficient RPC calls.

Quick Start

Use the indexing skill to find all USDC transfer events between block 19000000 and 19000100.

Frequently Asked Questions about Reading Onchain Data

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I read historical blockchain data without hitting RPC limitations?

The Graph is ideal for dApp backends needing indexed event data, Dune Analytics suits broader blockchain analytics, and Multicall3 is used for batching multiple contract reads into a single request.

Why does eth_getLogs fail when querying large block ranges?

Querying large block ranges with eth_getLogs fails due to inherent RPC endpoint limitations like rate limits and restricted historical state access, requiring indexing protocols like The Graph instead.

Can I use Multicall3 for batched smart contract reads on blockchain data?

Yes, you can use Multicall3 for batched smart contract reads to efficiently retrieve multiple blockchain data points in a single operation, reducing RPC calls and avoiding rate limits.

What is the best way to track token supply over time using blockchain events?

The best way to track token supply over time is by using an appropriate indexing solution like The Graph or Dune Analytics to query smart contract events, avoiding inefficient RPC calls.