Hyperliquid MCP 服务器

提供访问Hyperliquid API的MCP服务器,使AI代理和LLM能够通过标准化工具与Hyperliquid交互。

  • by Traia-IO
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 Traia-IO/hyperliquid-mcp-server-prod

使用说明

超液体MCP服务器

这是一个MCP(模型上下文协议)服务器,提供对Hyperliquid API的访问。它使AI代理和LLM能够通过标准化工具与Hyperliquit进行交互。

特性

  • 🔧 MCP协议:基于模型上下文协议构建,实现无缝的人工智能集成
  • 🌐 市场数据访问:为Hyperliquit永久期货数据提供工具
  • 🐳 Docker支持:使用Docker和Docker Compose轻松部署
  • ⚡ 异步操作:内置FastMCP,实现高效异步处理

API文档

  • 超液体网站: https://api.hyperliquid.xyz
  • API文档: https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api

可用工具

此服务器提供以下工具:

  • get_exchange_meta:获取交易所元数据,包括完整的交易范围和资产配置
  • get_all_markets:获取所有可用的交易市场及其当前的中间价格
  • get_funding_history:获取特定永久期货币的融资率历史记录(需要 coin 参数)
  • get_candles:获取特定硬币的OHLCV(开盘、高、低、收盘、成交量)烛台数据(需要 coin 和 interval 参数)
  • get_recent_trades:获取特定永久期货币的最近交易(需要 coin 参数)

安装

使用Docker(推荐)

  1. 克隆此存储库:

    git clone https://github.com/Traia-IO/hyperliquid-mcp-server.git
    cd hyperliquid-mcp-server
    
  2. 使用Docker运行:

    ./run_local_docker.sh
    

使用Docker Compose

  1. 创建一个 .env 使用您的配置文件:

    PORT=8000
    
  2. 启动服务器:

    docker-compose up
    

手动安装

  1. 使用安装依赖项 uv:

    uv pip install -e .
    
  2. 运行服务器:

    uv run python -m server
    

用法

健康检查

测试服务器是否正在运行:

python mcp_health_check.py

使用CrewAI

from traia_iatp.mcp.traia_mcp_adapter import create_mcp_adapter

# Connect to the MCP server
with create_mcp_adapter(
    url="http://localhost:8000/mcp/"
) as tools:
    # List all available tools
    for tool in tools:
        print(f"Available tool: {tool.name}")

    # Example: Get exchange metadata
    result = await tools.get_exchange_meta()
    print(result)

    # Example: Get all markets with mid prices
    markets = await tools.get_all_markets()
    print(markets)

    # Example: Get funding history for BTC
    funding = await tools.get_funding_history(coin="BTC")
    print(funding)

    # Example: Get candlestick data for ETH (1 hour intervals)
    candles = await tools.get_candles(coin="ETH", interval="1h")
    print(candles)

    # Example: Get recent trades for SOL
    trades = await tools.get_recent_trades(coin="SOL")
    print(trades)

发展

测试服务器

  1. 在本地启动服务器
  2. 运行健康检查: python mcp_health_check.py
  3. 使用CrewAI适配器测试单个工具

添加新工具

要添加新工具,请编辑 server.py 以及:

  1. 为Hyperliquid端点创建API客户端函数
  2. 添加 @mcp.tool() 装饰功能
  3. 使用新工具更新此README
  4. 更新 deployment_params.json 工具名称位于功能数组中

部署

部署配置

这 deployment_params.json 文件包含此MCP服务器的部署配置:

{
  "github_url": "https://github.com/Traia-IO/hyperliquid-mcp-server",
  "mcp_server": {
    "name": "hyperliquid-mcp",
    "description": "Deployment of hyperliquid dex api - perpetual futures market data",
    "server_type": "streamable-http",
    "requires_api_key": false,
    "capabilities": [
      "get_exchange_meta",
      "get_all_markets",
      "get_funding_history",
      "get_candles",
      "get_recent_trades"
    ],
    "payment_protocol": "402"
  },
  "deployment_method": "cloud_run",
  "gcp_project_id": "traia-mcp-servers",
  "gcp_region": "us-central1",
  "tags": ["hyperliquid", "api", "mcp"],
  "ref": "main"
}

重要:始终更新 capabilities 添加或删除工具时使用数组!

谷歌云运行

此服务器旨在部署在Google Cloud Run上。部署将:

  1. 从Dockerfile构建一个容器
  2. 使用指定配置部署到Cloud Run
  3. 暴露 /mcp 客户端连接的端点

环境变量

  • PORT:服务器端口(默认值:8000)
  • STAGE:环境阶段(默认:MAINNET,选项:MAINNET、TESTNET)
  • LOG_LEVEL:日志记录级别(默认值:INFO)
  • SERVER_ADDRESS:付款地址(IATP钱包合约)
  • MCP_OPERATOR_PRIVATE_KEY:支付协议的操作员签名密钥
  • MCP_OPERATOR_ADDRESS:结算验证操作员公共地址
  • D402_TESTING_MODE:跳过测试主持人(默认值:false)
  • D402_FACILITATOR_URL:支付服务商URL(如果启用了测试模式,则可选)
  • D402_FACILITATOR_API_KEY:主持人API密钥(可选)
  • DEFAULT_SETTLEMENT_TOKEN:默认结算令牌地址
  • DEFAULT_SETTLEMENT_NETWORK:默认结算网络
  • NETWORK:区块链网络(默认:sepolia)

故障排除

  1. 服务器未启动:使用以下命令检查Docker日志 docker logs <container-id>
  2. 连接错误:确保服务器在预期端口上运行
  3. 工具错误:检查服务器日志以获取详细的错误消息

贡献

  1. 分叉存储库
  2. 创建要素分支
  3. 实施新工具或改进
  4. 更新README和deployment_params.json
  5. 提交拉取请求

许可证

MIT许可证