Provides vanity address generation and RPC service for interacting with Ethereum, including static calls, balance queries, and transaction sending capabilities
Leverages Ethers.js library to provide blockchain interaction functionality, including ABI encoding/decoding and transaction management
Supports RPC service for Fantom blockchain, allowing static calls, balance queries, and transaction sending capabilities
Utilizes Node.js Worker Threads for multi-threaded concurrent computation in vanity address generation
Provides RPC service for Optimism blockchain, supporting static calls, balance queries, and transaction sending capabilities
Enables RPC service for Polygon blockchain, supporting static calls, balance queries, and transaction sending capabilities
Built using TypeScript for type-safe implementation of blockchain tools and services
Blockchain MCP Server
A Model Context Protocol (MCP) based blockchain tools server providing Ethereum vanity address generation and Cast command functionality.
Features
1. Ethereum Vanity Address Generation
- 🎯 Support for specifying address prefix and suffix
- ⚡ Multi-threaded concurrent computation for optimized performance
- 📊 Real-time generation statistics display
- ✅ Address validity verification
2. Cast Command Tools
- 🔍 4byte: Get function signatures from function selectors
- 🔧 4byte-decode: Decode ABI-encoded calldata
- 📦 abi-encode: ABI encode function parameters
- 🔄 abi-decode: ABI decode data
3. RPC Service
- 📞 static-call: Make static calls on any EVM-compatible chain (read-only)
- 💸 send-transaction: Send transactions to smart contracts (requires private key)
- 💰 get-balance: Query address balance
- 🔗 list-chains: List supported chains
Installation and Usage
Install Dependencies
Build Project
Run Server
Development Mode
Tool Usage Guide
Vanity Address Generation
generate-vanity-address
Generate Ethereum addresses matching specified conditions
Parameters:
prefix
(optional): Address prefix, excluding 0xsuffix
(optional): Address suffixworkers
(optional): Number of concurrent threads, default 4, max 16caseSensitive
(optional): Whether case-sensitive, default false
Example:
validate-ethereum-address
Validate Ethereum address validity
Parameters:
address
: Ethereum address to validate
Cast Command Tools
4byte
Get function signatures for the given selector
Parameters:
selector
: 4-byte function selector (hexadecimal)
Example:
4byte-decode
Decode ABI-encoded calldata
Parameters:
calldata
: ABI-encoded calldata (hexadecimal)
Example:
abi-encode
ABI encode function parameters
Parameters:
types
: Parameter types arrayvalues
: Parameter values array
Example:
abi-encode-with-signature
Complete function call ABI encoding (with function selector)
Parameters:
functionSignature
: Function signaturevalues
: Parameter values array
Example:
abi-decode
Decode ABI-encoded data
Parameters:
types
: Parameter types arraydata
: Hexadecimal data to decode
Example:
RPC Service Tools
list-chains
List all supported EVM-compatible chains
Parameters: None
get-balance
Query address balance on specified chain
Parameters:
chain
: Chain identifier (e.g., "ethereum", "polygon", "bsc")address
: Address to queryblockTag
(optional): Block tag, default "latest"
Example:
static-call
Make static calls to smart contracts (read-only operations)
Parameters:
chain
: Chain identifierto
: Contract addressdata
: ABI-encoded function call datablockTag
(optional): Block tag, default "latest"
Example:
send-transaction
Send transactions to smart contracts (requires private key)
Parameters:
chain
: Chain identifierto
: Contract addressdata
: ABI-encoded function call datavalue
(optional): ETH amount to send (wei)gasLimit
(optional): Gas limitgasPrice
(optional): Gas price (wei)privateKey
: Sender's private key
Example:
Performance Optimization
Vanity Address Generation Performance Tips
- Shorter prefixes generate faster
- Suffixes are slightly easier than prefixes
- Recommended to use 4-8 worker threads for optimal performance
- Avoid specifying both long prefix and long suffix simultaneously
Expected Generation Time
- 4 hex characters: seconds to minutes
- 5 hex characters: minutes to tens of minutes
- 6 hex characters: hours
- 7+ characters: may take very long time
Supported Blockchain Networks
Mainnet
- Ethereum: ethereum (Chain ID: 1)
- Polygon: polygon (Chain ID: 137)
- BSC: bsc (Chain ID: 56)
- Arbitrum: arbitrum (Chain ID: 42161)
- Optimism: optimism (Chain ID: 10)
- Avalanche: avalanche (Chain ID: 43114)
- Fantom: fantom (Chain ID: 250)
Testnet
- Sepolia: sepolia (Chain ID: 11155111)
All networks use public RPC endpoints to ensure stability and accessibility.
Tech Stack
- TypeScript: Type-safe JavaScript
- MCP SDK: Model Context Protocol implementation
- Ethers.js: Ethereum library
- Node.js Worker Threads: Multi-threaded concurrent computation
- 4byte.directory API: Function signature database
Security Considerations
⚠️ Important Notes:
- Generated private keys have complete control over assets
- Always keep private keys secure and never share them with anyone
- Recommend generating important addresses in offline environments
- This tool is for learning and testing purposes only
Installation via NPM
You can install this MCP server globally:
Or use it with npx:
MCP Configuration
Add to your MCP client configuration:
License
MIT License
Tools
A Model Context Protocol server providing Ethereum blockchain tools, including vanity address generation and Cast command functionality for interacting with Ethereum networks through natural language.
Related MCP Servers
- AsecurityAlicenseAqualityA Model Context Protocol server that gives LLMs the ability to interact with Ethereum networks, manage wallets, query blockchain data, and execute smart contract operations through a standardized interface.Last updated -313232TypeScriptMIT License
- AsecurityAlicenseAqualityA Model Context Protocol server that enables AI agents to interact with 30+ Ethereum-compatible blockchain networks, providing services like token transfers, contract interactions, and ENS resolution through a unified interface.Last updated -28230252TypeScriptMIT License
- -securityAlicense-qualityA Model Context Protocol server that enables interaction with Foundry tools through natural language, allowing users to create projects, build contracts, run tests, and manage Ethereum development environments.Last updated -1PythonMIT License
- -security-license-qualityA Model Context Protocol server that converts Solidity bytecode into functional server implementations, allowing interaction with blockchain contracts through a RESTful API.Last updated -1Python