MCP Tools Reference

TradeStaq's MCP server exposes 31 tools organized into 9 categories. Each tool can be called by any MCP-compatible AI client.

Scope and Cost Annotations

For remote OAuth clients, each tool requires a minimum scope on the token. Scopes are hierarchical — mcp:live implies mcp:paper implies mcp:read. Session-cookie (dashboard) users bypass scope checks.

BadgeMeaning
mcp:readRead-only. Safe for research agents.
mcp:paperRead + paper-trade writes (paper exchanges, paper bots).
mcp:liveRead + paper + live-money writes (live deploys, wallet-charging tools).
$Charges your Strategy Lab wallet. Agent must pass acknowledgeCost: true to commit.

When a tool requires a scope your token doesn't hold, the server returns 403 insufficient_scope with the required scope echoed back. See Authentication for the full scope model.


Authentication (4 tools)

login

Log in with email and password credentials.

ParameterTypeRequiredDescription
emailstringYesTradeStaq account email
passwordstringYesAccount password

authenticate

Start a browser-based OAuth flow. Opens a browser window for secure login — useful when you do not want to type credentials into the AI client.

ParameterTypeRequiredDescription
No parameters required

check_auth

Check whether the current session is authenticated and surface the context an agent needs to preflight scope and cost gates. Returns user profile, subscription tier with capabilities (allowLiveTrading, allowAIBuilder, allowNewsTrading, allowMcpServer), strategyLabBalanceUsd, and for MCP Bearer tokens the token block (clientId, clientName, scope, expiresAt). Response is cached per-token for 30 seconds.

Scope: none required (works on any authenticated session).

ParameterTypeRequiredDescription
No parameters required

set_token

Manually set a JWT token for authentication. Use this if you already have a token from the TradeStaq dashboard or API.

ParameterTypeRequiredDescription
tokenstringYesJWT authentication token

Market Data (3 tools)

get_price

Get the current price of a trading pair on a specific exchange.

ParameterTypeRequiredDescription
exchangestringYesExchange name (e.g. "binance")
symbolstringYesTrading pair (e.g. "BTC/USDT")

list_exchanges

List all exchanges supported by TradeStaq.

ParameterTypeRequiredDescription
No parameters required

get_trading_pairs

Get available trading pairs for a specific exchange.

ParameterTypeRequiredDescription
exchangestringYesExchange name

Portfolio (2 tools)

get_portfolio

Get portfolio balances across all connected exchanges.

ParameterTypeRequiredDescription
exchangestringNoFilter by specific exchange

get_positions

Get open positions across all connected exchanges.

ParameterTypeRequiredDescription
exchangestringNoFilter by specific exchange
symbolstringNoFilter by specific trading pair

Strategies (6 tools)

list_strategies

List available trading strategies from the marketplace.

ParameterTypeRequiredDescription
categorystringNoFilter by category
pagenumberNoPage number for pagination

search_strategies

Search for strategies by name, description, or tags.

ParameterTypeRequiredDescription
querystringYesSearch query

get_strategy

Get detailed information about a specific strategy.

ParameterTypeRequiredDescription
strategyIdstringYesStrategy ID

get_strategy_performance

Get historical performance metrics for a strategy.

ParameterTypeRequiredDescription
strategyIdstringYesStrategy ID
periodstringNoTime period ("7d", "30d", "90d")

create_strategy

Create a new strategy using the AI builder (FORGE).

Scope: mcp:live when invoked with wallet-charging optimization (generate_strategy path). $ — see generate_strategy below for the cost envelope. Agent must pass acknowledgeCost: true to commit.

ParameterTypeRequiredDescription
descriptionstringYesNatural language description of the strategy
pairstringNoTarget trading pair
timeframestringNoCandle timeframe
acknowledgeCostbooleanNoRequired (true) when the call will charge the Strategy Lab wallet. Without it, the server returns a cost-estimate envelope instead of queueing.

get_my_strategies

List strategies you own or have purchased.

ParameterTypeRequiredDescription
No parameters required

Backtesting (3 tools)

run_backtest

Start a backtest for a strategy with specified parameters.

ParameterTypeRequiredDescription
strategyIdstringYesStrategy to backtest
exchangestringYesExchange for market data
symbolstringYesTrading pair
timeframestringYesCandle timeframe ("1m", "5m", "1h", etc.)
startDatestringNoStart date (ISO 8601)
endDatestringNoEnd date (ISO 8601)

get_backtest_status

Check the status of a running backtest.

ParameterTypeRequiredDescription
backtestIdstringYesBacktest job ID

get_backtest_results

Get the results of a completed backtest.

ParameterTypeRequiredDescription
backtestIdstringYesBacktest job ID

Bot Management (5 tools)

deploy_bot

Deploy a new trading bot with a strategy on an exchange.

Scope: mcp:paper when exchange targets a paper exchange; mcp:live when exchange targets a live exchange. The server resolves the exchange before deciding — attempting a live deploy with a mcp:paper token returns 403 insufficient_scope.

ParameterTypeRequiredDescription
strategyIdstringYesStrategy to use
exchangestringYesTarget exchange
symbolstringYesTrading pair
modestringNo"live" or "paper" (default: "paper")
configobjectNoBot configuration overrides

stop_bot

Stop a running bot.

Scope: mcp:paper for paper bots; mcp:live for live-money bots.

ParameterTypeRequiredDescription
botIdstringYesBot ID to stop

get_bot_status

Get the current status and performance of a bot.

ParameterTypeRequiredDescription
botIdstringYesBot ID

list_bots

List all your bots with their status.

ParameterTypeRequiredDescription
statusstringNoFilter by status ("running", "stopped", "error")

update_bot_config

Update configuration of a running or stopped bot.

Scope: mcp:paper for paper bots; mcp:live for live-money bots.

ParameterTypeRequiredDescription
botIdstringYesBot ID
configobjectYesNew configuration values

Trade History (2 tools)

get_recent_trades

Get recent trades across all bots.

ParameterTypeRequiredDescription
limitnumberNoNumber of trades to return (default: 20)
botIdstringNoFilter by specific bot

get_trade_details

Get detailed information about a specific trade.

ParameterTypeRequiredDescription
tradeIdstringYesTrade ID

Copy Trading (3 tools)

get_leaderboard

Get the copy trading leaderboard with top-performing traders.

ParameterTypeRequiredDescription
periodstringNoRanking period ("7d", "30d", "90d")
limitnumberNoNumber of results

follow_trader

Start copying a master trader.

Scope: mcp:paper when copying onto a paper exchange; mcp:live when copying onto a live exchange.

ParameterTypeRequiredDescription
masterIdstringYesMaster trader ID
exchangestringYesExchange to copy on
allocationnumberNoPercentage of balance to allocate

unfollow_trader

Stop copying a master trader.

Scope: mcp:paper for paper copies; mcp:live for live-money copies.

ParameterTypeRequiredDescription
masterIdstringYesMaster trader ID

Advisor (3 tools)

get_trading_advice

Get AI-powered trading advice based on current market conditions.

ParameterTypeRequiredDescription
symbolstringNoSpecific trading pair to analyze
contextstringNoAdditional context for the advice

analyze_portfolio

Get an AI analysis of your current portfolio with suggestions.

ParameterTypeRequiredDescription
No parameters required

get_market_summary

Get a summary of current market conditions across major pairs.

ParameterTypeRequiredDescription
No parameters required

Next Steps