Frequently Asked Questions

Answers for Axiory cTrader traders connecting an AI agent for the first time. If your question isn't here, ask your agent to call get_knowledge for detailed technical documentation.

Getting Started

What is volume, and how does it differ from lots?
The server uses volume in units, not lots. For example, 1 standard lot of EURUSD is 100,000 units. Always check the lot size for your symbol with the get_symbols tool, then multiply: volume = desired lots × lot size. Your AI agent does this calculation automatically and shows you the working before asking for confirmation.
What is the difference between paper mode and live mode?
Paper mode runs all 8 risk checks and logs everything to the audit journal, but never sends orders to the broker. It's designed for testing your configuration and prompts risk-free. Live mode sends real orders with real financial consequences. Always test in paper mode first, then switch to live when you're confident.
How do I switch from paper to live mode?
The trading mode is set when you connect. To change it: disconnect the MCP connector in your client settings, reconnect, and choose Live in the OAuth form. After reconnecting, ask your agent to call check_health to confirm the mode changed.
Which AI agent should I use?
Claude Desktop and claude.ai work best — they implement the full OAuth flow and automatically refresh your session. Cursor, Windsurf, and Cline are also well-tested. ChatGPT, Gemini, and Manus work via OAuth or the Token Portal fallback. Check the Choosing an Agent guide for a detailed comparison.
How do I connect to the server?
Add the server URL (https://mcp.axiory.ai/mcp) to your MCP client. The OAuth flow will open a browser where you enter your Axiory FIX API credentials. If your client doesn't support OAuth, use the Token Portal at https://mcp.axiory.ai/token-portal to generate a 30-day Bearer token instead.
How long does an OAuth session last?
Access tokens expire after 1 hour; refresh tokens last 7 days. Claude Desktop automatically renews the access token, so you stay connected for up to 7 days without doing anything. After 7 days, reconnect through the browser form. Portal tokens (fallback auth) last 30 days.

Trading

How do I set a stop-loss and take-profit on a position?
Use the 3-step linked order workflow:

1. Open the position with a MARKET order — the response includes a positionId.
2. Place a STOP order with that positionId at your stop-loss price (opposite side to your position).
3. Place a LIMIT order with the same positionId at your take-profit price (opposite side).

When the position closes for any reason, the server automatically cancels any remaining linked orders — no manual cleanup needed. Just tell your AI agent what price levels you want for SL and TP and it handles the rest.
The market is closed and my order was rejected. What can I do?
MARKET orders require an active trading session. When markets are closed (weekends, holidays), use a LIMIT or STOP order with GTC (Good Till Cancelled) time-in-force instead. The order will sit pending and fill when the market reopens at your specified price. Tell your agent: "Place a GTC LIMIT order to buy EURUSD at 1.0800".
How do I check my account balance?
The FIX protocol does not provide account balance or equity data — this is a known broker limitation. Check your balance directly in the cTrader platform or your broker's web portal. The server tracks daily realized P&L and enforces your daily loss limit against it, but cannot see your total account equity.
My positions look outdated. How do I get fresh data?
If you've been trading directly in cTrader (outside the AI agent), your positions may be stale. Tell your agent to call get_positions with refresh: true — this fetches a fresh snapshot directly from the broker. This is only needed when you trade outside the MCP server during the same session.
Why does unrealized P&L show as zero?
P&L requires live price data from the QUOTE session. The server calculates it from bid/ask prices, but only after a price for that symbol is in the cache. To warm the cache, ask your agent to call get_quotes for your open symbols first, then call get_positions again — you'll see accurate P&L in USD.
What currency is P&L reported in?
All P&L values are reported in USD, regardless of the instrument's quote currency. For example, a USDJPY trade's P&L is converted from JPY to USD using the live mid-price. The raw quote-currency value is also included in every response for transparency, along with the conversion rate used.
When does the daily P&L reset?
At 17:00 EST (Eastern Standard Time) — the standard FX market rollover. The kill switch daily loss trigger also resets at this time. This timing is not configurable.

Troubleshooting

I'm locked out after failed login attempts. What do I do?
After 5 consecutive failed credential attempts, the account is locked for 15 minutes to prevent brute-force attacks. Wait 15 minutes, then try again. Make sure you're using your FIX API password — this is different from your cTrader account login password. You set the FIX API password separately in your broker's FIX API settings.
My order was rejected. Why?
Common reasons include:
Market closed — use a LIMIT/STOP with GTC instead
Position size limit — your per-asset-class limit was exceeded (check check_health)
Kill switch active — daily loss limit was hit; resets at 17:00 EST
Rate limit — too many orders per minute; wait a moment
Symbol not configured — ask your agent to call get_symbols to verify the symbol is available
The connection dropped. How do I reconnect?
The server automatically reconnects up to 10 times with exponential backoff. If that doesn't work, ask your agent to call reconnect_trade_session (and reconnect_quote_session if you also need live prices). This is common after weekends when markets are closed. If reconnect still fails, disconnect and reconnect the MCP connector in your client settings.
I'm getting a SenderCompID conflict error on re-authentication.
The cTrader broker only allows one FIX connection per SenderCompID at a time. If you're re-authenticating while a session is already active, the server handles it automatically: if your configuration hasn't changed, it skips re-validation and reuses the active session. If your configuration changed (e.g. switching mode), it closes the existing session first, then validates. If you changed your FIX password at the broker side, wait for your old session to time out (30 min) or use reset_session before changing the password.
How do I change my risk limits or switch mode mid-session?
Ask your agent to call reset_session. This terminates your current session and triggers re-authentication, where you can change all settings including trading mode, risk limits, and server. Note: this closes all active connections for your account — in-flight tool calls may be interrupted. Your broker positions and journal entries are not affected.
What if OAuth doesn't work with my client?
Use the Token Portal as a fallback. Visit the portal URL in your browser, enter your FIX credentials, and generate a 30-day Bearer token. Copy the token into your client's MCP config as a Bearer authorization header. Manus and some other clients require this path since they don't complete the OAuth browser redirect flow.

Safety

How does the kill switch work?
The kill switch automatically blocks all trading when your daily realized loss exceeds the limit you set at connection time. It also triggers if the server detects a state reconciliation discrepancy (circuit breaker). Once active, no new orders can be placed until the daily loss resets at 17:00 EST. To check if the kill switch is active, ask your agent to call check_health and look at the killSwitch field.
What happens if the server goes down while I have open positions?
Your open positions remain with the broker — the server going down does not close them. When the server comes back up and you reconnect, it reconciles position state from the broker automatically. Your positions will be exactly as you left them. The audit journal on disk is also preserved across restarts.
What if the AI agent makes a calculation error and places the wrong order?
The server includes multiple safeguards: the AI agent is instructed to show its volume calculations step-by-step and ask for your explicit confirmation before placing any order. Trading tools are marked as destructive in the MCP protocol, which may trigger additional approval flows in your client. Per-asset-class position size limits and max notional checks also act as a backstop. However, no system can fully prevent human or AI error — always verify the numbers before confirming, and start with paper mode.
Are my FIX credentials safe?
When using OAuth, credentials are encrypted with AES-256-GCM using HKDF-derived keys before storage. They are decrypted only when needed to open a FIX connection and never appear in logs or metrics. A one-way SHA-256 hash is used for routing and session identification — raw credentials never leave the encrypted store. With Token Portal, credentials are validated once and then stored encrypted in the same way.

Still have questions?

The built-in knowledge base has detailed technical documentation on every topic. Ask your AI agent:

"Get knowledge about risk-management"
"Get knowledge about order-guide"
"Get knowledge about limitations"

Or visit the full documentation: