Wiz by TradingWizard

Bring live markets and Wiz into your AI chat.

Public tools work before sign-in: live markets, Market Track, macro mood, movers, global bot reads, ranked opportunities, Bot Fund performance, and Bot One. OAuth starts only when you request account data or a private capability.

Choose your AI client

Install Wiz once. The same connector starts with public tools and adapts to your Free, Pro, or Ultimate account after OAuth.

One connectorWiz by TradingWizard
Signed out · Free · Pro · Ultimate

Choose your AI client

No sign-in to startLogged out, Free, Pro and Ultimate

Wiz by TradingWizard in ChatGPT

Use live markets, macro mood, Market Track, movers, global bot reads, ranked opportunities, and Bot Fund performance without signing in. Connect your TradingWizard account only for private features; access follows your Free, Pro, or Ultimate plan.

  • Public market tools while logged out
  • OAuth for private account features
  • Free, Pro and Ultimate access by plan

Trading involves risk. Every bot starts in paper mode. Real-money execution is not available to users.

1

Open Plugins

In ChatGPT Settings, open Apps & Connectors, choose Advanced settings, enable Developer mode, then open Plugins.

2

Add Wiz

Select the plus button, name it Wiz by TradingWizard, and paste the endpoint.

3

Ask a public question

Use the test prompt below. ChatGPT asks you to sign in only for your own bots, portfolio, or alerts.

Wiz MCP endpoint
https://www.tradingwizard.ai/api/mcp
Verify the connection
Test prompt
Use Wiz by TradingWizard: what is moving right now, why, and which Wiz bots are closest to a trade?
Public market tools work while logged out. TradingWizard OAuth is requested only for private account features, and the available tools follow the signed-in account's Free, Pro, or Ultimate plan. Review the tw:mcp:read and tw:mcp:paper.write and tw:mcp:portfolio.write scopes before approving. Access tokens never appear in tool results. Disconnect in your AI client or revoke access from Settings → Wiz (MCP). Privacy details.

One Wiz, four access levels

No account

Signed out

  • 10 public read-only tools
  • Macro mood and Market Track
  • Global bots and Bot Fund
OAuth

Free

  • 20 entitled tools in total
  • Personal bots and timelines
  • Scanner and strategy reads
OAuth

Pro

  • 49 entitled tools in total
  • Portfolio, alerts, and watchlists
  • Supported paper controls
OAuth

Ultimate

  • All 52 Wiz tools
  • Signals and deeper analysis
  • Ultimate bot capabilities
Wiz can return free market intelligence plus your account plan, bots, paper trades and positions, alerts, watchlists, and analysis when an authorized tool is called. OAuth tokens are never included in tool results. Disconnect in your AI client or revoke access from Settings → Wiz (MCP). Read the privacy details.

What is MCP?

Model Context Protocol lets an AI client call approved tools from an external service. The Wiz endpoint is mixed-auth: public market and global-bot reads need no account, while private account tools trigger OAuth on the same connection.

Canonical Wiz endpointhttps://www.tradingwizard.ai/api/mcp

Example prompts

  • Use Wiz by TradingWizard: what is moving right now, why, and which Wiz bots are closest to a trade?
  • Use Wiz by TradingWizard. What changed in Market Track today, and what do the global bots think?
  • Use Wiz by TradingWizard to check Bot One. What changed in its latest read, and why did it wait?
  • Use TradingWizard to summarize my open paper positions and alerts. Do not change anything.

Wiz tool reference

The catalog below is generated directly from the live MCP specification. It includes 53 current tools, plan access, and whether each tool reads or writes.

Browse all 53 toolsOpen

Account

get_account
ReadFree+

Fetch the authenticated TradingWizard user's plan tier, credit balance and daily-API usage. Use this to check whether a feature is gated before calling other tools.

get_credits
ReadFree+

Check the agent budget: remaining credits, plan, and how many of today's API requests are left before the daily rate limit. Call this to self-monitor before running a batch of tools.

get_memory
ReadPro+

The durable facts Wiz has learned about the signed-in user in their ACTIVE workspace (trading style, risk appetite, focus markets, decisions, lessons). Use to personalise answers or for 'what does Wiz remember about me'. Read-only and scoped to the user's own workspace.

Bots

get_bots
ReadFree+

