Crypto MCP Server
by rex-automata
README.md
# š Crypto MCP Server
**The first blockchain & cryptocurrency MCP server** - Connect AI agents to Ethereum, Solana, Bitcoin, and cryptocurrency markets.
[](https://opensource.org/licenses/MIT)
[](https://www.typescriptlang.org/)
[](https://modelcontextprotocol.io)
## š Features
- **Multi-Chain Support**: Ethereum, Solana, and Bitcoin
- **Wallet Balance Queries**: Check balances for any address
- **Transaction History**: Get detailed transaction data
- **Real-Time Prices**: Live cryptocurrency prices from CoinGecko
- **Gas Price Monitoring**: Track Ethereum gas prices
- **Whale Tracking**: Monitor large wallet movements
- **Token Information**: ERC-20 token balances and data
- **Market Data**: Top tokens, price history, and search
## š¦ Installation
### Prerequisites
- Node.js 18.0.0 or higher
- npm or yarn
- API keys (see [API Keys](#-api-keys) section)
### Quick Start
1. **Clone or download this repository**
```bash
git clone https://github.com/rex-automata/crypto-mcp-server.git
cd crypto-mcp-server
```
2. **Install dependencies**
```bash
npm install
```
3. **Configure environment variables**
```bash
cp .env.example .env
# Edit .env and add your API keys
```
4. **Build the project**
```bash
npm run build
```
5. **Test the server**
```bash
npm start
```
## š API Keys
### Required APIs (Free Tier)
#### Etherscan API
- **Get it at**: https://etherscan.io/apis
- **Free tier**: 5 calls/second, 100,000 calls/day
- **Add to `.env`**: `ETHERSCAN_API_KEY=your_key_here`
#### CoinGecko API
- **Get it at**: https://www.coingecko.com/en/api/pricing
- **Free tier**: Works without API key (50 calls/minute)
- **Pro tier**: Higher rate limits available
- **Add to `.env`**: `COINGECKO_API_KEY=your_key_here` (optional)
#### Solana RPC
- **Default**: Uses public endpoint (`https://api.mainnet-beta.solana.com`)
- **Free upgrades**: Alchemy (https://www.alchemy.com) or QuickNode (https://www.quicknode.com)
- **Add to `.env`**: `SOLANA_RPC_URL=your_rpc_url` (optional)
#### Blockchain.info (Bitcoin)
- **No API key required** for basic usage
- Higher limits available at https://www.blockchain.com/api
## š ļø Usage
### MCP Client Configuration
Add to your MCP client settings (e.g., Claude Desktop):
```json
{
"mcpServers": {
"crypto": {
"command": "node",
"args": ["/path/to/crypto-mcp-server/dist/index.js"],
"env": {
"ETHERSCAN_API_KEY": "your_key_here",
"COINGECKO_API_KEY": "your_key_here",
"SOLANA_RPC_URL": "https://api.mainnet-beta.solana.com"
}
}
}
}
```
### Available Tools
#### Ethereum Tools
- `get_eth_balance` - Get ETH balance for an address
- `get_eth_transactions` - Get transaction history
- `get_gas_price` - Get current gas prices
- `get_token_balance` - Get ERC-20 token balance
#### Solana Tools
- `get_sol_balance` - Get SOL balance for an address
- `get_sol_transactions` - Get transaction history
#### Bitcoin Tools
- `get_btc_balance` - Get BTC balance for an address
- `get_btc_transactions` - Get transaction history
- `get_btc_stats` - Get Bitcoin network statistics
#### Price Tools
- `get_token_price` - Get current price for a cryptocurrency
- `get_multiple_prices` - Get prices for multiple tokens
- `get_top_tokens` - Get top cryptocurrencies by market cap
- `search_token` - Search for a cryptocurrency
- `get_price_history` - Get historical price data
#### Whale Tracking Tools
- `is_whale_address` - Check if an address is a whale
- `get_whale_transactions` - Get large transactions for an address
- `get_known_whale_addresses` - Get list of known whale addresses
## š” Example Usage
```typescript
// Get Ethereum balance
{
"tool": "get_eth_balance",
"arguments": {
"address": "0x742d35Cc6634C0532925a3b844Bc454e4438f44e"
}
}
// Get Bitcoin price
{
"tool": "get_token_price",
"arguments": {
"coinId": "bitcoin"
}
}
// Check if address is a whale
{
"tool": "is_whale_address",
"arguments": {
"address": "0xBE0eB53F46cd790Cd13851d5EFf43D12404d33E8",
"chain": "ethereum"
}
}
// Get top 10 cryptocurrencies
{
"tool": "get_top_tokens",
"arguments": {
"limit": 10
}
}
```
## š Project Structure
```
crypto-mcp-server/
āāā index.ts # Main MCP server
āāā tools/
ā āāā ethereum.ts # Ethereum tools
ā āāā solana.ts # Solana tools
ā āāā bitcoin.ts # Bitcoin tools
ā āāā prices.ts # Price tracking tools
ā āāā whale.ts # Whale tracking tools
āāā package.json
āāā tsconfig.json
āāā .env.example
āāā README.md
```
## š§ Roadmap
### Phase 1: Core Features (Current)
- ā
Multi-chain balance queries
- ā
Transaction history
- ā
Price tracking
- ā
Gas monitoring
- ā
Basic whale tracking
### Phase 2: Premium Features (Planned)
- š² Real-time transaction monitoring webhooks
- š² Advanced whale alerts (Telegram/Discord notifications)
- š² Portfolio tracking across chains
- š² NFT balance and floor price tracking
- š² DeFi protocol integration (Uniswap, Aave, etc.)
- š² Custom alert conditions
- š² Historical data export
### Phase 3: Enterprise Features
- š² Multi-user support with API key management
- š² Rate limiting and quota management
- š² Advanced analytics and reporting
- š² Custom RPC endpoints
- š² White-label deployment options
## š° Monetization Strategy
1. **Freemium Model**
- Free tier: Basic queries with public APIs
- Pro tier ($9/month): Higher rate limits, more chains
- Enterprise tier ($99/month): Custom features, dedicated support
2. **API Access**
- Sell API access to the MCP server
- Volume-based pricing
3. **Premium Features**
- Real-time alerts: $5/month
- Advanced whale tracking: $15/month
- Portfolio analytics: $10/month
4. **Consulting/Custom Development**
- Custom blockchain integrations
- Private deployment
## š¤ Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
1. Fork the repository
2. Create your feature branch (`git checkout -b feature/AmazingFeature`)
3. Commit your changes (`git commit -m 'Add some AmazingFeature'`)
4. Push to the branch (`git push origin feature/AmazingFeature`)
5. Open a Pull Request
## š License
This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.
## š Links
- **GitHub**: https://github.com/rex-automata/crypto-mcp-server
- **MCP Documentation**: https://modelcontextprotocol.io
- **Issues**: https://github.com/rex-automata/crypto-mcp-server/issues
## ā ļø Disclaimer
This software is provided for informational purposes only. It does not constitute financial advice. Always do your own research before making any investment decisions.
## š§ Contact
- GitHub: [@rex-automata](https://github.com/rex-automata)
- Issues: [GitHub Issues](https://github.com/rex-automata/crypto-mcp-server/issues)
---
**Built with ā¤ļø for the MCP community**
TDQS
A3.7/5.0
Scored across 9 tools
Disambiguation5/5
Each tool targets a specific blockchain (BTC, ETH, SOL) and operation (balance, transactions, gas price, token price, search) with no overlap. The purposes are clearly distinct.
Naming Consistency4/5
All tools follow a get_<chain>_<action> pattern except search_tokens, which uses a different verb and no chain prefix. This minor deviation slightly reduces consistency.
Tool Count5/5
9 tools cover the essential read operations for BTC, ETH, and SOL, plus generic token data. The scope is well-balanced and not excessive.
Completeness5/5
The tool set covers key crypto data needs: balances, transactions, gas prices, token prices, and search. There are no obvious gaps for a read-only data server.
Maintenance
ActivityInactive
ResponsivenessNo issues