cancel_trade_prepare
ChatGPTVoid a prepared trade by confirmToken without sending to MT5. Use when the user taps Cancel on the card or says cancel before confirm. Does NOT close an open position — use draft_close_position_instruction after execution.
confirm_trade_instruction
ChatGPTExecute a prepared instruction on MT5 after the user confirmed on the trade card. On success the inline card shows ORDER CONFIRMED. Reply with ONLY the tool execution markdown (ticket, fill price)—never say draft prepared or tap Confirm. Do not call draft_* again in the same turn.
draft_close_position_instruction
ChatGPTPrepare closing one open position by ticket on an owned MT5 login. Shows the same inline confirm card; user taps Confirm to send close to MT5.
draft_modify_position_instruction
ChatGPTPrepare updating stop loss and take profit on an open position. Inline confirm card; user taps Confirm to send modify to MT5.
draft_trade_instruction
ChatGPTPrepare a market BUY or SELL for an owned MT5 login. Shows one inline confirm card (live MT5 bid/ask). Do NOT call after confirm_trade_instruction succeeded. Do NOT call render_trade_confirm_card afterward. Does NOT execute until the user taps Confirm on the card.
get_account_snapshot
ChatGPTLive equity, margin, free margin, floating P/L, and position counts for one or more MT5 logins (comma-separated).
get_positions
ChatGPTOpen positions and pending orders for comma-separated logins.
get_quotes
ChatGPTBid/ask for comma-separated symbols (e.g. XAUUSD,EURUSD). Optional login for account book suffix.
get_risk_status
ChatGPTLive margin level, free margin, floating P/L, open position count, daily AI trade cap remaining, and desk tip. Use before drafting size or when user asks about margin / risk.
get_trade_activity
ChatGPTRecent prepare/confirm and related AI trade events (tickets, logins). Use when user asks what they traded or to verify a ChatGPT fill.
get_trading_permissions
ChatGPTWhether this client can draft/confirm trades via ChatGPT (analyze vs propose, MT5 consent, caps). Call when prepare fails or user asks why they cannot trade.
get_user_profile
ChatGPTReturn the connected DB Investing client profile (email, display name, client id). Call after connect to identify the account.
list_mt5_accounts
ChatGPTList DBInvest MT5 accounts owned by this client. Use before snapshot, quotes, or positions for a specific login.
refresh_trade_quote
ChatGPTRefresh live bid/ask on an open market draft (same confirmToken). Used by the trade card before expiry.
render_account_snapshot_card
ChatGPTShow inline equity, free margin, and floating P/L card (read-only). Complements get_account_snapshot markdown.
render_positions_card
ChatGPTShow inline open positions summary (read-only). Use get_positions for full detail.
render_trade_confirm_card
ChatGPTRe-show the trade card only if draft_trade_instruction did not already display it (rare). Do not call in the same turn as draft_trade_instruction — that causes duplicate cards.
search_symbols
ChatGPTSearch tradeable MT5 symbols for an account (group folder + query).