List the user's personal trading bots. Optional `symbol` filter (e.g. "BTC" or "BTCUSDT") narrows to one symbol. Returns bot status, current bias/score, recent P&L, win-rate and last/next scan timestamps.

get_bot_timeline
ReadFree+

The bot's merged activity timeline, newest first — the engine stream a human sees on the bot page: scan receipts (state, plain-language reason, plus verdict + trade-likelihood when present), life events (deploy, config_change and other lifecycle steps with their plain-language reason), and trade opens/closes (side, entry/exit, and realized pnlPercent on closes). `limit` caps rows (default 20, max 50); the web app has the full paginated view. Access mirrors the bot page: a private bot is visible only to its owner; a global fleet bot is public. A feature_run is private to the user who ran it and the bot owner. Setup levels (entry/stop/target/rrr and the level-bearing reasons) are included only for the owner, Pro+ callers, or fleet admins — stripped otherwise.

get_bot_one_status
ReadFree+

Read the current public, paper-mode Bot One snapshot: market, timeframe, latest view and reason, level-free paper-position summary, and tracked paper results.

get_strategies
ReadFree+

The strategy lenses a bot can run — the six modules (Wiz plus five named technical lenses: Elliott Wave, Fibonacci, Cycle, MACD, MA Cross) with a plain-language description, the inputs each leans on, and the module it degrades to. Each carries an HONEST track record from real closed trades: status is 'proven' (with avgPnlPct + tradeCount), 'new' (no number yet — the lens hasn't earned one), or 'unproven' (a thin outlier we won't advertise). A lens changes what the analyst WEIGHS, never the odds — there is no fabricated per-strategy P&L. Pass a strategy id into deploy_bot or edit_bot to run a bot on that lens.

deploy_bot
WriteUltimate

Deploy a new autonomous trading bot for a symbol. ⚠️ PAID: deploying kicks off an AI scan (consumes Gemini compute + 1 credit; the first bot is free on Free plan). Ultimate-only via the agent API. Respects plan bot-limits. Paper mode by default. timeframe/risk default to the user's settings. strategyId selects the analysis lens (default Wiz — call get_strategies for ids); language sets the bot's output language.

set_bot_state
WritePro+

Control a bot by id: pause, resume, delete, or scan. pause/resume/delete are free; delete closes any open positions and restores follower balances. scan queues an immediate re-scan (⚠️ PAID Gemini compute) and is Ultimate-only + rate-limited — it runs on the next cron tick, not inline.

edit_bot
WritePro+

Edit a personal bot's BEHAVIOUR config in place. `botId` is required; pass ONLY the fields you want to change (each optional). strategyId — a lens id from get_strategies (wiz | elliott | fibonacci | cycle | macd | macross) or an alias (breakout | meanreversion | vwap, which resolve). riskLevel — Low | Medium | High. timeframe — 1m, 5m, 15m, 30m, 1H, 2H, 4H, 1D, 1W. thinkingEffort — auto | low | medium | high. language — auto, en, sv, de, es, fr, nl, zh, hi. customPrompt — free-text strategy instructions (≤500 chars; empty string clears them). tradeSizing — small | standard | large: the paper trade-size band (small ≈ half, large ≈ double the standard position size), applied from the next trade. Every REAL change writes a permanent config_change event to the bot's timeline (see get_bot_timeline) and takes effect from the bot's next scan; a no-op save changes nothing. A bot's symbol/market/asset are FIXED — deploy a new bot for a different market. Owner-only; timeframe can't change while a trade is open. Returns the fields that changed plus the reloaded bot.

list_proposals
ReadPro+

The caller's PENDING confirm-mode trade proposals — own only, freshest first. A bot in 'Ask me first' mode (executionMode: confirm) writes a proposal on an ENTER verdict INSTEAD of opening the trade; this is your decide queue. Each row carries the proposal id (pass to approve_trade / decline_trade), the bot + symbol + side, the staked setup (entry zone, stop, target — your own bot, so levels are always shown), the trade-likelihood score, the plain-language reason, and when it expires. Lapsed proposals are hidden. Approve opens the SAME paper trade the bot would have on auto (re-validated against the live price); pass records the honest road-not-taken. Nothing ever auto-approves.

approve_trade
WritePro+

