Skip to main content
Glama

get_open_orders

Retrieve open orders on Bybit based on category, symbol, order ID, or filter. Specify limits to fetch specific order details for trading strategies or monitoring.

Instructions

Get open orders

Args:
    category (str): Category (spot, linear, inverse, etc.)
    symbol (Optional[str]): Symbol (e.g., BTCUSDT)
    orderId (Optional[str]): Order ID
    orderLinkId (Optional[str]): Order link ID
    orderFilter (Optional[str]): Order filter
    limit (int): Number of orders to retrieve

Returns:
    Dict: Open orders

Example:
    get_open_orders("spot", "BTCUSDT", "123456789", "link123", "Order", 10)

Reference:
    https://bybit-exchange.github.io/docs/v5/order/open-order

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
categoryYesCategory (spot, linear, inverse, etc.)
limitNoNumber of orders to retrieve
orderFilterNoOrder filter
orderIdNoOrder ID
orderLinkIdNoOrder link ID
symbolNoSymbol (e.g., BTCUSDT)

Implementation Reference

  • Primary MCP tool handler for 'get_open_orders'. Defines input schema with Pydantic Field descriptions, executes the tool by delegating to BybitService.get_open_orders, checks retCode, and handles exceptions with error responses.
    @mcp.tool()
    def get_open_orders(
        category: str = Field(description="Category (spot, linear, inverse, etc.)"),
        symbol: Optional[str] = Field(default=None, description="Symbol (e.g., BTCUSDT)"),
        orderId: Optional[str] = Field(default=None, description="Order ID"),
        orderLinkId: Optional[str] = Field(default=None, description="Order link ID"),
        orderFilter: Optional[str] = Field(default=None, description="Order filter"),
        limit: int = Field(default=50, description="Number of orders to retrieve")
    ) -> Dict:
        """
        Get open orders
    
        Args:
            category (str): Category (spot, linear, inverse, etc.)
            symbol (Optional[str]): Symbol (e.g., BTCUSDT)
            orderId (Optional[str]): Order ID
            orderLinkId (Optional[str]): Order link ID
            orderFilter (Optional[str]): Order filter
            limit (int): Number of orders to retrieve
    
        Returns:
            Dict: Open orders
    
        Example:
            get_open_orders("spot", "BTCUSDT", "123456789", "link123", "Order", 10)
    
        Reference:
            https://bybit-exchange.github.io/docs/v5/order/open-order
        """
        try:
            result = bybit_service.get_open_orders(
                category, symbol, orderId, orderLinkId, orderFilter, limit
            )
            if result.get("retCode") != 0:
                logger.error(f"Failed to get open orders: {result.get('retMsg')}")
                return {"error": result.get("retMsg")}
            return result
        except Exception as e:
            logger.error(f"Failed to get open orders: {e}", exc_info=True)
            return {"error": str(e)}
  • Supporting helper method in BybitService class that directly calls the underlying pybit.unified_trading.HTTP client's get_open_orders method to fetch open orders from Bybit API.
    def get_open_orders(self, category: str, symbol: Optional[str] = None,
                        orderId: Optional[str] = None, orderLinkId: Optional[str] = None,
                        orderFilter: Optional[str] = None, limit: int = 50) -> Dict:
        """
        Get open orders
    
        Args:
            category (str): Category (spot, linear, inverse, etc.)
            symbol (Optional[str]): Symbol (e.g., BTCUSDT)
            orderId (Optional[str]): Order ID
            orderLinkId (Optional[str]): Order link ID
            orderFilter (Optional[str]): Order filter
            limit (int): Number of orders to retrieve
    
        Returns:
            Dict: Open orders
        """
        return self.client.get_open_orders(
            category=category,
            symbol=symbol,
            orderId=orderId,
            orderLinkId=orderLinkId,
            orderFilter=orderFilter,
            limit=limit
        )
Install Server

Other Tools

Related Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/dlwjdtn535/mcp-bybit-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server