Skip to main content
Glama
armorwallet
by armorwallet

cancel_order

Cancel limit, take profit, or stop loss orders in crypto trading through Armor Crypto MCP. Submit a CancelOrderRequestContainer to execute order cancellations efficiently.

Instructions

Cancel a limit, take profit or stop loss order.

Expects a CancelOrderRequestContainer, returns a CancelOrderResponseContainer.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
cancel_order_requestsYes

Implementation Reference

  • Primary MCP tool handler for 'cancel_order', registered with @mcp.tool(). Proxies to ArmorWalletAPIClient.cancel_order after input validation.
    @mcp.tool()
    async def cancel_order(cancel_order_requests: CancelOrderRequestContainer) -> CancelOrderResponseContainer:
        """
        Cancel a limit, take profit or stop loss order.
        
        Expects a CancelOrderRequestContainer, returns a CancelOrderResponseContainer.
        """
        if not armor_client:
            return [{"error": "Not logged in"}]
        try:
            result: CancelOrderResponseContainer = await armor_client.cancel_order(cancel_order_requests)
            return result
        except Exception as e:
            return [{"error": str(e)}]
  • Pydantic model defining the input structure for a single cancel order request (order_id).
    class CancelOrderRequest(BaseModel):
        order_id: str = Field(description="id of the limit order")
  • Pydantic model defining the response structure for a canceled order (order_id and status).
    class CancelOrderResponse(BaseModel):
        order_id: str = Field(description="id of the limit order")
        status: str = Field(description="status of the limit order")
  • Container Pydantic model for batching multiple CancelOrderRequest objects as input to the tool.
    class CancelOrderRequestContainer(BaseModel):
        cancel_order_requests: List[CancelOrderRequest]
  • Core implementation in ArmorWalletAPIClient that serializes the request and makes the HTTP POST to the /transactions/order/cancel/ API endpoint.
    async def cancel_order(self, data: CancelOrderRequestContainer) -> CancelOrderResponseContainer:
        """Cancel a order."""
        payload = data.model_dump(exclude_none=True)['cancel_order_requests']
        return await self._api_call("POST", "transactions/order/cancel/", payload) 

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/armorwallet/armor-crypto-mcp'

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