Approve a PENDING confirm-mode proposal by id (from list_proposals). Re-validates against the LIVE price and, only if the market still sits in the staked entry zone, opens the SAME PAPER trade the bot would have opened on auto — through the identical executor path, no real money. A market that moved out of the zone expires the proposal ('this setup has moved') and opens nothing; an already-decided/expired/superseded proposal returns the honest per-status message. Exits stay automatic (SL/TP). There is NO auto-approve — a proposal only opens by this explicit call.

decline_trade
WritePro+

Pass on a PENDING confirm-mode proposal by id (from list_proposals). Records the honest 'You passed on this setup' on the bot timeline and opens nothing. Declining an already-resolved proposal returns the honest per-status message.

get_global_bots
ReadFree+

Browse a level-free snapshot of the public TradingWizard AI bot fleet: symbols, current bias, AI confidence, trade-likelihood and paper track record. Optionally filter by symbol.

follow_bot
WritePro+

Follow a GLOBAL fleet bot so the user is told about every trade it takes — its entry, stop, target and result, as a percentage. Nothing is opened in the user's account. `action` selects follow | unfollow. Get bot ids from get_global_bots.

get_fund_performance
ReadFree+

Verified Wiz Bot Fund paper-performance index, based at 100 across every verified global master bot. Current NAV combines realized return from closed positions with mark-to-market unrealized return from open positions, using equal bot sleeves and real position exposure. Returns the canonical Total / Closed / Open percentages, 7d / 30d / all NAV-ratio periods, completeness and mark-freshness metadata, and complete verified series points. Percentages only: no currency values, account identifiers, trade identifiers, or GlobalPerformance fallback. `period`: 7d | 30d | all (default 30d).

Trades

get_trades
ReadPro+

Fetch the user's recent trades. `status` selects OPEN, CLOSED or PENDING (default: all three). `limit` caps the result count (default 25, max 100). Most recent first.

get_positions_live
ReadPro+

Mark-to-market view of all OPEN positions, priced live right now (vs get_trades, whose pnl is a stored snapshot). Returns a tradeId per row plus live price, live P&L and P&L %, so an agent can monitor position health and decide what to close or modify. Includes a totalLivePnl across positions.

Market data

get_market_price
ReadFree+

Fetch the current live price for a single stock, crypto, forex, futures, or index symbol. The asset class is inferred when `type` is omitted.

get_market_summary
ReadFree+

Use this when the user asks about the current macro market picture. Returns crypto and stock Fear & Greed, altcoin season, BTC dominance, VIX, the US 10Y yield and daily change, market regime, AI signal, top movers and fleet sentiment. Every unavailable metric is null, and freshness metadata shows whether the four-hour macro ingest is healthy, stale or unknown.

get_markets
ReadFree+

Use this when the user wants to browse or compare a market list instead of looking up one ticker. Returns the same real asset universe and live quote fields used by /wiz/markets for Top 100, crypto, stocks, ETFs, forex, indices or futures. Results are capped at 50 and missing prices stay null.

get_market_track
ReadFree+

Latest TradingWizard Market Track events: price spikes, regime changes and AI calls with significance, sentiment and a short explanation. Optionally filter by symbols, market type or significance.

get_market_movers
ReadFree+

Latest verified public statements from influential market-movers (Trump, Elon, Powell, Cathie Wood, Saylor, Cramer…) that could move a stock, crypto or sector — with the affected ticker, sentiment, a 'how likely to move' score, the source, and how far the asset has moved SINCE the statement. Optionally filter by symbols.

get_us_filing_intelligence
ReadUltimate

What changed for ONE US stock or ETF in SEC filings: insider buying and selling (Form 4), recent company filings (8-K), and quarter over quarter institutional position changes (13F). Returns a short "what changed" list where every claim names the filing it came from, plus each part in its own envelope with provider, publication date, fetch date and freshness. Any part we could not check says so and is listed in `gaps`; it never comes back as "no activity". US stocks and ETFs only, because it reads SEC filings: crypto, currency pairs, futures, indices and non-US listings are refused with a reason rather than returned empty. Public-domain SEC EDGAR data. Ultimate plan only. Educational, read-only, and it never places a trade.

get_scanner
ReadFree+

