# API Reference
Complete reference for all Hyperion MCP Server tools and their parameters.
## Table of Contents
- [Wallet Management](#wallet-management)
- [Blockchain Operations](#blockchain-operations)
- [Token Operations](#token-operations)
- [Network Information](#network-information)
## Wallet Management
### create_wallet
Create a new Hyperion wallet with a generated mnemonic phrase.
**Parameters:**
| Name | Type | Required | Description |
|------|------|----------|-------------|
| `name` | string | Yes | Friendly name for the wallet |
**Returns:**
- Wallet address
- Mnemonic phrase (12 words)
- Success confirmation
**Example:**
```json
{
"name": "my-wallet"
}
```
---
### import_wallet
Import an existing wallet using private key or mnemonic phrase.
**Parameters:**
| Name | Type | Required | Description |
|------|------|----------|-------------|
| `privateKey` | string | No* | 64-character hex private key (without 0x) |
| `mnemonic` | string | No* | 12 or 24-word mnemonic phrase |
| `name` | string | No | Friendly name for the wallet |
*Either `privateKey` or `mnemonic` must be provided.
**Returns:**
- Wallet address
- Success confirmation
**Example:**
```json
{
"privateKey": "abc123def456...",
"name": "imported-wallet"
}
```
---
### list_wallets
List all available wallets.
**Parameters:** None
**Returns:**
- List of all wallets with addresses
- Current active wallet indicator
---
### set_current_wallet
Set the current active wallet for transactions.
**Parameters:**
| Name | Type | Required | Description |
|------|------|----------|-------------|
| `name` | string | Yes | Name of the wallet to activate |
**Returns:**
- Confirmation of wallet change
- New active wallet address
---
### get_current_wallet
Get the current active wallet information.
**Parameters:** None
**Returns:**
- Wallet name
- Wallet address
- Current balance
---
### get_balance
Get the balance of a wallet address (native tokens or ERC20 tokens).
**Parameters:**
| Name | Type | Required | Description |
|------|------|----------|-------------|
| `address` | string | No | Wallet address (defaults to current wallet) |
| `tokenAddress` | string | No | ERC20 token contract address |
**Returns:**
- Balance amount
- Token symbol
- Address information
---
### get_native_balance
Get the native tMETIS balance of a wallet address.
**Parameters:**
| Name | Type | Required | Description |
|------|------|----------|-------------|
| `address` | string | No | Wallet address (defaults to current wallet) |
**Returns:**
- tMETIS balance
- Address information
- Network details
## Blockchain Operations
### send_transaction
Send native tokens or ERC20 tokens to another address.
**Parameters:**
| Name | Type | Required | Description |
|------|------|----------|-------------|
| `to` | string | Yes | Recipient address |
| `amount` | string | Yes | Amount to send |
| `tokenAddress` | string | No | ERC20 token contract (omit for native) |
| `gasLimit` | string | No | Custom gas limit |
| `gasPrice` | string | No | Custom gas price in gwei |
**Returns:**
- Transaction hash
- Gas used
- Transaction status
- Explorer link
**Example - Native Transfer:**
```json
{
"to": "0x742d35Cc6634C0532925a3b844Bc9e7595f0bEb",
"amount": "1.5"
}
```
**Example - ERC20 Transfer:**
```json
{
"to": "0x742d35Cc6634C0532925a3b844Bc9e7595f0bEb",
"amount": "100",
"tokenAddress": "0xabc123...def456"
}
```
---
### get_transaction
Get details of a transaction by hash.
**Parameters:**
| Name | Type | Required | Description |
|------|------|----------|-------------|
| `hash` | string | Yes | Transaction hash |
**Returns:**
- Transaction details
- Block number
- Gas information
- Status
- Explorer link
---
### get_block
Get block information by number or hash.
**Parameters:**
| Name | Type | Required | Description |
|------|------|----------|-------------|
| `blockNumber` | string | No | Block number (defaults to latest) |
| `blockHash` | string | No | Block hash |
**Returns:**
- Block details
- Transaction count
- Gas information
- Timestamp
- Explorer link
---
### estimate_gas
Estimate gas cost for a transaction.
**Parameters:**
| Name | Type | Required | Description |
|------|------|----------|-------------|
| `to` | string | Yes | Recipient address |
| `amount` | string | Yes | Amount to send |
| `tokenAddress` | string | No | ERC20 token contract |
| `data` | string | No | Contract call data |
**Returns:**
- Estimated gas units
- Current gas price
- Estimated cost in tMETIS
---
### get_network_info
Get current network information and status.
**Parameters:** None
**Returns:**
- Network name
- Chain ID
- RPC URL
- Explorer URL
- Current block number
- Gas price
## Token Operations
### deploy_erc20_token
Deploy a new ERC20 token contract.
**Parameters:**
| Name | Type | Required | Description |
|------|------|----------|-------------|
| `name` | string | Yes | Token name |
| `symbol` | string | Yes | Token symbol |
| `initialSupply` | string | Yes | Initial token supply |
| `decimals` | number | No | Token decimals (default: 18) |
| `mintable` | boolean | No | Allow minting (default: false) |
| `gasLimit` | string | No | Custom gas limit |
| `gasPrice` | string | No | Custom gas price |
**Returns:**
- Contract address
- Transaction hash
- Token details
- Gas used
- Explorer links
---
### deploy_erc721_token
Deploy a new ERC721 (NFT) token contract.
**Parameters:**
| Name | Type | Required | Description |
|------|------|----------|-------------|
| `name` | string | Yes | Collection name |
| `symbol` | string | Yes | Collection symbol |
| `mintable` | boolean | No | Allow minting (default: false) |
| `gasLimit` | string | No | Custom gas limit |
| `gasPrice` | string | No | Custom gas price |
**Returns:**
- Contract address
- Transaction hash
- Collection details
- Gas used
- Explorer links
---
### get_token_info
Get comprehensive ERC20 token information.
**Parameters:**
| Name | Type | Required | Description |
|------|------|----------|-------------|
| `tokenAddress` | string | Yes | Token contract address |
**Returns:**
- Token name
- Token symbol
- Decimals
- Total supply
- Owner address
- Explorer link
---
### mint_tokens
Mint additional tokens for mintable ERC20 contracts (owner only).
**Parameters:**
| Name | Type | Required | Description |
|------|------|----------|-------------|
| `tokenAddress` | string | Yes | Token contract address |
| `to` | string | Yes | Recipient address |
| `amount` | string | Yes | Amount to mint |
| `gasLimit` | string | No | Custom gas limit |
| `gasPrice` | string | No | Custom gas price |
**Returns:**
- Transaction hash
- Minted amount
- Recipient
- Gas used
- Explorer links
---
### get_nft_info
Get comprehensive ERC721 NFT information.
**Parameters:**
| Name | Type | Required | Description |
|------|------|----------|-------------|
| `tokenAddress` | string | Yes | NFT contract address |
| `tokenId` | string | No | Specific token ID |
**Returns:**
- Collection name and symbol
- Owner address
- Token URI (if tokenId provided)
- Explorer link
---
### mint_nft
Mint a new NFT for mintable ERC721 contracts (owner only).
**Parameters:**
| Name | Type | Required | Description |
|------|------|----------|-------------|
| `tokenAddress` | string | Yes | NFT contract address |
| `to` | string | Yes | Recipient address |
| `tokenId` | string | Yes | Token ID to mint |
| `tokenURI` | string | No | Metadata URI |
| `gasLimit` | string | No | Custom gas limit |
| `gasPrice` | string | No | Custom gas price |
**Returns:**
- Transaction hash
- Token ID
- Token URI
- Gas used
- Explorer links
---
**Next**: Learn about [Integration](./integration-guide.md) →