cuongpo/hyperion-mcp-server
If you are the rightful owner of hyperion-mcp-server and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to henry@mcphub.com.
The Hyperion MCP Server is a backend service designed for seamless interaction with the Hyperion blockchain using the Model Context Protocol (MCP).
create_wallet
Create a new wallet with a generated mnemonic phrase.
import_wallet
Import an existing wallet using a private key or mnemonic.
list_wallets
List all available wallets.
set_current_wallet
Set the active wallet for transactions.
get_current_wallet
Get current active wallet information.
š 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)
# Install Smithery CLI
npm install -g @smithery/cli
# Login to Smithery
smithery login
# Clone and deploy
git clone https://github.com/cuongpo/hyperion-mcp-server.git
cd hyperion-mcp-server
npm run build:smithery
smithery deploy
Option B: Local Installation
# Clone the repository
git clone https://github.com/cuongpo/hyperion-mcp-server.git
cd hyperion-mcp-server
# Install dependencies
npm install
# Build the project
npm run build
2. Configuration
# Copy the example environment file
cp .env.example .env
# Edit the configuration
nano .env
Configure your environment variables:
# Hyperion Testnet Configuration
HYPERION_RPC_URL=https://hyperion-testnet.metisdevops.link
HYPERION_CHAIN_ID=133717
HYPERION_NETWORK_NAME=Hyperion Testnet
HYPERION_CURRENCY_SYMBOL=tMETIS
HYPERION_EXPLORER_URL=https://hyperion-testnet-explorer.metisdevops.link
# Wallet Configuration (comma-separated for multiple wallets)
HYPERION_PRIVATE_KEYS=your_private_key_here
HYPERION_ADDRESSES=0x742d35Cc6634C0532925a3b8D4C9db96590c6C87
HYPERION_CURRENT_ADDRESS=0x742d35Cc6634C0532925a3b8D4C9db96590c6C87
3. Usage
Standalone Mode
npm start
Development Mode
npm run dev
MCP Client Integration
Add to your MCP client configuration:
{
"mcpServers": {
"hyperion-mcp": {
"command": "node",
"args": ["path/to/hyperion-mcp-server/build/index.js"],
"env": {
"HYPERION_RPC_URL": "https://hyperion-testnet.metisdevops.link",
"HYPERION_CHAIN_ID": "133717",
"HYPERION_NETWORK_NAME": "Hyperion Testnet",
"HYPERION_CURRENCY_SYMBOL": "tMETIS",
"HYPERION_PRIVATE_KEYS": "your_private_key_here",
"HYPERION_CURRENT_ADDRESS": "your_address_here"
}
}
}
}
š ļø Available Tools
Wallet Management
create_wallet
Create a new wallet with a generated mnemonic phrase.
Parameters:
name
(optional): Wallet name
Example:
{
"name": "create_wallet",
"arguments": {
"name": "MyWallet"
}
}
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:
{
"name": "deploy_erc20_token",
"arguments": {
"name": "My Token",
"symbol": "MTK",
"decimals": 18,
"initialSupply": "1000000",
"mintable": true
}
}
get_token_info
Get information about an ERC20 token.
Parameters:
tokenAddress
(required): ERC20 token contract address
Example:
{
"name": "get_token_info",
"arguments": {
"tokenAddress": "0x742d35Cc6634C0532925a3b8D4C9db96590c6C87"
}
}
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:
{
"name": "mint_tokens",
"arguments": {
"tokenAddress": "0x742d35Cc6634C0532925a3b8D4C9db96590c6C87",
"to": "0x1234567890123456789012345678901234567890",
"amount": "1000"
}
}
šļø Development
Project Structure
hyperion-mcp-server/
āāā src/
ā āāā index.ts # Main MCP server
ā āāā hyperion-client.ts # Blockchain client
ā āāā wallet-manager.ts # Wallet management
ā āāā types.ts # Type definitions
āāā build/ # Compiled JavaScript
āāā docs/ # Documentation
āāā examples/ # Example code
āāā package.json
āāā tsconfig.json
āāā README.md
Scripts
# Development
npm run dev # Run in development mode
npm run build # Build TypeScript
npm run start # Run built version
# Code Quality
npm run lint # Run ESLint
npm run format # Format with Prettier
npm test # Run tests
Contributing
- Fork the repository
- Create a feature branch:
git checkout -b feature/amazing-feature
- Commit your changes:
git commit -m 'Add amazing feature'
- Push to the branch:
git push origin feature/amazing-feature
- Open a Pull Request
š Security
- Private Keys: Never commit private keys to version control
- Environment Variables: Use
.env
files for sensitive configuration - Network 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 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