Cross-asset event scanner. `kind` selects "earnings" (upcoming earnings calendar, synced daily from the FMP calendar), "ipo" (upcoming IPOs by date from the IPO calendar, with a live NASDAQ-feed fallback), "insider" (recent insider transactions — live Yahoo Finance SEC Form 4 data across a curated large-cap universe) or "all" (default). Sections with no data return empty arrays.

Analysis

get_chart_analysis
ReadPro+

Fetch the most recent AI chart analysis for a symbol — verdict, confidence, entry/SL/TP levels, headline reasoning. Returns null when no analysis has been run yet. For a FRESH analysis, call run_analysis.

get_trade_setup
WritePro+

Get a structured trade SETUP for a symbol BEFORE execution — bias (BUY/SELL/WAIT), entry zone, stop / invalidation, targets, confidence, risk:reward, reasoning, and warnings. The call idempotently creates or updates a private setup receipt for the authenticated user and returns its shareable receiptUrl when available. It never places a trade. Educational only — no profit guarantee.

get_signals
ReadUltimate

Top trade signals across the global bot fleet right now — symbols where the AI conviction is highest. Use this when the user asks "what should I look at" without a specific ticker. Ultimate plan only.

get_bot_consensus
ReadFree+

How the global bot fleet is currently biased on a symbol — a fast macro signal to validate or challenge your own conviction without running a fresh analysis. Returns bullish/bearish/neutral counts, the net consensus, and a confidence %.

run_analysis
WriteUltimate

Trigger a FRESH AI chart analysis for a symbol on demand (vs get_chart_analysis, which only returns the cached one). ⚠️ PAID: runs the Gemini engine (consumes a credit + Gemini compute). Ultimate-only via the agent API. Synchronous — can take up to ~2 min; if your client times out, the analysis still completes (recover it with get_analysis_status or get_chart_analysis). After it completes, call get_trade_setup for the structured setup.

get_analysis_status
ReadPro+

Check a chart analysis by analysisId, or the latest for a symbol — returns its status (processing/completed/failed) and the full analysis when ready. Use to poll a run_analysis that your client may have timed out on.

get_ranked_opportunities
ReadFree+

The live public scanner board: symbols the global AI bot fleet is watching, ranked by trade-likelihood. Returns symbol, bias, likelihood, confidence, fleet coverage and scan freshness without actionable price levels.

watch_setup
WritePro+

