跳至内容

MCP 工具参考

Hummingbot MCP 服务器向 AI 助手提供以下工具,用于自动化交易和投资组合管理。

账户工具

get_accounts

列出所有已连接的交易所账户及其状态。

返回:包含连接详情的账户对象数组

示例用法:

AI: "Show me all my connected exchange accounts"

get_account_balance

获取特定交易所账户的余额。

参数: - account_name(字符串):交易所账户名称

返回:指定账户的余额详情

示例用法:

AI: "What's my balance on Binance?"

投资组合工具

get_portfolio_balances

查看所有已连接交易所的汇总投资组合。

返回:跨交易所的所有资产统一视图

示例用法:

AI: "Show me my total portfolio balances"

get_portfolio_performance

分析包含盈亏(P&L)的投资组合绩效指标。

返回:绩效指标、回报率及分析结果

示例用法:

AI: "How has my portfolio performed this month?"

交易工具

place_order

在支持的交易所执行买入/卖出订单。

参数: - exchange(字符串):目标交易所 - trading_pair(字符串):交易对(例如 "BTC-USDT") - side(字符串):"buy" 或 "sell" - amount(数字):订单数量 - order_type(字符串):"market" 或 "limit" - price(数字,可选):限价单的价格

返回:包含订单 ID 的订单确认信息

示例用法:

AI: "Buy 0.1 BTC at market price on Binance"

cancel_order

取消现有订单。

参数: - order_id(字符串):要取消的订单 ID - exchange(字符串):订单所在的交易所

返回:取消确认信息

示例用法:

AI: "Cancel order 12345 on OKX"

get_open_orders

查看跨交易所的所有未成交订单。

参数: - exchange(字符串,可选):按特定交易所过滤

返回:包含详情的未成交订单列表

示例用法:

AI: "Show me all my open orders"

get_order_history

查看过往订单执行历史。

参数: - exchange(字符串,可选):按交易所过滤 - trading_pair(字符串,可选):按交易对过滤 - limit(数字,可选):返回的结果数量

返回:历史订单数据

示例用法:

AI: "Show my last 10 BTC orders"

仓位工具

get_positions

查看衍生品交易的未平仓仓位。

参数: - exchange(字符串,可选):按交易所过滤

返回:包含盈亏数据的未平仓仓位列表

示例用法:

AI: "What positions do I have open on Hyperliquid?"

close_position

以编程方式关闭特定仓位。

参数: - exchange(字符串):仓位所在的交易所 - symbol(字符串):仓位符号 - amount(数字,可选):部分平仓数量

返回:仓位关闭确认信息

示例用法:

AI: "Close my ETH position on Hyperliquid"

get_position_history

查看历史仓位数据与绩效。

参数: - exchange(字符串,可选):按交易所过滤 - limit(数字,可选):结果数量

返回:包含盈亏的历史仓位数据

示例用法:

AI: "Show my position history for the last month"

市场数据工具

get_ticker

获取交易对的当前价格数据。

参数: - exchange(字符串):目标交易所 - symbol(字符串):交易对符号

返回:当前价格、成交量及 24 小时统计信息

示例用法:

AI: "What's the current BTC price on Binance?"

get_orderbook

获取订单簿深度数据。

参数: - exchange(字符串):目标交易所 - symbol(字符串):交易对符号 - depth(数字,可选):订单簿深度级别

返回: 当前的买/卖订单及其数量

示例用法:

AI: "Show me the BTC orderbook on OKX"

get_funding_rates

监控各交易所的永续合约资金费率。

参数: - exchange(字符串,可选):按交易所过滤 - symbol(字符串,可选):按交易对过滤

返回: 当前资金费率及下一次资金结算时间

示例用法:

AI: "What are the funding rates for BTC perpetuals?"

工具使用示例

复杂工作流

投资组合再平衡:

AI: "Analyze my portfolio and rebalance to 60% BTC, 30% ETH, 10% SOL"
1. Uses get_portfolio_balances to assess current allocation
2. Calculates required trades using market data tools
3. Executes rebalancing orders with place_order
4. Confirms new allocation with updated portfolio data

风险管理:

AI: "Close any positions with more than 10% unrealized loss"
1. Uses get_positions to analyze all open positions
2. Identifies positions exceeding loss threshold
3. Uses close_position for each position meeting criteria
4. Reports actions taken and updated risk exposure

资金费率套利:

AI: "Find negative funding rate opportunities for BTC"
1. Uses get_funding_rates across multiple exchanges
2. Identifies profitable funding rate spreads
3. Opens positions to capture funding payments
4. Monitors and manages positions automatically

网关工具

管理网关容器

启动、停止或查看网关容器状态。

# Start Gateway
manage_gateway_container(
    action="start",
    config={
        "passphrase": "admin",
        "image": "hummingbot/gateway:latest",
        "port": 15888
    }
)

# Check status
manage_gateway_container(action="get_status")

# View logs
manage_gateway_container(action="get_logs", tail=100)

# Restart
manage_gateway_container(action="restart")

# Stop
manage_gateway_container(action="stop")

管理网关配置

管理链、网络、代币、连接器、资金池和钱包。

# List supported chains
manage_gateway_config(resource_type="chains", action="list")

# List networks
manage_gateway_config(resource_type="networks", action="list")

# Get specific network
manage_gateway_config(
    resource_type="networks",
    action="get",
    network_id="solana-mainnet-beta"
)

# List tokens on network
manage_gateway_config(
    resource_type="tokens",
    action="list",
    network_id="solana-mainnet-beta",
    search="USDC"  # Optional search filter
)

# Add token
manage_gateway_config(
    resource_type="tokens",
    action="add",
    network_id="solana-mainnet-beta",
    token_address="EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
    token_symbol="USDC",
    token_decimals=6,
    token_name="USD Coin"
)

# Add wallet
manage_gateway_config(
    resource_type="wallets",
    action="add",
    chain="solana",
    private_key="your_private_key"
)

# List DEX connectors
manage_gateway_config(resource_type="connectors", action="list")

# List pools
manage_gateway_config(
    resource_type="pools",
    action="list",
    connector_name="meteora",
    network="mainnet-beta"
)

管理网关兑换

在如Jupiter等去中心化交易所路由上进行报价和执行兑换。

# Get quote
manage_gateway_swaps(
    action="quote",
    connector="jupiter",
    network="solana-mainnet-beta",
    trading_pair="SOL-USDC",
    side="BUY",  # or "SELL"
    amount="1.0",  # Amount of base token
    slippage_pct="1.0"
)

# Execute swap
manage_gateway_swaps(
    action="execute",
    connector="jupiter",
    network="solana-mainnet-beta",
    trading_pair="SOL-USDC",
    side="BUY",
    amount="1.0",
    slippage_pct="1.0",
    wallet_address="your_wallet_address"  # Optional
)

# Search swap history
manage_gateway_swaps(
    action="search",
    search_connector="jupiter",
    search_network="solana-mainnet-beta",
    status="CONFIRMED",  # SUBMITTED, CONFIRMED, FAILED
    limit=50
)

# Check transaction status
manage_gateway_swaps(
    action="get_status",
    transaction_hash="your_tx_hash"
)

浏览网关 CLMM 资金池

浏览集中流动性资金池。

# List pools
explore_gateway_clmm_pools(
    action="list_pools",
    connector="meteora",
    page=0,
    limit=50,
    search_term="SOL",  # Optional filter
    sort_key="volume",  # volume, tvl, feetvlratio
    order_by="desc",
    include_unknown=True,
    detailed=False  # Set True for more columns
)

# Get specific pool info
explore_gateway_clmm_pools(
    action="get_pool_info",
    connector="meteora",
    network="solana-mainnet-beta",
    pool_address="pool_address_here"
)

管理网关 CLMM 头寸

开启、关闭头寸并从中收取费用。

# Open position
manage_gateway_clmm_positions(
    action="open_position",
    connector="meteora",
    network="solana-mainnet-beta",
    pool_address="pool_address",
    lower_price="150",
    upper_price="250",
    base_token_amount="1.0",  # Optional
    quote_token_amount="200",  # Optional
    slippage_pct="1.0",
    wallet_address="your_wallet",  # Optional
    extra_params={"strategyType": 0}  # Connector-specific
)

# Get positions for wallet/pool
manage_gateway_clmm_positions(
    action="get_positions",
    connector="meteora",
    network="solana-mainnet-beta",
    pool_address="pool_address",
    wallet_address="your_wallet"
)

# Collect fees
manage_gateway_clmm_positions(
    action="collect_fees",
    connector="meteora",
    network="solana-mainnet-beta",
    position_address="position_nft_address",
    wallet_address="your_wallet"
)

# Close position
manage_gateway_clmm_positions(
    action="close_position",
    connector="meteora",
    network="solana-mainnet-beta",
    position_address="position_nft_address",
    wallet_address="your_wallet"
)

工具响应格式

所有工具均返回结构化的 JSON 响应,AI 助手可解析并以自然语言向用户呈现。MCP 服务器负责处理底层 API 交互,而 AI 则提供用户友好的解释与建议。

错误处理

工具包含全面的错误处理机制,涵盖: - 无效参数 - 交易所连接问题
- 余额不足错误 - 速率限制 - 认证失败

错误响应包含描述性信息,AI 助手可将其转化为用户易懂的通俗语言。

安全注意事项

  • 所有交易操作均需经过适当的身份验证
  • 应正确配置仓位规模与风险限额
  • 定期监控 AI 交易活动
  • 为异常交易行为设置警报
  • 切勿在对话中分享 API 凭据