Tatum MCP Server
A Model Context Protocol (MCP) server that provides access to Tatum's comprehensive blockchain API across 40+ networks.
Features
This MCP server exposes 59 tools across 7 feature categories:
- Blockchain Data - Access blocks, transactions, balances, and network information
- Notifications - Webhook subscriptions for blockchain events
- RPC Nodes - Direct access to blockchain RPC nodes via tatum gateway
- Fee Estimation - Estimate transaction fees and gas costs
- Smart Contracts - Deploy and interact with smart contracts (ERC20, ERC721, ERC1155)
- Security & KMS - Key Management System for secure operations
- Storage & IPFS - Decentralized storage solutions
- Virtual Accounts - Manage virtual ledger accounts
Installation
- Clone the repository:
git clone <repository-url>
cd tatum-mcp-server
- Install dependencies:
npm install
- Set up environment variables:
cp .env.example .env
# Edit .env file with your Tatum API key
- Build the server:
npm run build
Usage
Running the Server
npm start
Development Mode
npm run dev
MCP Client Integration
Add this server to your MCP client configuration:
{
"mcpServers": {
"tatum": {
"command": "node",
"args": [
"FullPathTo/TatumMCP/dist/index.js"
],
"env": {
"TATUM_API_KEY": "Get a free key at : https://dashboard.tatum.io"
}
}
}
}
Available Tools
The server provides 65 tools across 8 categories. Each tool corresponds to a Tatum API endpoint:
Blockchain Data (13 tools)
get_collections_v4
- Get NFT collections data (20 credits)get_metadata_v4
- Get NFT metadata (10 credits)get_wallet_balance_by_time_v4
- Get wallet balance at specific time (100 credits)get_wallet_balances_v4
- Get wallet balances (50 credits) deprecatedget_wallet_portfolio_v4
- Get wallet portfolio (50 credits)get_balances_v4
- Get token balances (50 credits) deprecatedget_owners_v4
- Get token owners (50 credits)check_owner_v4
- Check if address owns token (50 credits)get_nft_balances_v4
- Get NFT balances (50 credits)get_multi_token_balance_v4
- Get multi-token balances (50 credits)- And 3 more tools...
Notifications (12 tools)
create_subscription_v4
- Create webhook subscriptionsget_subscriptions_v4
- List active subscriptions (1 credit)get_all_webhooks_v4
- List all webhooks (1 credit)get_subscriptions
- List subscriptions v3 (1 credit)enable_web_hook_hmac
- Enable HMAC for webhooks (2 credits)disable_web_hook_hmac
- Disable HMAC for webhooks (2 credits)get_subscriptions_count
- Get subscription count (1 credit)update_subscription
- Update subscription (1 credit)delete_subscription
- Cancel subscription (1 credit)- And 3 more tools...
Fee Estimation (5 tools)
estimate_gas
- Estimate gas price and units (10 credits)get_blockchain_fee
- Get recommended fees (1 credit)estimate_fee_blockchain
- Estimate transaction fees (10 credits)bsc_estimate_gas
- BSC gas estimation (2 credits)egld_estimate_gas
- Elrond gas estimation (2 credits)
Gateway (6 tools)
gateway_get_supported_chains
- Get all supported blockchain chainsgateway_get_evm_chains
- Get EVM-compatible chainsgateway_get_url
- Get RPC gateway URL for specific chaingateway_is_evm_chain
- Check if chain is EVM-compatiblegateway_execute_rpc
- Execute RPC call to blockchainget_available_tools
- Get list of all available tools
Smart Contracts (10 tools)
- Contract deployment and interaction tools
- ERC20/ERC721/ERC1155 operations
- Token minting and transfers
Security & KMS (5 tools)
- Key management and secure operations
- Private key storage and signing
- Wallet security features
Storage & IPFS (4 tools)
- IPFS file storage and retrieval
- Metadata management
- Decentralized storage solutions
Virtual Accounts (10 tools)
- Virtual ledger account management
- Transaction processing
- Balance operations and transfers
API Credits
Each tool shows the credit cost for the corresponding API call. Credits range from 1 to 100+ depending on the complexity of the operation.
Error Handling
The server handles various error conditions:
- Invalid API keys
- Network connectivity issues
- API rate limiting
- Invalid parameters
- Server errors
All errors are properly formatted and returned to the MCP client.
Development
Project Structure
├── src/
│ ├── index.ts # Main MCP server
│ ├── config.ts # Configuration management
│ ├── api-client.ts # Tatum API client
│ └── types.ts # TypeScript interfaces
├── /dist/features/ # Generated feature definitions
│ ├── index.json # Feature index
│ ├── blockchain_data.json
│ ├── notifications.json
│ └── ...
├── package.json
├── tsconfig.json
└── README.md
Building
npm run build # Compile TypeScript
npm run watch # Watch mode
npm run clean # Clean build artifacts
Supported Blockchains
Tatum supports 40+ blockchains including:
- Ethereum (Mainnet, Sepolia, Holesky)
- Bitcoin (Mainnet, Testnet)
- Polygon (Mainnet, Amoy)
- Binance Smart Chain (Mainnet, Testnet)
- Arbitrum (One, Nova, Testnet)
- Optimism (Mainnet, Testnet)
- Base (Mainnet, Sepolia)
- Avalanche (C-Chain, Testnet)
- Solana (Mainnet, Devnet)
- And many more...
License
MIT
Support
For issues and questions: