set_leverage
Adjust leverage settings for perpetual trading positions on Hyperliquid to manage risk exposure and trading strategy.
Instructions
Set leverage for a perpetual market
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| symbol | Yes | Market symbol | |
| leverage | Yes | Leverage multiplier (e.g. 5, 10, 20) | |
| is_cross | No | Use cross margin (default: true) |
Implementation Reference
- src/hyperliquid_mcp/client.py:166-170 (handler)The handler function that executes set_leverage logic. It calls the Hyperliquid exchange API to update leverage for a given symbol.
def set_leverage(self, symbol: str, leverage: int, is_cross: bool = True) -> dict[str, Any]: """Set leverage for a market.""" exchange = self._require_exchange() result = exchange.update_leverage(leverage, symbol.upper(), is_cross=is_cross) return {"symbol": symbol, "leverage": leverage, "cross": is_cross, "result": result} - src/hyperliquid_mcp/server.py:93-105 (schema)The JSON schema definition for the set_leverage tool, specifying input parameters: symbol (string), leverage (integer), and is_cross (boolean, default true).
Tool( name="set_leverage", description="Set leverage for a perpetual market", inputSchema={ "type": "object", "properties": { "symbol": {"type": "string", "description": "Market symbol"}, "leverage": {"type": "integer", "description": "Leverage multiplier (e.g. 5, 10, 20)"}, "is_cross": {"type": "boolean", "description": "Use cross margin (default: true)", "default": True}, }, "required": ["symbol", "leverage"], }, ), - src/hyperliquid_mcp/server.py:156-157 (registration)The dispatch case that routes set_leverage tool calls to the client handler, extracting symbol, leverage, and optional is_cross from arguments.
case "set_leverage": return client.set_leverage(args["symbol"], args["leverage"], args.get("is_cross", True))