ethereum-tools
by 0xGval
Verified
# Ethereum Tools for Claude MCP
A comprehensive toolkit for Ethereum blockchain analysis directly within Claude AI using Model Context Protocol (MCP).
## Features
- **Smart Contract Audit**: Analyze contracts for security issues, verify source code, and detect token standards
- **Wallet Analysis**: Check ETH balances, token holdings, and transaction history
- **Profitability Tracking**: Calculate wallet profit/loss across tokens and trades
- **Blockchain Data**: Fetch and analyze on-chain data with simple commands
- **Token Analysis**: Get comprehensive token details, price history, and trading patterns
## Installation
### Prerequisites
- Node.js v16+
- Claude for Desktop
- Free API keys:
- [Etherscan](https://etherscan.io/apis) - For contract verification and analysis
- [Moralis](https://moralis.io/) - For wallet profitability and token balances
- [Codex](https://codex.io/) - For token price history and advanced analytics
- (Optional) RPC provider like [Infura](https://infura.io/) or use free public endpoints
### Setup Steps
1. Clone this repository:
```
git clone https://github.com/giovannialbero1992/ethereum-tools-mcp
cd ethereum-tools-mcp
```
2. Install dependencies:
```
npm install
```
3. Create your configuration:
- Copy `mcp.json.example` to `mcp.json`
- Edit `mcp.json` to include your API keys and correct file paths
```json
{
"mcpServers": {
"ethereum-tools": {
"command": "node",
"args": ["YOUR_ABSOLUTE_PATH_TO/main.js"],
"env": {
"ETH_RPC_URL": "https://eth.llamarpc.com",
"MORALIS_API_KEY": "your_moralis_api_key",
"ETHERSCAN_API_KEY": "your_etherscan_api_key",
"CODEX_API_KEY": "your_codex_api_key"
}
}
}
}
```
4. Configure Claude for Desktop:
- On Windows: Create/edit `%APPDATA%\Claude\claude_desktop_config.json`
- Copy the contents of your `mcp.json` file into this configuration
## Available Tools
### Contract Analysis
- `auditContract(address: "0x...")`: Perform security audit on a smart contract
### Balance & Tokens
- `getEthBalance(address: "0x...")`: Get ETH balance
- `getTransactionCount(address: "0x...")`: Get transaction count (nonce)
- `getTokensBalance(address: "0x...", chain: "eth", excludeSpam: true)`: Get all token balances
### Profitability
- `getWalletPnl(address: "0x...", chain: "eth")`: Analyze wallet profit/loss
### Token Analysis
- `getTokenInfo(address: "0x...", networkId: 1)`: Get basic token information including name, symbol, and supply
- `getTokenPriceHistory(address: "0x...", networkId: 1, days: 7, resolution: "1D")`: Get historical price data
- `analyzeToken(address: "0x...", networkId: 1, days: 30)`: Perform comprehensive token analysis including volatility and trading patterns
### Utilities
- `add(a: 1, b: 2)`: Simple utility function example
## Troubleshooting
Common issues:
- **Environment variables not found**: Make sure your API keys are correctly set in `mcp.json`
- **Provider errors**: Check that your ETH_RPC_URL is valid and accessible
- **Path errors**: Ensure you're using full absolute paths with proper escaping in Windows (`\\`)
- **Codex API issues**: Verify your Codex API key is valid and has permission to access token data
## Development
To add new tools:
1. Create or modify files in the `tools/` directory
2. Register your tools in `main.js`
3. Restart Claude for Desktop to see changes
## License
This project is licensed under the MIT License.
## Acknowledgements
- [Model Context Protocol (MCP)](https://docs.anthropic.com/claude/docs/claude-for-desktop-model-context-protocol) by Anthropic
- [Web3.js](https://web3js.org/)
- [Moralis](https://moralis.io/)
- [Etherscan](https://etherscan.io/)
- [Codex](https://codex.io/)