Skip to content

Aurracloud/hyperliquid-mcp

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Hyperliquid MCP Server

A Model Context Protocol (MCP) server for Hyperliquid API integration. This server provides tools for querying Hyperliquid perpetual trading data including positions, trades, vaults, funding rates, and real-time market information.

Features

Trader & Position Tools

  • Get Trader Positions: Retrieve all positions for a specific trader
  • Get Position for Market: Get a trader's position for a specific market/coin
  • Get Open Orders: Retrieve open orders for a trader
  • Get User Fills: Get trading history (fills) for a user

Market Data Tools

  • Get Markets: List all available markets/assets on Hyperliquid
  • Get Market Price: Get current price for a specific market
  • Get Meta Information: Retrieve meta information about the exchange
  • Get All Mid Prices: Get all current mid prices

Funding Rate Tools

  • Get Funding Rates: Retrieve funding rates for all markets
  • Get Predicted Fundings: Get predicted funding rates
  • Get Market Funding Rate: Get funding rate for a specific market
  • Get Next Funding Time: Get next funding time for a specific market

Vault Tools

  • Get Vault Details: Get detailed information about a specific vault
  • Get User Vault Equities: Get a user's vault equities/deposits
  • Get User Sub Accounts: Get user's subaccounts
  • Calculate Vault Metrics: Calculate performance metrics for a vault
  • Get Vault Portfolio Data: Get portfolio performance data for a vault
  • Validate Vault Address: Check if an address is a valid vault address
  • Get Vault Strategies: Get vault strategies (child addresses) for a vault

Installation

# with mcp-cli installed
mcp install -g @aurracloud/hyperliquid-mcp

# direct install
npx -y @aurracloud/mcp-cli install @aurracloud/hyperliquid-mcp -c cursor

Usage

With Claude Desktop

Add to your Claude Desktop configuration:

{
  "mcpServers": {
    "hyperliquid": {
      "command": "npx",
      "args": ["-y", "@aurracloud/hyperliquid-mcp"],
      "env": {
        "HYPERLIQUID_TESTNET": "false"
      }
    }
  }
}

Environment Variables

  • HYPERLIQUID_TESTNET: Set to "true" to use Hyperliquid testnet instead of mainnet (optional, default: false)
  • DEBUG: Set to "true" to enable debug logging (optional, default: false)

Available Tools

Trader Position Tools

HYPERLIQUID_getTraderPositions

Get all positions for a specific trader on Hyperliquid.

Parameters:

  • userAddress (string): The trader's wallet address (0x format)

HYPERLIQUID_getTraderPositionForMarket

Get a trader's position for a specific market/coin on Hyperliquid.

Parameters:

  • userAddress (string): The trader's wallet address (0x format)
  • coin (string): The market/coin symbol (e.g., 'BTC', 'ETH')

HYPERLIQUID_getOpenOrders

Get open orders for a trader on Hyperliquid.

Parameters:

  • userAddress (string): The trader's wallet address (0x format)

HYPERLIQUID_getUserFills

Get trading history (fills) for a user on Hyperliquid.

Parameters:

  • userAddress (string): The trader's wallet address (0x format)

Market Data Tools

HYPERLIQUID_getMarkets

Get all available markets/assets on Hyperliquid.

Parameters: None

HYPERLIQUID_getMarketPrice

Get current price for a specific market on Hyperliquid.

Parameters:

  • coin (string): The market/coin symbol (e.g., 'BTC', 'ETH')

HYPERLIQUID_getMeta

Get meta information about the Hyperliquid exchange.

Parameters: None

HYPERLIQUID_getAllMids

Get all current mid prices on Hyperliquid.

Parameters: None

Funding Rate Tools

HYPERLIQUID_getFundingRates

Get funding rates for all markets on Hyperliquid.

Parameters: None

HYPERLIQUID_getPredictedFundings

Get predicted funding rates for all markets on Hyperliquid.

Parameters: None

HYPERLIQUID_getMarketFundingRate

Get funding rate for a specific market on Hyperliquid.

Parameters:

  • coin (string): The market/coin symbol (e.g., 'BTC', 'ETH')

HYPERLIQUID_getNextFundingTime

Get next funding time for a specific market on Hyperliquid.

Parameters:

  • coin (string): The market/coin symbol (e.g., 'BTC', 'ETH')

Vault Tools

HYPERLIQUID_getVaultDetails

Get detailed information about a specific vault on Hyperliquid.

Parameters:

  • vaultAddress (string): The vault address (0x format)
  • userAddress (string, optional): Optional user address to get user-specific vault data

HYPERLIQUID_getUserVaultEquities

Get a user's vault equities/deposits on Hyperliquid.

Parameters:

  • userAddress (string): The user's wallet address (0x format)

HYPERLIQUID_getUserSubAccounts

Get user's subaccounts on Hyperliquid.

Parameters:

  • userAddress (string): The user's wallet address (0x format)

HYPERLIQUID_calculateVaultMetrics

Calculate performance metrics for a vault on Hyperliquid.

Parameters:

  • vaultAddress (string): The vault address (0x format)

HYPERLIQUID_getVaultPortfolioData

Get portfolio performance data for a vault on Hyperliquid.

Parameters:

  • vaultAddress (string): The vault address (0x format)

HYPERLIQUID_isValidVaultAddress

Check if an address is a valid vault address on Hyperliquid.

Parameters:

  • address (string): The address to validate as a vault address

HYPERLIQUID_getVaultStrategies

Get vault strategies (child addresses) for a vault on Hyperliquid.

Parameters:

  • vaultAddress (string): The vault address (0x format)

Development

Building

npm run build

Running in Development

npm run dev

Examples

Get BTC Market Price

// Using the HYPERLIQUID_getMarketPrice tool
{
  "coin": "BTC"
}

Get Trader Positions

// Using the HYPERLIQUID_getTraderPositions tool
{
  "userAddress": "0x1234567890123456789012345678901234567890"
}

Get Vault Details

// Using the HYPERLIQUID_getVaultDetails tool
{
  "vaultAddress": "0xdfc24b077bc1425ad1dea75bcb6f8158e10df303"
}

Get Funding Rate for ETH

// Using the HYPERLIQUID_getMarketFundingRate tool
{
  "coin": "ETH"
}

Error Handling

All tools include comprehensive error handling and will return structured error messages if:

  • Invalid address formats are provided
  • Network requests fail
  • Invalid market symbols are used
  • Vault addresses don't exist

License

MIT

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

Support

For issues and questions, please open an issue on the GitHub repository.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published