Provides comprehensive blockchain interaction capabilities including wallet management, token transfers, ERC20 token deployment and minting, smart contract calls, transaction queries, and gas estimation on the Hyperion blockchain using the Ethers.js library.
🚀 Hyperion MCP Server
Model Context Protocol server for Hyperion blockchain interactions
The Hyperion MCP Server is a developer- and user-oriented backend service that enables seamless interaction with the Hyperion blockchain using the Model Context Protocol (MCP). This server provides standardized APIs for querying, transacting, and managing assets on Hyperion, making it easy for developers, users, and AI agents to build and integrate with Hyperion-based applications.
🌟 Features
Core Capabilities
Standardized MCP Interface: Expose Hyperion blockchain operations via MCP endpoints
Wallet Management: Create, import, and manage multiple wallets
Transaction Operations: Send native tokens and ERC20 tokens
ERC20 Token Deployment: Deploy standard and mintable ERC20 tokens
Token Management: Get token information and mint tokens (for mintable contracts)
Blockchain Queries: Query balances, transactions, blocks, and network information
Smart Contract Interactions: Call and transact with smart contracts
Gas Estimation: Estimate transaction costs before sending
Developer Tools
Comprehensive Documentation: Complete API reference and examples
TypeScript Support: Full type safety and IntelliSense
Error Handling: Detailed error messages and debugging information
Flexible Configuration: Environment-based configuration system
📋 Requirements
Node.js v18 or higher
npm or yarn package manager
Hyperion blockchain RPC endpoint access
🚀 Quick Start
1. Installation
Option A: Deploy to Smithery (Recommended)
Option B: Local Installation
2. Configuration
Configure your environment variables:
3. Usage
Standalone Mode
Development Mode
MCP Client Integration
Add to your MCP client configuration:
🛠️ Available Tools
Wallet Management
create_wallet
Create a new wallet with a generated mnemonic phrase.
Parameters:
name(optional): Wallet name
Example:
import_wallet
Import an existing wallet using private key or mnemonic.
Parameters:
privateKey(optional): Private key to importmnemonic(optional): Mnemonic phrase to importname(optional): Wallet name
list_wallets
List all available wallets.
set_current_wallet
Set the active wallet for transactions.
Parameters:
address(required): Wallet address
get_current_wallet
Get current active wallet information.
Balance & Transactions
get_balance
Get wallet balance (native or ERC20 tokens).
Parameters:
address(required): Wallet addresstokenAddress(optional): ERC20 token contract address
send_transaction
Send native tokens or ERC20 tokens.
Parameters:
to(required): Recipient addressamount(required): Amount to sendtokenAddress(optional): ERC20 token contract addressgasLimit(optional): Gas limitgasPrice(optional): Gas price
get_transaction
Get transaction details by hash.
Parameters:
hash(required): Transaction hash
Blockchain Queries
get_block
Get block information.
Parameters:
blockNumber(optional): Block numberblockHash(optional): Block hash
get_network_info
Get current network information and status.
estimate_gas
Estimate gas cost for a transaction.
Parameters:
to(required): Recipient addressvalue(optional): Value to senddata(optional): Transaction data
Smart Contracts
call_contract
Call a smart contract method (read-only).
Parameters:
contractAddress(required): Contract addressmethodName(required): Method nameparameters(optional): Method parametersabi(optional): Contract ABI
send_contract_transaction
Send a transaction to a smart contract.
Parameters:
contractAddress(required): Contract addressmethodName(required): Method nameparameters(optional): Method parametersabi(optional): Contract ABIvalue(optional): Ether value to sendgasLimit(optional): Gas limitgasPrice(optional): Gas price
ERC20 Token Management
deploy_erc20_token
Deploy a new ERC20 token contract.
Parameters:
name(required): Token name (e.g., "My Token")symbol(required): Token symbol (e.g., "MTK")decimals(optional): Token decimals (default: 18)initialSupply(required): Initial token supplymintable(optional): Whether the token should be mintable (default: false)gasLimit(optional): Gas limitgasPrice(optional): Gas price
Example:
get_token_info
Get information about an ERC20 token.
Parameters:
tokenAddress(required): ERC20 token contract address
Example:
mint_tokens
Mint tokens (only for mintable tokens).
Parameters:
tokenAddress(required): ERC20 token contract addressto(required): Address to mint tokens toamount(required): Amount of tokens to mintgasLimit(optional): Gas limitgasPrice(optional): Gas price
Example:
🏗️ Development
Project Structure
Scripts
Contributing
Fork the repository
Create a feature branch:
git checkout -b feature/amazing-featureCommit your changes:
git commit -m 'Add amazing feature'Push to the branch:
git push origin feature/amazing-featureOpen a Pull Request
🔒 Security
Private Keys: Never commit private keys to version control
Environment Variables: Use
.envfiles for sensitive configurationNetwork Security: Use HTTPS endpoints in production
Wallet Security: Store mnemonic phrases securely
📚 Documentation
🤝 Community
Developers: Contribute to backend or frontend development, API design, or documentation
Testers: Help stress-test the gateway, identify bugs, and provide UX feedback
Content Creators: Assist with user guides, tutorials, and community outreach
Community Support: Help onboard new users and foster engagement
📄 License
This project is licensed under the MIT License - see the LICENSE file for details.
🙏 Acknowledgments
Model Context Protocol for the standardized interface
Ethers.js for Ethereum interactions
The Hyperion blockchain community
Made with ❤️ by the Hyperion MCP Team
This server cannot be installed