Recently, while building automation workflows with n8n, I ran into a problem: although n8n makes it easy to connect various services, interacting with the Ethereum blockchain is surprisingly difficult. Usually, you need to install a Code Node and import ethers.js or viem to handle it, or write JSON-RPC requests manually. This isn’t very convenient when you want to quickly build blockchain automation workflows.
While the community already has n8n-nodes-web3, its functionality is relatively basic, and many common operations aren’t supported. So, I wanted to test Claude Code’s Vibe Coding capabilities while also trying out n8n node development. Since I frequently need these features myself, I decided to create a more comprehensive Ethereum integration package.
n8n-nodes-ethereum
The goal of this project is to provide complete Ethereum blockchain integration, allowing you to handle various blockchain operations directly in n8n’s visual interface without writing code. The project uses viem as the underlying library (more modern, type-safe, and actively maintained compared to traditional web3.js), and adopts a unified Resource/Operation design pattern.
Main Features
The project includes two nodes:
- Ethereum Node: A regular node for executing various blockchain operations
- Ethereum Trigger Node: A trigger node that can monitor new blocks, contract events, and transactions to specific addresses
Features cover most common use cases:
- 10 Resource Types: Accounts, blocks, transactions, contracts, ERC20, ERC721, ERC1155, ENS, Gas, signatures, utility functions, and more
- Complete Token Standard Support: Built-in support for all standard methods of ERC20, ERC721, and ERC1155, no need to handle ABIs yourself
- Multi-chain Support: Default support for 18+ EVM-compatible networks (Ethereum, Polygon, BSC, Arbitrum, Optimism, Base, etc.), with custom RPC options
- Triggers: Monitor new blocks, contract events, and specific address transactions to create real-time reactive workflows
- Security Design: RPC connections and wallet credentials are managed separately; read-only operations don’t require private keys
For example, you can easily create workflows like:
- Monitor Transfer events on a specific NFT contract and send notifications for new transactions
- Periodically check a DAO’s treasury balance and alert when it falls below a threshold
- Automate token transfers and wait for confirmation
- Monitor Gas Price and execute transactions when prices are low enough
For a complete feature list, refer to the documentation site.
Current Status and Future
The project is still in early development (v0.1.1). While the main features are implemented, since I only use a few of the nodes myself, I’m currently building automated tests to ensure all nodes work correctly.
Security Warning: Since this is still in early stages, I recommend testing on testnets first, and only use it in production after confirming everything works. Be especially careful with operations involving funds, and I recommend only keeping necessary amounts in automation wallets.
Future plans include continuing to improve test coverage and adding more features based on user feedback. Contributions are welcome!
Want to Learn More?
If you’re using n8n and need to interact with blockchain, feel free to try this package:
- Install:
npm install @0xlimao/n8n-nodes-ethereum - GitHub: https://github.com/flyinglimao/n8n-ethereum
- npm: https://www.npmjs.com/package/@0xlimao/n8n-nodes-ethereum
- Documentation: https://flyinglimao.github.io/n8n-ethereum/
The documentation includes installation instructions written by Claude, credential setup tutorials, how to use each resource, and some common workflow examples.
This project was largely developed by directing Claude Code to do the work (even this article was mostly written by Claude, except for this paragraph). This time, I clearly felt the difference compared to a few months ago - it can now handle larger tasks at once, though it still gets stuck in loops sometimes. However, it’s still quite useful for developing small projects like this. Compared to using unfamiliar sources, if the project complexity isn’t too high, it might actually be safer to have an AI write a version directly (although you still have to worry about potential contamination).