MCP 문서 관리

메뉴

Hyperliquid

Hyperliquid

Hyperliquid MCP 서버는 Hyperliquid SDK를 통합하여 거래소 데이터에 접근하고 암호화폐 파생상품 거래를 용이하게 해주는 MCP 서버입니다. 이 서버는 AI 에이전트가 Hyperliquid 퍼프(perp) 거래소의 실시간 시장 데이터를 조회하고 분석할 수 있게 합니다.

특징

  • 거래소 데이터 통합: Hyperliquid SDK를 통해 100개 이상의 암호화폐 파생상품(perps) 시장 데이터 접근
  • 실시간 시장 정보: 가격, 거래량, 유동성 등 실시간 시장 데이터 조회 가능
  • 계정 정보 조회: 사용자 계정 상태, 포지션, 거래 이력 등 조회 기능
  • 다양한 SDK 지원: TypeScript, Python, Rust 등 다양한 언어의 SDK 호환성
  • HTTP 및 WebSocket 지원: RESTful API 및 실시간 WebSocket 연결 지원

API

도구

시장 데이터 도구

  • get_markets: 사용 가능한 모든 마켓 정보 조회
  • 입력: 없음
  • 출력: 거래 가능한 마켓 목록과 기본 정보

  • get_market_info: 특정 마켓의 상세 정보 조회

  • 입력: 마켓 심볼(예: "BTC", "ETH")
  • 출력: 심볼, 기본 가격, 틱 사이즈, 최소 주문량 등

  • get_orderbook: 특정 마켓의 호가창 조회

  • 입력: 마켓 심볼
  • 출력: 매수/매도 주문 목록, 가격, 수량

  • get_recent_trades: 특정 마켓의 최근 거래 내역 조회

  • 입력: 마켓 심볼, 개수 제한(선택)
  • 출력: 최근 거래 목록(가격, 수량, 시간)

계정 정보 도구

  • get_user_state: 특정 사용자 계정 상태 조회
  • 입력: 계정 주소
  • 출력: 계정 잔액, 포지션, 미실현 손익 등

  • get_open_orders: 미체결 주문 조회

  • 입력: 계정 주소
  • 출력: 미체결 주문 목록

  • get_funding_rates: 자금 이율 정보 조회

  • 입력: 마켓 심볼(선택)
  • 출력: 현재 자금 이율 정보

웹소켓 기반 도구

  • subscribe_to_market: 마켓 데이터 실시간 구독
  • 입력: 마켓 심볼, 구독 유형(틱, 캔들, 거래 등)
  • 출력: 실시간 이벤트 스트림

  • subscribe_to_user_updates: 사용자 계정 업데이트 구독

  • 입력: 계정 주소, 업데이트 유형
  • 출력: 계정 상태 변화 이벤트 스트림

사용 방법

설치

# npm을 통한 설치
npm install -g @mektigboy/server-hyperliquid

# 또는 직접 리포지토리에서 클론
git clone https://github.com/mektigboy/server-hyperliquid.git
cd server-hyperliquid
npm install

구성

Claude Desktop에서 다음과 같이 구성 파일에 추가합니다:

{
  "mcpServers": {
    "hyperliquid": {
      "command": "npx",
      "args": ["-y", "@mektigboy/server-hyperliquid"],
      "env": {
        "HYPERLIQUID_API_URL": "https://api.hyperliquid.xyz",
        "HYPERLIQUID_PRIVATE_KEY": "your_private_key_optional"
      }
    }
  }
}

SDK 선택

Hyperliquid는 다양한 언어로 작성된 SDK를 제공합니다:

  • TypeScript/JavaScript SDK: @nktkas/hyperliquid 또는 공식 SDK
  • Python SDK: hyperliquid-python-sdk
  • Rust SDK: hyperliquid-rust-sdk

필요에 따라 적절한 SDK를 선택하여 사용할 수 있습니다.

예시 쿼리

// 사용 가능한 모든 마켓 정보 가져오기
const markets = await get_markets();
console.log(markets);

// BTC 마켓 정보 조회
const btcMarketInfo = await get_market_info("BTC");
console.log(btcMarketInfo);

// 특정 계정 상태 조회
const userState = await get_user_state("0xcd5051944f780a621ee62e39e493c489668acf4d");
console.log(userState);

연결된 구성 요소