If you're building a Rust canister that needs to read from or interact with Ethereum, Arbitrum, Base, or any EVM chain, this wraps the IC's EVM RPC system canister with a typed client. It handles the multi-provider consensus dance (you'll want threshold mode, not the default equality check), manages cycle attachment, and works with both Candid and Alloy types. The documentation is thorough about gotchas: consensus strategies that fail on live chains, response size limits on broad log queries, and the fact that you still need to sign transactions yourself using threshold ECDSA before sending them. Costs run around 100M to 1B cycles per call depending on provider count and response size. No bridges, no oracles, just JSON-RPC over HTTPS outcalls with automatic failover.

skills.sh installs
287
GitHub stars
39
last updated
Aug 21, 2026

Install

$ npx -y skills add dfinity/icskills --skill evm-rpc --agent claude-code

Installs into .claude/skills of the current project.

Files

EVM RPC Canister — Calling Ethereum from IC

What This Is

The EVM RPC canister is an IC system canister that proxies JSON-RPC calls to Ethereum and EVM-compatible chains via HTTPS outcalls. Your canister sends a request to the EVM RPC canister, which fans it out to multiple RPC providers, compares responses for consensus, and returns the result. No API keys required for default providers. No bridges or oracles needed.

Prerequisites

  • evm_rpc_client crate (provides typed client API and re-exports evm_rpc_types)

Canister IDs

CanisterIDSubnet
EVM RPC (mainnet)7hfb6-caaaa-aaaar-qadga-cai34-node fiduciary

Candid interface: https://github.com/dfinity/evm-rpc-canister/releases/latest/download/evm_rpc.did — or use the canhelp skill to fetch it directly from the mainnet canister.

Supported Chains

Sponsors

Details

Repository
github.com/dfinity/icskills
Categories
Backend & APIs, Rust, Finance & Trading, Web3 & Blockchain
First seen
Jun 3, 2026

More from dfinity/icskills

All 16
1wix avatarwix-cli-data-collectionwix/skillsUse when defining database schemas, creating data collections, or setting up structured data storage. Triggers include CMS, collection, database, schema, data m286skills.sh installs
2davila7 avatarloki-modedavila7/claude-code-templatesMulti-agent autonomous startup system for Claude Code. Triggers on "Loki Mode". Orchestrates 100+ specialized agents across engineering, QA, DevOps, security, d284skills.sh installs
3davila7 avatarrailway-newdavila7/claude-code-templatesCreate Railway projects, services, and databases with proper configuration. Use when user says "setup", "deploy to railway", "initialize", "create project", "cr284skills.sh installs
4vm0-ai avatardeepseekvm0-ai/vm0-skillsDeepSeek API for AI model inference. Use when user mentions "DeepSeek", "DeepSeek API", or asks about DeepSeek models.282skills.sh installs
5casper-studios avatarbump-depscasper-studios/casper-marketplaceAnalyze and upgrade dependencies with breaking change detection. Use when updating frontend (pnpm) or backend (uv) dependencies.281skills.sh installs
6davila7 avatarcocoindexdavila7/claude-code-templatesComprehensive toolkit for developing with the CocoIndex library. Use when users need to create data transformation pipelines (flows), write custom functions, or281skills.sh installs