Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Current Ethereum development tools, frameworks, libraries, RPCs, and block explorers. What actually works today for building on Ethereum. Includes tool discovery for AI agents — MCPs, abi.ninja, Foundry, Scaffold-ETH 2, Hardhat, and more. Use when setting up a dev environment, choosing tools, or when an agent needs to discover what's available.
.claude/skills/austintgriffith-tools/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-02 | ✗→✓ | ▲ Improved | 27% | 0% |
| case-04 | ✗→✓ | ▲ Improved | 23% | 0% |
| case-15 | ✗→✓ | ▲ Improved | 36% | 0% |
| case-16 | ✗→✓ | ▲ Improved | 13% | 0% |
| case-06 | ✓→✓ | = Same ✓ | 320% | 0% |
Blockscout MCP server exists: https://mcp.blockscout.com/mcp — gives AI agents structured blockchain data via Model Context Protocol. This is cutting-edge infra as of Feb 2026.
abi.ninja is essential: https://abi.ninja — paste any verified contract address, get a UI to call any function. Zero setup. Supports mainnet + all major L2s. Perfect for agent-driven contract exploration.
x402 has production SDKs: @x402/fetch (TS), x402 (Python), github.com/coinbase/x402/go — production-ready libraries for HTTP payments.
Foundry and Hardhat 3 are both legitimate choices in 2026. Foundry: faster, Solidity-native. Hardhat 3: TypeScript-first, mature plugin ecosystem.
When an agent needs to interact with Ethereum:
cast send or ethers.js/viemcast interface (CLI)anvil, test locallyforge create or forge scriptforge verify-contract or Etherscan APIURL: https://mcp.blockscout.com/mcp
A Model Context Protocol server giving AI agents structured blockchain data:
Why this matters: Instead of scraping Etherscan or making raw API calls, agents get structured, type-safe blockchain data via MCP.
URL: https://abi.ninja — Paste any contract address → interact with all functions. Multi-chain. Zero setup.
TypeScript:
bashnpm install @x402/core @x402/evm @x402/fetch @x402/express
typescriptimport { x402Fetch } from '@x402/fetch'; import { createWallet } from '@x402/evm'; const wallet = createWallet(privateKey); const response = await x402Fetch('https://api.example.com/data', { wallet, preferredNetwork: 'eip155:8453' // Base });
Python: pip install x402 Go: go get github.com/coinbase/x402/go Docs: https://www.x402.org | https://github.com/coinbase/x402
npx create-eth@latestyarn ipfs (BuidlGuidl IPFS)| Need | Tool | |------|------| | Rapid prototyping / full dApps | Scaffold-ETH 2 | | Contract-focused dev | Foundry (forge + cast + anvil) · or Hardhat 3 if TypeScript-first | | Quick contract interaction | abi.ninja (browser) or cast (CLI) | | React frontends | wagmi + viem (or SE2 which wraps these) | | Agent blockchain reads | Blockscout MCP | | Agent payments | x402 SDKs |
bash# Read contract cast call 0xAddr "balanceOf(address)(uint256)" 0xWallet --rpc-url $RPC # Send transaction cast send 0xAddr "transfer(address,uint256)" 0xTo 1000000 --private-key $KEY --rpc-url $RPC # Gas price cast gas-price --rpc-url $RPC # Decode calldata cast 4byte-decode 0xa9059cbb... # ENS resolution cast resolve-name vitalik.eth --rpc-url $RPC # Fork mainnet locally anvil --fork-url $RPC
Free (testing):
https://eth.llamarpc.com — LlamaNodes, no keyhttps://rpc.ankr.com/eth — Ankr, free tierPaid (production):
Community: rpc.buidlguidl.com
| Network | Explorer | API | |---------|----------|-----| | Mainnet | https://etherscan.io | https://api.etherscan.io | | Arbitrum | https://arbiscan.io | Etherscan-compatible | | Base | https://basescan.org | Etherscan-compatible | | Optimism | https://optimistic.etherscan.io | Etherscan-compatible |
Model Context Protocol — standard for giving AI agents structured access to external systems.
MCP servers are composable — agents can use multiple together.
Fork mainnet locally:
bashanvil --fork-url https://eth.llamarpc.com # Now test against real contracts with fake ETH at http://localhost:8545
Primary testnet: Sepolia (Chain ID: 11155111). Goerli and Rinkeby are deprecated.
| Network | Faucet | |---------|--------| | Sepolia | https://sepolia-faucet.pk910.de/ | | Sepolia | https://www.infura.io/faucet/sepolia | | Multiple | https://www.alchemy.com/faucets | | Multiple | https://cloud.google.com/application/web3/faucet/ethereum | | Multiple | https://faucet.quicknode.com/drip | | Multiple | https://getblock.io/faucet/ |
Once you have Sepolia ETH you can bridge it to any L2 using each L2's testnet bridge then you will have ETH on that L2 testnet.
| Case | Status | Duration (ms) | Turns | Tokens | Tool calls | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Without | With | Δ | Without | With | Δ | Without | With | Δ | Without | With | Δ | ||
case-06 | pass→pass | 3,905 | 4,933 | +26% | 1 | 1 | 0% | 612 | 2,573 | +320% | 0 | 0 | — |
case-07 | pass→pass | 11,168 | 7,296 | -35% | 1 | 1 | 0% | 1,809 | 3,042 | +68% | 0 | 0 | — |
case-01 | fail→fail | 15,083 | 33,356 | +121% | 1 | 1 | 0% | 2,531 | 4,496 | +78% | 0 | 0 | — |
case-02 | fail→pass | 14,552 | 14,317 | -2% | 1 | 1 | 0% | 2,630 | 3,345 | +27% | 0 | 0 | — |
case-03 | pass→pass | 7,690 | 3,945 | -49% | 1 | 1 | 0% | 1,216 | 2,494 | +105% | 0 | 0 | — |
case-04 | fail→pass | 13,620 | 5,253 | -61% | 1 | 1 | 0% | 2,237 | 2,743 | +23% | 0 | 0 | — |
case-05 | pass→pass | 5,521 | 4,114 | -25% | 1 | 1 | 0% | 949 | 2,511 | +165% | 0 | 0 | — |
case-08 | pass→pass | 5,676 | 2,390 | -58% | 1 | 1 | 0% | 909 | 2,217 | +144% | 0 | 0 | — |
case-09 | pass→pass | 8,028 | 5,554 | -31% | 1 | 1 | 0% | 1,359 | 2,715 | +100% | 0 | 0 | — |
case-10 | pass→pass | 4,750 | 3,832 | -19% | 1 | 1 | 0% | 886 | 2,469 | +179% | 0 | 0 | — |
case-11 | pass→pass | 4,293 | 2,484 | -42% | 1 | 1 | 0% | 632 | 2,177 | +244% | 0 | 0 | — |
case-12 | pass→pass | 4,087 | 4,043 | -1% | 1 | 1 | 0% | 641 | 2,414 | +277% | 0 | 0 | — |
case-13 | pass→pass | 11,120 | 7,074 | -36% | 1 | 1 | 0% | 1,667 | 2,870 | +72% | 0 | 0 | — |
case-14 | pass→pass | 12,804 | 7,969 | -38% | 1 | 1 | 0% | 1,864 | 3,007 | +61% | 0 | 0 | — |
case-15 | fail→pass | 10,257 | 2,801 | -73% | 1 | 1 | 0% | 1,616 | 2,205 | +36% | 0 | 0 | — |
case-16 | fail→pass | 11,458 | 2,516 | -78% | 1 | 1 | 0% | 1,911 | 2,156 | +13% | 0 | 0 | — |
case-17 | pass→pass | 8,488 | 5,085 | -40% | 1 | 1 | 0% | 1,332 | 2,596 | +95% | 0 | 0 | — |
case-18 | pass→pass | 12,927 | 6,718 | -48% | 1 | 1 | 0% | 2,075 | 2,990 | +44% | 0 | 0 | — |
case-19 | pass→pass | 8,647 | 5,978 | -31% | 1 | 1 | 0% | 1,620 | 3,027 | +87% | 0 | 0 | — |
case-20 | pass→pass | 4,754 | 3,585 | -25% | 1 | 1 | 0% | 826 | 2,386 | +189% | 0 | 0 | — |
case-21 | pass→pass | 2,693 | 1,474 | -45% | 1 | 1 | 0% | 497 | 1,959 | +294% | 0 | 0 | — |
case-22 | pass→pass | 6,085 | 4,244 | -30% | 1 | 1 | 0% | 1,143 | 2,616 | +129% | 0 | 0 | — |
case-23 | pass→pass | 19,151 | 15,974 | -17% | 1 | 1 | 0% | 3,714 | 5,100 | +37% | 0 | 0 | — |
case-24 | pass→pass | 24,120 | 22,020 | -9% | 1 | 1 | 0% | 4,298 | 5,788 | +35% | 0 | 0 | — |
case-25 | pass→pass | 18,968 | 19,477 | +3% | 1 | 1 | 0% | 4,081 | 6,048 | +48% | 0 | 0 | — |
DecimalAI ran this skill against gemini-3.6-flash twice over the same eval suite — once with the skill loaded and once without — and compared the two runs case by case. 25 cases were attempted. The headline lift of +16 percentage points is the difference between those two pass rates over the 25 comparable cases.
Without the skill loaded, the model failed this case. With it loaded, the same prompt on the same model passed. This is one improved case from the latest verified run; every case, including any that regressed, is in the table above.
Other measured skills in the registry, with their headline benchmark lift.