Skip to main content

How to Choose Between mcp:read and mcp:trade

CrossTrade MCP issues tokens at one of two scopes: mcp:read for inspection and mcp:trade for writes. The OAuth scope is the floor — a mcp:read token cannot place an order, no matter what the prompt says. This tutorial helps you pick the smallest scope that works.

Direct answer

Use this scopeIf your workflow is
mcp:readJournal review, pre-session brief, webhook audit, copier diagnostics, daily report, strategy decay review, account inspection
mcp:tradeNinjaScript compile/write, new backtest jobs, parameter sweeps, order placement with confirmation, strategy deployment, alert emission

Default to mcp:read. Upgrade only when a specific workflow needs writes.

What each scope allows

mcp:read

  • ListAccounts, GetAccount, GetAccountSummary, GetWatermarks
  • GetConnections
  • ListPositions, GetPosition, GetAllPositions
  • ListOrders, GetOrder, GetOrderStatus, GetAllOrders
  • ListExecutions, GetExecution, GetExecutionsByOrderId
  • GetQuote, GetBars, MarketInfo, GetVolumeProfile, GetOrderFlow, GetIndicatorValue
  • GetSignalHistory, GetActivityLog, GetJournalTrades
  • GetNinjaScriptHelp, SearchNinjaScriptSymbols, LookupNinjaScriptSymbol
  • ListNinjaScriptFiles, ReadNinjaScriptFile, ListCompiledSnippets
  • GetBacktestResult, GetCompileResult, GetMcpJob, ListMcpJobs
  • ListAllStrategies, ListStrategies, GetStrategy, GetStrategyState
  • ListDeployedStrategies, GetDeployedStrategyState
  • ListWorkspaces, ListDrawings, ListAlerts

mcp:trade (in addition to read)

  • PlaceOrder, Change, CancelReplace, Cancel, CancelOrders, CancelAllOrders, CancelAndBracket, FlatPlace
  • ClosePosition, Reverse, ReversePosition, Flatten, FlattenEverything
  • CompileNinjaScript, WriteNinjaScriptFile, DeleteCompiledSnippet
  • RunStrategyBacktest, RunBacktest, CancelMcpJob
  • DeployStrategy, StartStrategy, StopStrategy, CloseStrategy, EnableStrategy, DisableStrategy
  • SaveWorkspace, LoadWorkspace, OpenChart
  • AddDrawing, RemoveDrawing
  • EmitMcpAlert, CreateAlert, RemoveAlert
  • Connect, Disconnect, EnsureReplayConnection
  • UpdateConfiguration

Which workflows need which scope

WorkflowScope
Daily journal reviewmcp:read
Pre-session risk briefmcp:read
TradingView webhook auditmcp:read
Trade copier diagnosticsmcp:read
Weekly strategy decay reviewmcp:read
Account inspection on a funded accountmcp:read
NinjaScript compile loopmcp:trade
Strategy Analyzer backtest jobsmcp:trade
Parameter sweepmcp:trade
Order placement with confirmationmcp:trade
Cancel or flattenmcp:trade
Strategy deploymentmcp:trade
Alert emissionmcp:trade

How to think about the upgrade decision

Before upgrading from mcp:read to mcp:trade:

  1. Identify the specific workflow that needs the write.
  2. Write the prompt that gates the write with state checks and explicit confirmation.
  3. Decide which account you will run on (Sim101 first).
  4. For funded accounts, verify the firm's automation policy.
  5. Plan how you will revoke the token when the session is over.

The OAuth scope is binary. The prompt is what makes a mcp:trade token actually safe.

How to upgrade

Scope upgrade is not supported in place. Revoke the existing token and reauthorize at the new scope.

  1. Open the CrossTrade AI Clients page.
  2. Revoke the current client.
  3. In your MCP client, remove and re-add the CrossTrade server.
  4. Complete OAuth; choose mcp:trade on the consent screen.

How to downgrade

Same procedure. Revoke and reauthorize at mcp:read.

What if I need both?

Run two clients. Authorize one at mcp:read for daily review and inspection. Authorize a second at mcp:trade only for the sessions that need writes. Revoke the trade-scoped client when you are done.