{"protocolVersion":"2025-06-18","capabilities":{"tools":{"listChanged":false}},"agentGuidance":{"description":"General guidance for external AI agents using this MCP server. Read before selecting a project endpoint, requesting tool schemas, or calling protocol tools.","skillUrl":"https://erc8004.heyanon.ai/mcp/skill.md"},"serverInfo":{"name":"heyanon-erc8004-aster","version":"1.0.0"},"tools":[{"name":"depositToAster","description":"Deposit funds to Aster. Not available in ERC-8004 CEX action mode; returns an ERC-8004 error response.","inputSchema":{"type":"object","properties":{"chainName":{"type":"string"},"tokenAddress":{"type":"string"},"amount":{"type":"string"}},"required":["chainName","tokenAddress","amount"],"additionalProperties":false},"outputSchema":{"type":"object","anyOf":[{"type":"object","properties":{"project":{"type":"string","description":"Protocol identifier"},"operation":{"type":"string","description":"Operation that produced this response"},"note":{"description":"Human-readable summary of the action","type":"string"},"cexApiRequestActions":{"type":"array","items":{"type":"object","properties":{"url":{"type":"string","format":"uri","description":"The URL of the CEX API request"},"method":{"type":"string","enum":["POST","GET","PUT","DELETE"],"description":"HTTP method"},"headers":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"string"},"description":"Request headers"},"body":{"description":"Request body as JSON string","type":"string"},"toSign":{"type":"string","description":"Raw bytes (hex) to sign/HMAC for auth header"}},"required":["url","method","headers","toSign"],"additionalProperties":false},"description":"Unsigned API requests to sign and send sequentially"}},"required":["project","operation","cexApiRequestActions"],"additionalProperties":false},{"type":"object","properties":{"project":{"type":"string","description":"Protocol identifier"},"operation":{"type":"string","description":"Operation that produced this response"},"error":{"type":"string","description":"Error message"}},"required":["project","operation","error"],"additionalProperties":false}]}},{"name":"withdrawFromAster","description":"Withdraw funds from Aster. Not available in ERC-8004 CEX action mode because Aster requires wallet EIP-712 authorization.","inputSchema":{"type":"object","properties":{"chainName":{"type":"string"},"asset":{"type":"string"},"amount":{"type":"string"}},"required":["chainName","asset","amount"],"additionalProperties":false},"outputSchema":{"type":"object","anyOf":[{"type":"object","properties":{"project":{"type":"string","description":"Protocol identifier"},"operation":{"type":"string","description":"Operation that produced this response"},"note":{"description":"Human-readable summary of the action","type":"string"},"cexApiRequestActions":{"type":"array","items":{"type":"object","properties":{"url":{"type":"string","format":"uri","description":"The URL of the CEX API request"},"method":{"type":"string","enum":["POST","GET","PUT","DELETE"],"description":"HTTP method"},"headers":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"string"},"description":"Request headers"},"body":{"description":"Request body as JSON string","type":"string"},"toSign":{"type":"string","description":"Raw bytes (hex) to sign/HMAC for auth header"}},"required":["url","method","headers","toSign"],"additionalProperties":false},"description":"Unsigned API requests to sign and send sequentially"}},"required":["project","operation","cexApiRequestActions"],"additionalProperties":false},{"type":"object","properties":{"project":{"type":"string","description":"Protocol identifier"},"operation":{"type":"string","description":"Operation that produced this response"},"error":{"type":"string","description":"Error message"}},"required":["project","operation","error"],"additionalProperties":false}]}},{"name":"transferBetweenAccounts","description":"Transfer funds between Aster spot and futures accounts.","inputSchema":{"type":"object","properties":{"asset":{"type":"string","description":"Asset to transfer, e.g. \"USDT\""},"amount":{"type":"number","description":"Amount to transfer. Must be positive."},"fromAccount":{"type":"string","enum":["SPOT","FUTURES"]},"toAccount":{"type":"string","enum":["SPOT","FUTURES"]}},"required":["asset","amount","fromAccount","toAccount"],"additionalProperties":false},"outputSchema":{"type":"object","anyOf":[{"type":"object","properties":{"project":{"type":"string","description":"Protocol identifier"},"operation":{"type":"string","description":"Operation that produced this response"},"note":{"description":"Human-readable summary of the action","type":"string"},"cexApiRequestActions":{"type":"array","items":{"type":"object","properties":{"url":{"type":"string","format":"uri","description":"The URL of the CEX API request"},"method":{"type":"string","enum":["POST","GET","PUT","DELETE"],"description":"HTTP method"},"headers":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"string"},"description":"Request headers"},"body":{"description":"Request body as JSON string","type":"string"},"toSign":{"type":"string","description":"Raw bytes (hex) to sign/HMAC for auth header"}},"required":["url","method","headers","toSign"],"additionalProperties":false},"description":"Unsigned API requests to sign and send sequentially"}},"required":["project","operation","cexApiRequestActions"],"additionalProperties":false},{"type":"object","properties":{"project":{"type":"string","description":"Protocol identifier"},"operation":{"type":"string","description":"Operation that produced this response"},"error":{"type":"string","description":"Error message"}},"required":["project","operation","error"],"additionalProperties":false}]}},{"name":"getDescriptionAster","description":"Get a short description of the ERC-8004 Aster integration.","inputSchema":{"type":"object","properties":{},"additionalProperties":false},"outputSchema":{"type":"object","anyOf":[{"type":"object","properties":{"project":{"type":"string","description":"Protocol identifier"},"operation":{"type":"string","description":"Operation that produced this response"},"note":{"description":"Human-readable summary of the action","type":"string"},"data":{"type":"string"}},"required":["project","operation","data"],"additionalProperties":false},{"type":"object","properties":{"project":{"type":"string","description":"Protocol identifier"},"operation":{"type":"string","description":"Operation that produced this response"},"error":{"type":"string","description":"Error message"}},"required":["project","operation","error"],"additionalProperties":false}]}},{"name":"createSimpleOrder","description":"Create an Aster futures order that is activated immediately.","inputSchema":{"type":"object","properties":{"market":{"type":"string","description":"Symbol of the futures market to trade, e.g. \"BTC/USDT\". The FIRST (base) currency is the asset being longed or shorted."},"side":{"type":"string","enum":["long","short"],"description":"Side of the futures order, either \"long\" or \"short\". Long and short are relative to the FIRST (base) currency in the market symbol."},"amount":{"type":"number","description":"Amount is the final trade size; do not scale, prorate, or recalculate it by leverage or price. amountCurrency: BASE means the first currency of the market symbol. QUOTE means the second currency of the market symbol, e.g. USDT in BTC/USDT. Do not convert between BASE and QUOTE before calling the tool."},"amountCurrency":{"type":"string","enum":["BASE","QUOTE"],"description":"Specifies whether amount is denominated in base currency or quote currency"},"limitPrice":{"anyOf":[{"type":"number"},{"type":"null"}],"description":"Execution price for a limit order. Pass null for a market order."},"positionMode":{"type":"string","enum":["HEDGE","ONE_WAY"],"description":"Current Aster futures position mode. Use getPositionMode first if unknown. HEDGE maps long/short to LONG/SHORT; ONE_WAY maps both to BOTH."}},"required":["market","side","amount","amountCurrency","limitPrice","positionMode"],"additionalProperties":false},"outputSchema":{"type":"object","anyOf":[{"type":"object","properties":{"project":{"type":"string","description":"Protocol identifier"},"operation":{"type":"string","description":"Operation that produced this response"},"note":{"description":"Human-readable summary of the action","type":"string"},"cexApiRequestActions":{"type":"array","items":{"type":"object","properties":{"url":{"type":"string","format":"uri","description":"The URL of the CEX API request"},"method":{"type":"string","enum":["POST","GET","PUT","DELETE"],"description":"HTTP method"},"headers":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"string"},"description":"Request headers"},"body":{"description":"Request body as JSON string","type":"string"},"toSign":{"type":"string","description":"Raw bytes (hex) to sign/HMAC for auth header"}},"required":["url","method","headers","toSign"],"additionalProperties":false},"description":"Unsigned API requests to sign and send sequentially"}},"required":["project","operation","cexApiRequestActions"],"additionalProperties":false},{"type":"object","properties":{"project":{"type":"string","description":"Protocol identifier"},"operation":{"type":"string","description":"Operation that produced this response"},"error":{"type":"string","description":"Error message"}},"required":["project","operation","error"],"additionalProperties":false}]}},{"name":"createTriggerOrder","description":"Create an Aster futures order that activates when a trigger price is reached.","inputSchema":{"type":"object","properties":{"market":{"type":"string","description":"Symbol of the futures market to trade, e.g. \"BTC/USDT\". The FIRST (base) currency is the asset being longed or shorted."},"side":{"type":"string","enum":["long","short"],"description":"Side of the futures order, either \"long\" or \"short\". Long and short are relative to the FIRST (base) currency in the market symbol."},"amount":{"type":"number","description":"Amount is the final trade size; do not scale, prorate, or recalculate it by leverage or price. amountCurrency: BASE means the first currency of the market symbol. QUOTE means the second currency of the market symbol, e.g. USDT in BTC/USDT. Do not convert between BASE and QUOTE before calling the tool."},"amountCurrency":{"type":"string","enum":["BASE","QUOTE"],"description":"Specifies whether amount is denominated in base currency or quote currency"},"triggerPrice":{"type":"number"},"limitPrice":{"anyOf":[{"type":"number"},{"type":"null"}],"description":"Execution price for a limit order. Pass null for a market order."},"positionMode":{"type":"string","enum":["HEDGE","ONE_WAY"],"description":"Current Aster futures position mode. Use getPositionMode first if unknown. HEDGE maps long/short to LONG/SHORT; ONE_WAY maps both to BOTH."}},"required":["market","side","amount","amountCurrency","triggerPrice","limitPrice","positionMode"],"additionalProperties":false},"outputSchema":{"type":"object","anyOf":[{"type":"object","properties":{"project":{"type":"string","description":"Protocol identifier"},"operation":{"type":"string","description":"Operation that produced this response"},"note":{"description":"Human-readable summary of the action","type":"string"},"cexApiRequestActions":{"type":"array","items":{"type":"object","properties":{"url":{"type":"string","format":"uri","description":"The URL of the CEX API request"},"method":{"type":"string","enum":["POST","GET","PUT","DELETE"],"description":"HTTP method"},"headers":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"string"},"description":"Request headers"},"body":{"description":"Request body as JSON string","type":"string"},"toSign":{"type":"string","description":"Raw bytes (hex) to sign/HMAC for auth header"}},"required":["url","method","headers","toSign"],"additionalProperties":false},"description":"Unsigned API requests to sign and send sequentially"}},"required":["project","operation","cexApiRequestActions"],"additionalProperties":false},{"type":"object","properties":{"project":{"type":"string","description":"Protocol identifier"},"operation":{"type":"string","description":"Operation that produced this response"},"error":{"type":"string","description":"Error message"}},"required":["project","operation","error"],"additionalProperties":false}]}},{"name":"createTrailingStopOrder","description":"Create an Aster futures trailing-stop order.","inputSchema":{"type":"object","properties":{"market":{"type":"string","description":"Symbol of the futures market to trade, e.g. \"BTC/USDT\". The FIRST (base) currency is the asset being longed or shorted."},"side":{"type":"string","enum":["long","short"],"description":"Side of the futures order, either \"long\" or \"short\". Long and short are relative to the FIRST (base) currency in the market symbol."},"amount":{"type":"number","description":"Amount is the final trade size; do not scale, prorate, or recalculate it by leverage or price. amountCurrency: BASE means the first currency of the market symbol. QUOTE means the second currency of the market symbol, e.g. USDT in BTC/USDT. Do not convert between BASE and QUOTE before calling the tool."},"amountCurrency":{"type":"string","enum":["BASE","QUOTE"],"description":"Specifies whether amount is denominated in base currency or quote currency"},"callbackRate":{"type":"number","description":"Trailing callback rate as a percentage, between 0 and 100."},"activationPrice":{"description":"Trailing stop activation price. Omit to activate immediately at order placement.","type":"number"},"positionMode":{"type":"string","enum":["HEDGE","ONE_WAY"],"description":"Current Aster futures position mode. Use getPositionMode first if unknown. HEDGE maps long/short to LONG/SHORT; ONE_WAY maps both to BOTH."}},"required":["market","side","amount","amountCurrency","callbackRate","positionMode"],"additionalProperties":false},"outputSchema":{"type":"object","anyOf":[{"type":"object","properties":{"project":{"type":"string","description":"Protocol identifier"},"operation":{"type":"string","description":"Operation that produced this response"},"note":{"description":"Human-readable summary of the action","type":"string"},"cexApiRequestActions":{"type":"array","items":{"type":"object","properties":{"url":{"type":"string","format":"uri","description":"The URL of the CEX API request"},"method":{"type":"string","enum":["POST","GET","PUT","DELETE"],"description":"HTTP method"},"headers":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"string"},"description":"Request headers"},"body":{"description":"Request body as JSON string","type":"string"},"toSign":{"type":"string","description":"Raw bytes (hex) to sign/HMAC for auth header"}},"required":["url","method","headers","toSign"],"additionalProperties":false},"description":"Unsigned API requests to sign and send sequentially"}},"required":["project","operation","cexApiRequestActions"],"additionalProperties":false},{"type":"object","properties":{"project":{"type":"string","description":"Protocol identifier"},"operation":{"type":"string","description":"Operation that produced this response"},"error":{"type":"string","description":"Error message"}},"required":["project","operation","error"],"additionalProperties":false}]}},{"name":"cancelOrderById","description":"Cancel a specific Aster futures order by ID and market.","inputSchema":{"type":"object","properties":{"market":{"type":"string","description":"Symbol of the futures market to trade, e.g. \"BTC/USDT\". The FIRST (base) currency is the asset being longed or shorted."},"orderId":{"type":"number"}},"required":["market","orderId"],"additionalProperties":false},"outputSchema":{"type":"object","anyOf":[{"type":"object","properties":{"project":{"type":"string","description":"Protocol identifier"},"operation":{"type":"string","description":"Operation that produced this response"},"note":{"description":"Human-readable summary of the action","type":"string"},"cexApiRequestActions":{"type":"array","items":{"type":"object","properties":{"url":{"type":"string","format":"uri","description":"The URL of the CEX API request"},"method":{"type":"string","enum":["POST","GET","PUT","DELETE"],"description":"HTTP method"},"headers":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"string"},"description":"Request headers"},"body":{"description":"Request body as JSON string","type":"string"},"toSign":{"type":"string","description":"Raw bytes (hex) to sign/HMAC for auth header"}},"required":["url","method","headers","toSign"],"additionalProperties":false},"description":"Unsigned API requests to sign and send sequentially"}},"required":["project","operation","cexApiRequestActions"],"additionalProperties":false},{"type":"object","properties":{"project":{"type":"string","description":"Protocol identifier"},"operation":{"type":"string","description":"Operation that produced this response"},"error":{"type":"string","description":"Error message"}},"required":["project","operation","error"],"additionalProperties":false}]}},{"name":"cancelAllOrdersOnMarket","description":"Cancel all open Aster futures orders on a market.","inputSchema":{"type":"object","properties":{"market":{"type":"string","description":"Symbol of the futures market to trade, e.g. \"BTC/USDT\". The FIRST (base) currency is the asset being longed or shorted."}},"required":["market"],"additionalProperties":false},"outputSchema":{"type":"object","anyOf":[{"type":"object","properties":{"project":{"type":"string","description":"Protocol identifier"},"operation":{"type":"string","description":"Operation that produced this response"},"note":{"description":"Human-readable summary of the action","type":"string"},"cexApiRequestActions":{"type":"array","items":{"type":"object","properties":{"url":{"type":"string","format":"uri","description":"The URL of the CEX API request"},"method":{"type":"string","enum":["POST","GET","PUT","DELETE"],"description":"HTTP method"},"headers":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"string"},"description":"Request headers"},"body":{"description":"Request body as JSON string","type":"string"},"toSign":{"type":"string","description":"Raw bytes (hex) to sign/HMAC for auth header"}},"required":["url","method","headers","toSign"],"additionalProperties":false},"description":"Unsigned API requests to sign and send sequentially"}},"required":["project","operation","cexApiRequestActions"],"additionalProperties":false},{"type":"object","properties":{"project":{"type":"string","description":"Protocol identifier"},"operation":{"type":"string","description":"Operation that produced this response"},"error":{"type":"string","description":"Error message"}},"required":["project","operation","error"],"additionalProperties":false}]}},{"name":"closePositionOnMarket","description":"Close an Aster futures position using a reduce-only market order.","inputSchema":{"type":"object","properties":{"market":{"type":"string","description":"Symbol of the futures market to trade, e.g. \"BTC/USDT\". The FIRST (base) currency is the asset being longed or shorted."},"side":{"type":"string","enum":["long","short"],"description":"Current side of the position being closed."},"amount":{"type":"number","description":"Amount of base currency to close."},"positionMode":{"type":"string","enum":["HEDGE","ONE_WAY"],"description":"Current Aster futures position mode. Use getPositionMode first if unknown. HEDGE maps long/short to LONG/SHORT; ONE_WAY maps both to BOTH."}},"required":["market","side","amount","positionMode"],"additionalProperties":false},"outputSchema":{"type":"object","anyOf":[{"type":"object","properties":{"project":{"type":"string","description":"Protocol identifier"},"operation":{"type":"string","description":"Operation that produced this response"},"note":{"description":"Human-readable summary of the action","type":"string"},"cexApiRequestActions":{"type":"array","items":{"type":"object","properties":{"url":{"type":"string","format":"uri","description":"The URL of the CEX API request"},"method":{"type":"string","enum":["POST","GET","PUT","DELETE"],"description":"HTTP method"},"headers":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"string"},"description":"Request headers"},"body":{"description":"Request body as JSON string","type":"string"},"toSign":{"type":"string","description":"Raw bytes (hex) to sign/HMAC for auth header"}},"required":["url","method","headers","toSign"],"additionalProperties":false},"description":"Unsigned API requests to sign and send sequentially"}},"required":["project","operation","cexApiRequestActions"],"additionalProperties":false},{"type":"object","properties":{"project":{"type":"string","description":"Protocol identifier"},"operation":{"type":"string","description":"Operation that produced this response"},"error":{"type":"string","description":"Error message"}},"required":["project","operation","error"],"additionalProperties":false}]}},{"name":"closeAllPositions","description":"Returns an ERC-8004 error explaining that positions must be closed one by one with side and amount.","inputSchema":{"type":"object","properties":{},"additionalProperties":false},"outputSchema":{"type":"object","anyOf":[{"type":"object","properties":{"project":{"type":"string","description":"Protocol identifier"},"operation":{"type":"string","description":"Operation that produced this response"},"note":{"description":"Human-readable summary of the action","type":"string"},"cexApiRequestActions":{"type":"array","items":{"type":"object","properties":{"url":{"type":"string","format":"uri","description":"The URL of the CEX API request"},"method":{"type":"string","enum":["POST","GET","PUT","DELETE"],"description":"HTTP method"},"headers":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"string"},"description":"Request headers"},"body":{"description":"Request body as JSON string","type":"string"},"toSign":{"type":"string","description":"Raw bytes (hex) to sign/HMAC for auth header"}},"required":["url","method","headers","toSign"],"additionalProperties":false},"description":"Unsigned API requests to sign and send sequentially"}},"required":["project","operation","cexApiRequestActions"],"additionalProperties":false},{"type":"object","properties":{"project":{"type":"string","description":"Protocol identifier"},"operation":{"type":"string","description":"Operation that produced this response"},"error":{"type":"string","description":"Error message"}},"required":["project","operation","error"],"additionalProperties":false}]}},{"name":"setLeverage","description":"Set leverage for a specific Aster futures market.","inputSchema":{"type":"object","properties":{"market":{"type":"string","description":"Symbol of the futures market to trade, e.g. \"BTC/USDT\". The FIRST (base) currency is the asset being longed or shorted."},"leverage":{"type":"number"}},"required":["market","leverage"],"additionalProperties":false},"outputSchema":{"type":"object","anyOf":[{"type":"object","properties":{"project":{"type":"string","description":"Protocol identifier"},"operation":{"type":"string","description":"Operation that produced this response"},"note":{"description":"Human-readable summary of the action","type":"string"},"cexApiRequestActions":{"type":"array","items":{"type":"object","properties":{"url":{"type":"string","format":"uri","description":"The URL of the CEX API request"},"method":{"type":"string","enum":["POST","GET","PUT","DELETE"],"description":"HTTP method"},"headers":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"string"},"description":"Request headers"},"body":{"description":"Request body as JSON string","type":"string"},"toSign":{"type":"string","description":"Raw bytes (hex) to sign/HMAC for auth header"}},"required":["url","method","headers","toSign"],"additionalProperties":false},"description":"Unsigned API requests to sign and send sequentially"}},"required":["project","operation","cexApiRequestActions"],"additionalProperties":false},{"type":"object","properties":{"project":{"type":"string","description":"Protocol identifier"},"operation":{"type":"string","description":"Operation that produced this response"},"error":{"type":"string","description":"Error message"}},"required":["project","operation","error"],"additionalProperties":false}]}},{"name":"setStopLossTakeProfit","description":"Create take-profit and/or stop-loss reduce-only orders for an Aster futures position.","inputSchema":{"type":"object","properties":{"market":{"type":"string","description":"Symbol of the futures market to trade, e.g. \"BTC/USDT\". The FIRST (base) currency is the asset being longed or shorted."},"side":{"type":"string","enum":["long","short"],"description":"Current side of the position being protected."},"amount":{"type":"number","description":"Amount of base currency to close if triggered."},"stopLossPrice":{"description":"Price at which the stop-loss order is triggered. Omit if no stop-loss leg should be created.","type":"number"},"stopLossLimitPrice":{"anyOf":[{"type":"number"},{"type":"null"}],"description":"Price at which the stop-loss order is executed once triggered. Set to null for a market order. Ignored when the stop-loss trigger price is omitted."},"takeProfitPrice":{"description":"Price at which the take-profit order is triggered. Omit if no take-profit leg should be created.","type":"number"},"takeProfitLimitPrice":{"anyOf":[{"type":"number"},{"type":"null"}],"description":"Price at which the take-profit order is executed once triggered. Set to null for a market order. Ignored when the take-profit trigger price is omitted."},"positionMode":{"type":"string","enum":["HEDGE","ONE_WAY"],"description":"Current Aster futures position mode. Use getPositionMode first if unknown. HEDGE maps long/short to LONG/SHORT; ONE_WAY maps both to BOTH."}},"required":["market","side","amount","stopLossLimitPrice","takeProfitLimitPrice","positionMode"],"additionalProperties":false},"outputSchema":{"type":"object","anyOf":[{"type":"object","properties":{"project":{"type":"string","description":"Protocol identifier"},"operation":{"type":"string","description":"Operation that produced this response"},"note":{"description":"Human-readable summary of the action","type":"string"},"cexApiRequestActions":{"type":"array","items":{"type":"object","properties":{"url":{"type":"string","format":"uri","description":"The URL of the CEX API request"},"method":{"type":"string","enum":["POST","GET","PUT","DELETE"],"description":"HTTP method"},"headers":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"string"},"description":"Request headers"},"body":{"description":"Request body as JSON string","type":"string"},"toSign":{"type":"string","description":"Raw bytes (hex) to sign/HMAC for auth header"}},"required":["url","method","headers","toSign"],"additionalProperties":false},"description":"Unsigned API requests to sign and send sequentially"}},"required":["project","operation","cexApiRequestActions"],"additionalProperties":false},{"type":"object","properties":{"project":{"type":"string","description":"Protocol identifier"},"operation":{"type":"string","description":"Operation that produced this response"},"error":{"type":"string","description":"Error message"}},"required":["project","operation","error"],"additionalProperties":false}]}},{"name":"changeMarginType","description":"Change margin type for an Aster futures market.","inputSchema":{"type":"object","properties":{"market":{"type":"string","description":"Symbol of the futures market to trade, e.g. \"BTC/USDT\". The FIRST (base) currency is the asset being longed or shorted."},"marginType":{"type":"string","enum":["ISOLATED","CROSSED"]}},"required":["market","marginType"],"additionalProperties":false},"outputSchema":{"type":"object","anyOf":[{"type":"object","properties":{"project":{"type":"string","description":"Protocol identifier"},"operation":{"type":"string","description":"Operation that produced this response"},"note":{"description":"Human-readable summary of the action","type":"string"},"cexApiRequestActions":{"type":"array","items":{"type":"object","properties":{"url":{"type":"string","format":"uri","description":"The URL of the CEX API request"},"method":{"type":"string","enum":["POST","GET","PUT","DELETE"],"description":"HTTP method"},"headers":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"string"},"description":"Request headers"},"body":{"description":"Request body as JSON string","type":"string"},"toSign":{"type":"string","description":"Raw bytes (hex) to sign/HMAC for auth header"}},"required":["url","method","headers","toSign"],"additionalProperties":false},"description":"Unsigned API requests to sign and send sequentially"}},"required":["project","operation","cexApiRequestActions"],"additionalProperties":false},{"type":"object","properties":{"project":{"type":"string","description":"Protocol identifier"},"operation":{"type":"string","description":"Operation that produced this response"},"error":{"type":"string","description":"Error message"}},"required":["project","operation","error"],"additionalProperties":false}]}},{"name":"changePositionMode","description":"Change Aster account position mode.","inputSchema":{"type":"object","properties":{"positionMode":{"type":"string","enum":["HEDGE","ONE_WAY"]}},"required":["positionMode"],"additionalProperties":false},"outputSchema":{"type":"object","anyOf":[{"type":"object","properties":{"project":{"type":"string","description":"Protocol identifier"},"operation":{"type":"string","description":"Operation that produced this response"},"note":{"description":"Human-readable summary of the action","type":"string"},"cexApiRequestActions":{"type":"array","items":{"type":"object","properties":{"url":{"type":"string","format":"uri","description":"The URL of the CEX API request"},"method":{"type":"string","enum":["POST","GET","PUT","DELETE"],"description":"HTTP method"},"headers":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"string"},"description":"Request headers"},"body":{"description":"Request body as JSON string","type":"string"},"toSign":{"type":"string","description":"Raw bytes (hex) to sign/HMAC for auth header"}},"required":["url","method","headers","toSign"],"additionalProperties":false},"description":"Unsigned API requests to sign and send sequentially"}},"required":["project","operation","cexApiRequestActions"],"additionalProperties":false},{"type":"object","properties":{"project":{"type":"string","description":"Protocol identifier"},"operation":{"type":"string","description":"Operation that produced this response"},"error":{"type":"string","description":"Error message"}},"required":["project","operation","error"],"additionalProperties":false}]}},{"name":"changeMultiAssetsMode","description":"Change Aster account multi-assets mode.","inputSchema":{"type":"object","properties":{"multiAssetsMode":{"type":"string","enum":["ENABLED","DISABLED"]}},"required":["multiAssetsMode"],"additionalProperties":false},"outputSchema":{"type":"object","anyOf":[{"type":"object","properties":{"project":{"type":"string","description":"Protocol identifier"},"operation":{"type":"string","description":"Operation that produced this response"},"note":{"description":"Human-readable summary of the action","type":"string"},"cexApiRequestActions":{"type":"array","items":{"type":"object","properties":{"url":{"type":"string","format":"uri","description":"The URL of the CEX API request"},"method":{"type":"string","enum":["POST","GET","PUT","DELETE"],"description":"HTTP method"},"headers":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"string"},"description":"Request headers"},"body":{"description":"Request body as JSON string","type":"string"},"toSign":{"type":"string","description":"Raw bytes (hex) to sign/HMAC for auth header"}},"required":["url","method","headers","toSign"],"additionalProperties":false},"description":"Unsigned API requests to sign and send sequentially"}},"required":["project","operation","cexApiRequestActions"],"additionalProperties":false},{"type":"object","properties":{"project":{"type":"string","description":"Protocol identifier"},"operation":{"type":"string","description":"Operation that produced this response"},"error":{"type":"string","description":"Error message"}},"required":["project","operation","error"],"additionalProperties":false}]}},{"name":"modifyPositionMargin","description":"Add or remove isolated margin for an Aster futures position.","inputSchema":{"type":"object","properties":{"market":{"type":"string","description":"Symbol of the futures market to trade, e.g. \"BTC/USDT\". The FIRST (base) currency is the asset being longed or shorted."},"side":{"type":"string","enum":["long","short"],"description":"Side of the futures order, either \"long\" or \"short\". Long and short are relative to the FIRST (base) currency in the market symbol."},"amount":{"type":"number"},"operation":{"type":"string","enum":["ADD","REMOVE"]},"positionMode":{"type":"string","enum":["HEDGE","ONE_WAY"],"description":"Current Aster futures position mode. Use getPositionMode first if unknown. HEDGE maps long/short to LONG/SHORT; ONE_WAY maps both to BOTH."}},"required":["market","side","amount","operation","positionMode"],"additionalProperties":false},"outputSchema":{"type":"object","anyOf":[{"type":"object","properties":{"project":{"type":"string","description":"Protocol identifier"},"operation":{"type":"string","description":"Operation that produced this response"},"note":{"description":"Human-readable summary of the action","type":"string"},"cexApiRequestActions":{"type":"array","items":{"type":"object","properties":{"url":{"type":"string","format":"uri","description":"The URL of the CEX API request"},"method":{"type":"string","enum":["POST","GET","PUT","DELETE"],"description":"HTTP method"},"headers":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"string"},"description":"Request headers"},"body":{"description":"Request body as JSON string","type":"string"},"toSign":{"type":"string","description":"Raw bytes (hex) to sign/HMAC for auth header"}},"required":["url","method","headers","toSign"],"additionalProperties":false},"description":"Unsigned API requests to sign and send sequentially"}},"required":["project","operation","cexApiRequestActions"],"additionalProperties":false},{"type":"object","properties":{"project":{"type":"string","description":"Protocol identifier"},"operation":{"type":"string","description":"Operation that produced this response"},"error":{"type":"string","description":"Error message"}},"required":["project","operation","error"],"additionalProperties":false}]}},{"name":"getBalance","description":"Get Aster futures balances.","inputSchema":{"type":"object","properties":{},"additionalProperties":false},"outputSchema":{"type":"object","anyOf":[{"type":"object","properties":{"project":{"type":"string","description":"Protocol identifier"},"operation":{"type":"string","description":"Operation that produced this response"},"note":{"description":"Human-readable summary of the action","type":"string"},"cexApiRequestActions":{"type":"array","items":{"type":"object","properties":{"url":{"type":"string","format":"uri","description":"The URL of the CEX API request"},"method":{"type":"string","enum":["POST","GET","PUT","DELETE"],"description":"HTTP method"},"headers":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"string"},"description":"Request headers"},"body":{"description":"Request body as JSON string","type":"string"},"toSign":{"type":"string","description":"Raw bytes (hex) to sign/HMAC for auth header"}},"required":["url","method","headers","toSign"],"additionalProperties":false},"description":"Unsigned API requests to sign and send sequentially"}},"required":["project","operation","cexApiRequestActions"],"additionalProperties":false},{"type":"object","properties":{"project":{"type":"string","description":"Protocol identifier"},"operation":{"type":"string","description":"Operation that produced this response"},"error":{"type":"string","description":"Error message"}},"required":["project","operation","error"],"additionalProperties":false}]}},{"name":"getOpenOrders","description":"Get Aster futures open orders.","inputSchema":{"type":"object","properties":{},"additionalProperties":false},"outputSchema":{"type":"object","anyOf":[{"type":"object","properties":{"project":{"type":"string","description":"Protocol identifier"},"operation":{"type":"string","description":"Operation that produced this response"},"note":{"description":"Human-readable summary of the action","type":"string"},"cexApiRequestActions":{"type":"array","items":{"type":"object","properties":{"url":{"type":"string","format":"uri","description":"The URL of the CEX API request"},"method":{"type":"string","enum":["POST","GET","PUT","DELETE"],"description":"HTTP method"},"headers":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"string"},"description":"Request headers"},"body":{"description":"Request body as JSON string","type":"string"},"toSign":{"type":"string","description":"Raw bytes (hex) to sign/HMAC for auth header"}},"required":["url","method","headers","toSign"],"additionalProperties":false},"description":"Unsigned API requests to sign and send sequentially"}},"required":["project","operation","cexApiRequestActions"],"additionalProperties":false},{"type":"object","properties":{"project":{"type":"string","description":"Protocol identifier"},"operation":{"type":"string","description":"Operation that produced this response"},"error":{"type":"string","description":"Error message"}},"required":["project","operation","error"],"additionalProperties":false}]}},{"name":"getAllPositions","description":"Get Aster futures positions.","inputSchema":{"type":"object","properties":{},"additionalProperties":false},"outputSchema":{"type":"object","anyOf":[{"type":"object","properties":{"project":{"type":"string","description":"Protocol identifier"},"operation":{"type":"string","description":"Operation that produced this response"},"note":{"description":"Human-readable summary of the action","type":"string"},"cexApiRequestActions":{"type":"array","items":{"type":"object","properties":{"url":{"type":"string","format":"uri","description":"The URL of the CEX API request"},"method":{"type":"string","enum":["POST","GET","PUT","DELETE"],"description":"HTTP method"},"headers":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"string"},"description":"Request headers"},"body":{"description":"Request body as JSON string","type":"string"},"toSign":{"type":"string","description":"Raw bytes (hex) to sign/HMAC for auth header"}},"required":["url","method","headers","toSign"],"additionalProperties":false},"description":"Unsigned API requests to sign and send sequentially"}},"required":["project","operation","cexApiRequestActions"],"additionalProperties":false},{"type":"object","properties":{"project":{"type":"string","description":"Protocol identifier"},"operation":{"type":"string","description":"Operation that produced this response"},"error":{"type":"string","description":"Error message"}},"required":["project","operation","error"],"additionalProperties":false}]}},{"name":"getLeverageAndMarginSettings","description":"Get leverage and margin settings for a futures market.","inputSchema":{"type":"object","properties":{"market":{"type":"string","description":"Symbol of the futures market to trade, e.g. \"BTC/USDT\". The FIRST (base) currency is the asset being longed or shorted."}},"required":["market"],"additionalProperties":false},"outputSchema":{"type":"object","anyOf":[{"type":"object","properties":{"project":{"type":"string","description":"Protocol identifier"},"operation":{"type":"string","description":"Operation that produced this response"},"note":{"description":"Human-readable summary of the action","type":"string"},"cexApiRequestActions":{"type":"array","items":{"type":"object","properties":{"url":{"type":"string","format":"uri","description":"The URL of the CEX API request"},"method":{"type":"string","enum":["POST","GET","PUT","DELETE"],"description":"HTTP method"},"headers":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"string"},"description":"Request headers"},"body":{"description":"Request body as JSON string","type":"string"},"toSign":{"type":"string","description":"Raw bytes (hex) to sign/HMAC for auth header"}},"required":["url","method","headers","toSign"],"additionalProperties":false},"description":"Unsigned API requests to sign and send sequentially"}},"required":["project","operation","cexApiRequestActions"],"additionalProperties":false},{"type":"object","properties":{"project":{"type":"string","description":"Protocol identifier"},"operation":{"type":"string","description":"Operation that produced this response"},"error":{"type":"string","description":"Error message"}},"required":["project","operation","error"],"additionalProperties":false}]}},{"name":"getPositionMode","description":"Get current Aster futures position mode.","inputSchema":{"type":"object","properties":{},"additionalProperties":false},"outputSchema":{"type":"object","anyOf":[{"type":"object","properties":{"project":{"type":"string","description":"Protocol identifier"},"operation":{"type":"string","description":"Operation that produced this response"},"note":{"description":"Human-readable summary of the action","type":"string"},"cexApiRequestActions":{"type":"array","items":{"type":"object","properties":{"url":{"type":"string","format":"uri","description":"The URL of the CEX API request"},"method":{"type":"string","enum":["POST","GET","PUT","DELETE"],"description":"HTTP method"},"headers":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"string"},"description":"Request headers"},"body":{"description":"Request body as JSON string","type":"string"},"toSign":{"type":"string","description":"Raw bytes (hex) to sign/HMAC for auth header"}},"required":["url","method","headers","toSign"],"additionalProperties":false},"description":"Unsigned API requests to sign and send sequentially"}},"required":["project","operation","cexApiRequestActions"],"additionalProperties":false},{"type":"object","properties":{"project":{"type":"string","description":"Protocol identifier"},"operation":{"type":"string","description":"Operation that produced this response"},"error":{"type":"string","description":"Error message"}},"required":["project","operation","error"],"additionalProperties":false}]}},{"name":"getMultiAssetsMode","description":"Get current Aster futures multi-assets mode.","inputSchema":{"type":"object","properties":{},"additionalProperties":false},"outputSchema":{"type":"object","anyOf":[{"type":"object","properties":{"project":{"type":"string","description":"Protocol identifier"},"operation":{"type":"string","description":"Operation that produced this response"},"note":{"description":"Human-readable summary of the action","type":"string"},"cexApiRequestActions":{"type":"array","items":{"type":"object","properties":{"url":{"type":"string","format":"uri","description":"The URL of the CEX API request"},"method":{"type":"string","enum":["POST","GET","PUT","DELETE"],"description":"HTTP method"},"headers":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"string"},"description":"Request headers"},"body":{"description":"Request body as JSON string","type":"string"},"toSign":{"type":"string","description":"Raw bytes (hex) to sign/HMAC for auth header"}},"required":["url","method","headers","toSign"],"additionalProperties":false},"description":"Unsigned API requests to sign and send sequentially"}},"required":["project","operation","cexApiRequestActions"],"additionalProperties":false},{"type":"object","properties":{"project":{"type":"string","description":"Protocol identifier"},"operation":{"type":"string","description":"Operation that produced this response"},"error":{"type":"string","description":"Error message"}},"required":["project","operation","error"],"additionalProperties":false}]}},{"name":"getSupportedMarkets","description":"Get all supported Aster futures markets.","inputSchema":{"type":"object","properties":{},"additionalProperties":false},"outputSchema":{"type":"object","anyOf":[{"type":"object","properties":{"project":{"type":"string","description":"Protocol identifier"},"operation":{"type":"string","description":"Operation that produced this response"},"note":{"description":"Human-readable summary of the action","type":"string"},"data":{"type":"array","items":{"type":"object","properties":{"symbol":{"type":"string"},"pair":{"type":"string"},"contractType":{"type":"string"},"deliveryDate":{"type":"number"},"onboardDate":{"type":"number"},"status":{"type":"string"},"maintMarginPercent":{"type":"string"},"requiredMarginPercent":{"type":"string"},"baseAsset":{"type":"string"},"quoteAsset":{"type":"string"},"marginAsset":{"type":"string"},"pricePrecision":{"type":"number"},"quantityPrecision":{"type":"number"},"baseAssetPrecision":{"type":"number"},"quotePrecision":{"type":"number"},"underlyingType":{"type":"string"},"underlyingSubType":{"type":"array","items":{"type":"string"}},"symbolType":{"type":"number"},"tradingMode":{"type":"number"},"name":{"type":"string"},"channel":{"type":"string"},"sequenceNo":{"type":"number"},"twapMinNotional":{"type":"string"},"imn":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"null"}]},"tags":{"type":"array","items":{"type":"string"}},"settlePlan":{"type":"number"},"triggerProtect":{"type":"string"},"liquidationFee":{"type":"string"},"marketTakeBound":{"type":"string"},"createTime":{"type":"number"},"filters":{"type":"array","items":{"type":"object","properties":{"filterType":{"type":"string"}},"required":["filterType"],"additionalProperties":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"type":"array","items":{"type":"string"}}]}}},"orderTypes":{"type":"array","items":{"type":"string"}},"timeInForce":{"type":"array","items":{"type":"string"}}},"required":["symbol","pair","contractType","deliveryDate","onboardDate","status","maintMarginPercent","requiredMarginPercent","baseAsset","quoteAsset","marginAsset","pricePrecision","quantityPrecision","baseAssetPrecision","quotePrecision","underlyingType","underlyingSubType","symbolType","tradingMode","name","channel","sequenceNo","twapMinNotional","imn","tags","settlePlan","triggerProtect","liquidationFee","marketTakeBound","createTime","filters","orderTypes","timeInForce"],"additionalProperties":false}}},"required":["project","operation","data"],"additionalProperties":false},{"type":"object","properties":{"project":{"type":"string","description":"Protocol identifier"},"operation":{"type":"string","description":"Operation that produced this response"},"error":{"type":"string","description":"Error message"}},"required":["project","operation","error"],"additionalProperties":false}]}},{"name":"getFuturesMarketsInfo","description":"Get price and volume information for Aster futures markets.","inputSchema":{"type":"object","properties":{"markets":{"type":"array","items":{"type":"string"}}},"required":["markets"],"additionalProperties":false},"outputSchema":{"type":"object","anyOf":[{"type":"object","properties":{"project":{"type":"string","description":"Protocol identifier"},"operation":{"type":"string","description":"Operation that produced this response"},"note":{"description":"Human-readable summary of the action","type":"string"},"data":{"type":"array","items":{"type":"object","properties":{"market":{"type":"string"},"ticker":{"anyOf":[{"type":"object","properties":{"symbol":{"type":"string"},"priceChange":{"type":"string"},"priceChangePercent":{"type":"string"},"weightedAvgPrice":{"type":"string"},"lastPrice":{"type":"string"},"lastQty":{"type":"string"},"openPrice":{"type":"string"},"highPrice":{"type":"string"},"lowPrice":{"type":"string"},"volume":{"type":"string"},"quoteVolume":{"type":"string"},"openTime":{"type":"number"},"closeTime":{"type":"number"},"firstId":{"type":"number"},"lastId":{"type":"number"},"count":{"type":"number"}},"required":["symbol","priceChange","priceChangePercent","weightedAvgPrice","lastPrice","lastQty","openPrice","highPrice","lowPrice","volume","quoteVolume","openTime","closeTime","firstId","lastId","count"],"additionalProperties":false},{"type":"null"}]}},"required":["market","ticker"],"additionalProperties":false}}},"required":["project","operation","data"],"additionalProperties":false},{"type":"object","properties":{"project":{"type":"string","description":"Protocol identifier"},"operation":{"type":"string","description":"Operation that produced this response"},"error":{"type":"string","description":"Error message"}},"required":["project","operation","error"],"additionalProperties":false}]}},{"name":"getFundingRates","description":"Get funding rates for specific Aster futures markets.","inputSchema":{"type":"object","properties":{"markets":{"type":"array","items":{"type":"string"}}},"required":["markets"],"additionalProperties":false},"outputSchema":{"type":"object","anyOf":[{"type":"object","properties":{"project":{"type":"string","description":"Protocol identifier"},"operation":{"type":"string","description":"Operation that produced this response"},"note":{"description":"Human-readable summary of the action","type":"string"},"data":{"type":"array","items":{"type":"object","properties":{"symbol":{"type":"string"},"fundingRate":{"type":"string"}},"required":["symbol","fundingRate"],"additionalProperties":false}}},"required":["project","operation","data"],"additionalProperties":false},{"type":"object","properties":{"project":{"type":"string","description":"Protocol identifier"},"operation":{"type":"string","description":"Operation that produced this response"},"error":{"type":"string","description":"Error message"}},"required":["project","operation","error"],"additionalProperties":false}]}},{"name":"getAllFundingRates","description":"Get all current Aster futures funding rates.","inputSchema":{"type":"object","properties":{},"additionalProperties":false},"outputSchema":{"type":"object","anyOf":[{"type":"object","properties":{"project":{"type":"string","description":"Protocol identifier"},"operation":{"type":"string","description":"Operation that produced this response"},"note":{"description":"Human-readable summary of the action","type":"string"},"data":{"type":"array","items":{"type":"object","properties":{"symbol":{"type":"string"},"fundingRate":{"type":"string"}},"required":["symbol","fundingRate"],"additionalProperties":false}}},"required":["project","operation","data"],"additionalProperties":false},{"type":"object","properties":{"project":{"type":"string","description":"Protocol identifier"},"operation":{"type":"string","description":"Operation that produced this response"},"error":{"type":"string","description":"Error message"}},"required":["project","operation","error"],"additionalProperties":false}]}},{"name":"createSpotSimpleOrder","description":"Create an Aster spot order that is activated immediately.","inputSchema":{"type":"object","properties":{"market":{"type":"string","description":"Symbol of the spot market to trade, e.g. \"BTC/USDT\". The FIRST (base) currency is the asset being bought or sold."},"side":{"type":"string","enum":["buy","sell"],"description":"Side of the spot order, either \"buy\" or \"sell\". Buy and sell are relative to the FIRST (base) currency in the market symbol."},"amount":{"type":"number","description":"Amount is the final trade size; do not scale, prorate, or recalculate it by leverage or price. amountCurrency: BASE means the first currency of the market symbol. QUOTE means the second currency of the market symbol, e.g. USDT in BTC/USDT. Do not convert between BASE and QUOTE before calling the tool."},"amountCurrency":{"type":"string","enum":["BASE","QUOTE"],"description":"Specifies whether amount is denominated in base currency or quote currency"},"limitPrice":{"anyOf":[{"type":"number"},{"type":"null"}],"description":"Execution price for a limit order. Pass null for a market order."}},"required":["market","side","amount","amountCurrency","limitPrice"],"additionalProperties":false},"outputSchema":{"type":"object","anyOf":[{"type":"object","properties":{"project":{"type":"string","description":"Protocol identifier"},"operation":{"type":"string","description":"Operation that produced this response"},"note":{"description":"Human-readable summary of the action","type":"string"},"cexApiRequestActions":{"type":"array","items":{"type":"object","properties":{"url":{"type":"string","format":"uri","description":"The URL of the CEX API request"},"method":{"type":"string","enum":["POST","GET","PUT","DELETE"],"description":"HTTP method"},"headers":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"string"},"description":"Request headers"},"body":{"description":"Request body as JSON string","type":"string"},"toSign":{"type":"string","description":"Raw bytes (hex) to sign/HMAC for auth header"}},"required":["url","method","headers","toSign"],"additionalProperties":false},"description":"Unsigned API requests to sign and send sequentially"}},"required":["project","operation","cexApiRequestActions"],"additionalProperties":false},{"type":"object","properties":{"project":{"type":"string","description":"Protocol identifier"},"operation":{"type":"string","description":"Operation that produced this response"},"error":{"type":"string","description":"Error message"}},"required":["project","operation","error"],"additionalProperties":false}]}},{"name":"createSpotTriggerOrder","description":"Create an Aster spot order that activates when a trigger price is reached.","inputSchema":{"type":"object","properties":{"market":{"type":"string","description":"Symbol of the spot market to trade, e.g. \"BTC/USDT\". The FIRST (base) currency is the asset being bought or sold."},"side":{"type":"string","enum":["buy","sell"],"description":"Side of the spot order, either \"buy\" or \"sell\". Buy and sell are relative to the FIRST (base) currency in the market symbol."},"amount":{"type":"number","description":"Amount is the final trade size; do not scale, prorate, or recalculate it by leverage or price. amountCurrency: BASE means the first currency of the market symbol. QUOTE means the second currency of the market symbol, e.g. USDT in BTC/USDT. Do not convert between BASE and QUOTE before calling the tool."},"amountCurrency":{"type":"string","enum":["BASE","QUOTE"],"description":"Specifies whether amount is denominated in base currency or quote currency"},"triggerPrice":{"type":"number"},"limitPrice":{"anyOf":[{"type":"number"},{"type":"null"}],"description":"Execution price for a limit order. Pass null for a market order."}},"required":["market","side","amount","amountCurrency","triggerPrice","limitPrice"],"additionalProperties":false},"outputSchema":{"type":"object","anyOf":[{"type":"object","properties":{"project":{"type":"string","description":"Protocol identifier"},"operation":{"type":"string","description":"Operation that produced this response"},"note":{"description":"Human-readable summary of the action","type":"string"},"cexApiRequestActions":{"type":"array","items":{"type":"object","properties":{"url":{"type":"string","format":"uri","description":"The URL of the CEX API request"},"method":{"type":"string","enum":["POST","GET","PUT","DELETE"],"description":"HTTP method"},"headers":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"string"},"description":"Request headers"},"body":{"description":"Request body as JSON string","type":"string"},"toSign":{"type":"string","description":"Raw bytes (hex) to sign/HMAC for auth header"}},"required":["url","method","headers","toSign"],"additionalProperties":false},"description":"Unsigned API requests to sign and send sequentially"}},"required":["project","operation","cexApiRequestActions"],"additionalProperties":false},{"type":"object","properties":{"project":{"type":"string","description":"Protocol identifier"},"operation":{"type":"string","description":"Operation that produced this response"},"error":{"type":"string","description":"Error message"}},"required":["project","operation","error"],"additionalProperties":false}]}},{"name":"createSpotTakeProfitStopLossOrder","description":"Create Aster spot take-profit and/or stop-loss orders.","inputSchema":{"type":"object","properties":{"market":{"type":"string","description":"Symbol of the spot market to trade, e.g. \"BTC/USDT\". The FIRST (base) currency is the asset being bought or sold."},"side":{"type":"string","enum":["buy","sell"],"description":"Side of the spot order, either \"buy\" or \"sell\". Buy and sell are relative to the FIRST (base) currency in the market symbol."},"amount":{"type":"number","description":"Amount is the final trade size; do not scale, prorate, or recalculate it by leverage or price. amountCurrency: BASE means the first currency of the market symbol. QUOTE means the second currency of the market symbol, e.g. USDT in BTC/USDT. Do not convert between BASE and QUOTE before calling the tool."},"amountCurrency":{"type":"string","enum":["BASE","QUOTE"],"description":"Specifies whether amount is denominated in base currency or quote currency"},"takeProfitTriggerPrice":{"description":"Price at which the take-profit order is triggered. Omit if no take-profit leg should be created.","type":"number"},"takeProfitLimitPrice":{"anyOf":[{"type":"number"},{"type":"null"}],"description":"Price at which the take-profit order is executed once triggered. Set to null for a market order. Ignored when the take-profit trigger price is omitted."},"stopLossTriggerPrice":{"description":"Price at which the stop-loss order is triggered. Omit if no stop-loss leg should be created.","type":"number"},"stopLossLimitPrice":{"anyOf":[{"type":"number"},{"type":"null"}],"description":"Price at which the stop-loss order is executed once triggered. Set to null for a market order. Ignored when the stop-loss trigger price is omitted."}},"required":["market","side","amount","amountCurrency","takeProfitLimitPrice","stopLossLimitPrice"],"additionalProperties":false},"outputSchema":{"type":"object","anyOf":[{"type":"object","properties":{"project":{"type":"string","description":"Protocol identifier"},"operation":{"type":"string","description":"Operation that produced this response"},"note":{"description":"Human-readable summary of the action","type":"string"},"cexApiRequestActions":{"type":"array","items":{"type":"object","properties":{"url":{"type":"string","format":"uri","description":"The URL of the CEX API request"},"method":{"type":"string","enum":["POST","GET","PUT","DELETE"],"description":"HTTP method"},"headers":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"string"},"description":"Request headers"},"body":{"description":"Request body as JSON string","type":"string"},"toSign":{"type":"string","description":"Raw bytes (hex) to sign/HMAC for auth header"}},"required":["url","method","headers","toSign"],"additionalProperties":false},"description":"Unsigned API requests to sign and send sequentially"}},"required":["project","operation","cexApiRequestActions"],"additionalProperties":false},{"type":"object","properties":{"project":{"type":"string","description":"Protocol identifier"},"operation":{"type":"string","description":"Operation that produced this response"},"error":{"type":"string","description":"Error message"}},"required":["project","operation","error"],"additionalProperties":false}]}},{"name":"cancelSpotOrderById","description":"Cancel a specific Aster spot order by ID and market.","inputSchema":{"type":"object","properties":{"market":{"type":"string","description":"Symbol of the spot market to trade, e.g. \"BTC/USDT\". The FIRST (base) currency is the asset being bought or sold."},"orderId":{"type":"number"}},"required":["market","orderId"],"additionalProperties":false},"outputSchema":{"type":"object","anyOf":[{"type":"object","properties":{"project":{"type":"string","description":"Protocol identifier"},"operation":{"type":"string","description":"Operation that produced this response"},"note":{"description":"Human-readable summary of the action","type":"string"},"cexApiRequestActions":{"type":"array","items":{"type":"object","properties":{"url":{"type":"string","format":"uri","description":"The URL of the CEX API request"},"method":{"type":"string","enum":["POST","GET","PUT","DELETE"],"description":"HTTP method"},"headers":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"string"},"description":"Request headers"},"body":{"description":"Request body as JSON string","type":"string"},"toSign":{"type":"string","description":"Raw bytes (hex) to sign/HMAC for auth header"}},"required":["url","method","headers","toSign"],"additionalProperties":false},"description":"Unsigned API requests to sign and send sequentially"}},"required":["project","operation","cexApiRequestActions"],"additionalProperties":false},{"type":"object","properties":{"project":{"type":"string","description":"Protocol identifier"},"operation":{"type":"string","description":"Operation that produced this response"},"error":{"type":"string","description":"Error message"}},"required":["project","operation","error"],"additionalProperties":false}]}},{"name":"cancelAllSpotOrdersOnMarket","description":"Cancel all open Aster spot orders on a market.","inputSchema":{"type":"object","properties":{"market":{"type":"string","description":"Symbol of the spot market to trade, e.g. \"BTC/USDT\". The FIRST (base) currency is the asset being bought or sold."}},"required":["market"],"additionalProperties":false},"outputSchema":{"type":"object","anyOf":[{"type":"object","properties":{"project":{"type":"string","description":"Protocol identifier"},"operation":{"type":"string","description":"Operation that produced this response"},"note":{"description":"Human-readable summary of the action","type":"string"},"cexApiRequestActions":{"type":"array","items":{"type":"object","properties":{"url":{"type":"string","format":"uri","description":"The URL of the CEX API request"},"method":{"type":"string","enum":["POST","GET","PUT","DELETE"],"description":"HTTP method"},"headers":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"string"},"description":"Request headers"},"body":{"description":"Request body as JSON string","type":"string"},"toSign":{"type":"string","description":"Raw bytes (hex) to sign/HMAC for auth header"}},"required":["url","method","headers","toSign"],"additionalProperties":false},"description":"Unsigned API requests to sign and send sequentially"}},"required":["project","operation","cexApiRequestActions"],"additionalProperties":false},{"type":"object","properties":{"project":{"type":"string","description":"Protocol identifier"},"operation":{"type":"string","description":"Operation that produced this response"},"error":{"type":"string","description":"Error message"}},"required":["project","operation","error"],"additionalProperties":false}]}},{"name":"getSpotBalance","description":"Get Aster spot balances.","inputSchema":{"type":"object","properties":{},"additionalProperties":false},"outputSchema":{"type":"object","anyOf":[{"type":"object","properties":{"project":{"type":"string","description":"Protocol identifier"},"operation":{"type":"string","description":"Operation that produced this response"},"note":{"description":"Human-readable summary of the action","type":"string"},"cexApiRequestActions":{"type":"array","items":{"type":"object","properties":{"url":{"type":"string","format":"uri","description":"The URL of the CEX API request"},"method":{"type":"string","enum":["POST","GET","PUT","DELETE"],"description":"HTTP method"},"headers":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"string"},"description":"Request headers"},"body":{"description":"Request body as JSON string","type":"string"},"toSign":{"type":"string","description":"Raw bytes (hex) to sign/HMAC for auth header"}},"required":["url","method","headers","toSign"],"additionalProperties":false},"description":"Unsigned API requests to sign and send sequentially"}},"required":["project","operation","cexApiRequestActions"],"additionalProperties":false},{"type":"object","properties":{"project":{"type":"string","description":"Protocol identifier"},"operation":{"type":"string","description":"Operation that produced this response"},"error":{"type":"string","description":"Error message"}},"required":["project","operation","error"],"additionalProperties":false}]}},{"name":"getSpotOpenOrders","description":"Get Aster spot open orders.","inputSchema":{"type":"object","properties":{},"additionalProperties":false},"outputSchema":{"type":"object","anyOf":[{"type":"object","properties":{"project":{"type":"string","description":"Protocol identifier"},"operation":{"type":"string","description":"Operation that produced this response"},"note":{"description":"Human-readable summary of the action","type":"string"},"cexApiRequestActions":{"type":"array","items":{"type":"object","properties":{"url":{"type":"string","format":"uri","description":"The URL of the CEX API request"},"method":{"type":"string","enum":["POST","GET","PUT","DELETE"],"description":"HTTP method"},"headers":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"string"},"description":"Request headers"},"body":{"description":"Request body as JSON string","type":"string"},"toSign":{"type":"string","description":"Raw bytes (hex) to sign/HMAC for auth header"}},"required":["url","method","headers","toSign"],"additionalProperties":false},"description":"Unsigned API requests to sign and send sequentially"}},"required":["project","operation","cexApiRequestActions"],"additionalProperties":false},{"type":"object","properties":{"project":{"type":"string","description":"Protocol identifier"},"operation":{"type":"string","description":"Operation that produced this response"},"error":{"type":"string","description":"Error message"}},"required":["project","operation","error"],"additionalProperties":false}]}},{"name":"getSpotSupportedMarkets","description":"Get all supported Aster spot markets.","inputSchema":{"type":"object","properties":{},"additionalProperties":false},"outputSchema":{"type":"object","anyOf":[{"type":"object","properties":{"project":{"type":"string","description":"Protocol identifier"},"operation":{"type":"string","description":"Operation that produced this response"},"note":{"description":"Human-readable summary of the action","type":"string"},"data":{"type":"array","items":{"type":"object","properties":{"status":{"type":"string"},"baseAsset":{"type":"string"},"quoteAsset":{"type":"string"},"pricePrecision":{"type":"number"},"quantityPrecision":{"type":"number"},"baseAssetPrecision":{"type":"number"},"quotePrecision":{"type":"number"},"listingTime":{"type":"number"},"baseAssetAddress":{"anyOf":[{"type":"string"},{"type":"null"}]},"filters":{"type":"array","items":{"type":"object","properties":{"filterType":{"type":"string"}},"required":["filterType"],"additionalProperties":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"type":"array","items":{"type":"string"}}]}}},"orderTypes":{"type":"array","items":{"type":"string"}},"timeInForce":{"type":"array","items":{"type":"string"}},"symbol":{"type":"string"},"ocoAllowed":{"type":"boolean"}},"required":["status","baseAsset","quoteAsset","pricePrecision","quantityPrecision","baseAssetPrecision","quotePrecision","listingTime","baseAssetAddress","filters","orderTypes","timeInForce","symbol","ocoAllowed"],"additionalProperties":false}}},"required":["project","operation","data"],"additionalProperties":false},{"type":"object","properties":{"project":{"type":"string","description":"Protocol identifier"},"operation":{"type":"string","description":"Operation that produced this response"},"error":{"type":"string","description":"Error message"}},"required":["project","operation","error"],"additionalProperties":false}]}},{"name":"getSpotMarketsInfo","description":"Get price and volume information for Aster spot markets.","inputSchema":{"type":"object","properties":{"markets":{"type":"array","items":{"type":"string"}}},"required":["markets"],"additionalProperties":false},"outputSchema":{"type":"object","anyOf":[{"type":"object","properties":{"project":{"type":"string","description":"Protocol identifier"},"operation":{"type":"string","description":"Operation that produced this response"},"note":{"description":"Human-readable summary of the action","type":"string"},"data":{"type":"array","items":{"type":"object","properties":{"market":{"type":"string"},"ticker":{"anyOf":[{"type":"object","properties":{"symbol":{"type":"string"},"priceChange":{"type":"string"},"priceChangePercent":{"type":"string"},"weightedAvgPrice":{"type":"string"},"lastPrice":{"type":"string"},"lastQty":{"type":"string"},"openPrice":{"type":"string"},"highPrice":{"type":"string"},"lowPrice":{"type":"string"},"volume":{"type":"string"},"quoteVolume":{"type":"string"},"openTime":{"type":"number"},"closeTime":{"type":"number"},"firstId":{"type":"number"},"lastId":{"type":"number"},"count":{"type":"number"},"baseAsset":{"type":"string"},"quoteAsset":{"type":"string"},"bidPrice":{"type":"string"},"bidQty":{"type":"string"},"askPrice":{"type":"string"},"askQty":{"type":"string"}},"required":["symbol","priceChange","priceChangePercent","weightedAvgPrice","lastPrice","lastQty","openPrice","highPrice","lowPrice","volume","quoteVolume","openTime","closeTime","firstId","lastId","count","baseAsset","quoteAsset","bidPrice","bidQty","askPrice","askQty"],"additionalProperties":false},{"type":"null"}]}},"required":["market","ticker"],"additionalProperties":false}}},"required":["project","operation","data"],"additionalProperties":false},{"type":"object","properties":{"project":{"type":"string","description":"Protocol identifier"},"operation":{"type":"string","description":"Operation that produced this response"},"error":{"type":"string","description":"Error message"}},"required":["project","operation","error"],"additionalProperties":false}]}}]}