Start watching a setup receipt so TradingWizard tracks its outcome — target hit, stopped out, or invalidated — and alerts the user when it resolves. Pass the receiptId (the 24-char id inside get_trade_setup's receiptUrl, /r/<id>) or the receiptUrl itself. This closes the loop on get_trade_setup: fetch the setup, act (or not), then watch how the call plays out. Plan-capped concurrent watches (Free 1 / Pro 10 / Ultimate unlimited).

Portfolio

get_portfolio
ReadPro+

Snapshot of the user's portfolio — total equity, virtual cash balance, open exposure, win-rate, daily and all-time P&L, and per-holding AI verdicts.

get_watchlist
ReadPro+

List the user's watchlists — saved symbol groups (name, icon, symbols, default flag). Use this to discover which symbols the user cares about before scanning or analysing.

get_holdings
ReadFree+

List the user's imported Portfolio holdings — the real assets they track (symbol, quantity, average cost, currency, horizon, broker source). NOT the paper account: use get_portfolio for paper equity and positions. Holdings are analysis context only; Wiz never trades them.

add_portfolio_holdings
WriteFree+

Add holdings to the user's Portfolio: each row needs `symbol` and a non-zero `quantity`; optional avgCost, currency (default USD), assetType, assetName, horizon (default position). Upserts by symbol, so re-adding a manual symbol updates it. Confirm the rows with the user before calling — this edits their real portfolio record. Caps: 100 rows per call, 250 holdings total. Wiz never trades holdings.

update_portfolio_holding
WriteFree+

Update one Portfolio holding's quantity, avgCost, horizon, or assetType. Identify it by `id` (from get_holdings) or by `symbol` when unambiguous. Synced holdings (connected venues) are read-only and refuse edits. Confirm the change with the user before calling.

remove_portfolio_holding
WriteFree+

Remove one holding from the user's Portfolio, by `id` (from get_holdings) or by `symbol` when unambiguous. This deletes the row — confirm with the user before calling. Synced holdings (connected venues) cannot be removed here.

get_performance_stats
ReadPro+

The user's own trading analytics over a window of CLOSED trades — win rate, profit factor, expectancy per trade, average and largest win/loss, total realized P&L, and max drawdown of the realized equity curve. `days` sets the window (default 90, max 365, 0 = all-time) — use days=30 for monthly stats. Optional `source` filter: paper | bot | live | imported. Use for "what's my win rate", "how did I trade this month", "am I profitable".

Alerts

get_alerts
ReadPro+

List the user's price/indicator alerts. Optional `symbol` filter. Shows condition, target value, timeframe, delivery channels and active state.

create_price_alert
WritePro+

Create a price or indicator alert for a symbol. Conditions: price_above, price_below, rsi_above, rsi_below, rsi_oversold, rsi_overbought, ma_cross_above, ma_cross_below, volume_spike. price_*/rsi_above/rsi_below need a positive `value` (RSI 1-99). Delivery defaults to in-app + email. Plan-capped (Free 3 / Pro 10 / Ultimate unlimited) and rate-limited. Notifications only — does NOT auto-trade.

update_alert
WritePro+

Update an existing alert by id — change its value, condition, timeframe, delivery, cooldown, or pause/resume it via `active`. Re-activating respects the plan cap.

delete_alert
WritePro+

Delete an alert by id. Frees a slot against the plan cap.

Watchlist

add_to_watchlist
WritePro+

Add a symbol to a watchlist. Targets the list by `listId` or `listName`, else the user's default list. Idempotent (no duplicates).

remove_from_watchlist
WritePro+

Remove a symbol from a watchlist (by listId/listName, else the default list).

create_watchlist
WritePro+

Create a new watchlist with an optional name, icon (emoji) and starting symbols. Plan-capped (Free 3 / Pro 10 / Ultimate unlimited).

delete_watchlist
WritePro+

Delete a watchlist by id. If it was the default, the oldest remaining list is promoted to default.

Execution

execute_paper_trade
WritePro+

Open a PAPER (simulated) market trade — no real money. Fills at the live market price (you cannot set the entry; a >2% move or no feed is rejected, like a real broker). Deducts from the virtual balance. Provide an optional analysisId to attribute the trade to a chart analysis. Free across plans; paper only.

close_position
WritePro+

Close an OPEN paper position by tradeId (get the id from get_positions_live). Closes at the live price. Pass partialPercent (0-100) to scale out; omit for a full close. Bot positions also settle followers.

modify_position
WritePro+

Edit the stop-loss, take-profit(s) or trailing-stop on an OPEN paper position by tradeId. A level is set when present, cleared with null, untouched when omitted. New levels are validated against the live price (you can move a stop to break-even+ but not set one that would trigger immediately).

place_limit_order
WritePro+

Place a PAPER (simulated) LIMIT order at YOUR exact entry price — the execution counterpart to get_trade_setup's entryZone (execute_paper_trade is market-only). A BUY limit below / SELL limit above the live price waits until price reaches the level (funds are reserved up-front, Binance-style); a limit already at/past the live price fills immediately at market and the response says so. Optional stop/target are validated for side and sane distance (a dropped-k typo like "BTC at 107" is rejected with a units hint). Cancel an unfilled order with cancel_pending_order. Paper only — no real money.

cancel_pending_order
WritePro+

Cancel one of the user's PENDING (unfilled) paper limit orders by tradeId and refund the funds reserved at placement. Find pending orders via get_trades with status=PENDING. Has no effect on OPEN positions — use close_position for those.

Advanced fallback

OAuth is the normal setup. Use an API key only when an older or generic MCP client cannot complete OAuth. Keep the key out of project files and source control.

Show CLI and API key fallbackOpen

TradingWizard CLI

Node 18+ is required. Setup opens browser authorization and configures supported local clients.

npm install -g @tradingwizard/cli
wiz setup

Raw HTTP check

Copy the API key only from Settings → Wiz (MCP). Rotate it if it is exposed.

curl -X POST https://www.tradingwizard.ai/api/mcp \
  -H "Authorization: Bearer <YOUR_API_KEY>" \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'

Ready to connect Wiz?

Open Wiz settings to manage OAuth access and advanced fallback credentials.

Wiz settings