get_account_pnl
Reads dataAccount P&L today
Realised/unrealised position MTM and explicit unavailable charges. Not net profit after charges.
No arguments
QuantPower · Quanty MCP · Setup and tools
Connect QuantPower to Claude, ChatGPT, Codex, Gemini, Grok, Cursor or Perplexity, and see all 28 tools your AI gets. This list comes from the server's own tool list.
Use this one address in every AI app.
https://api.quantpower.tech/mcp
The first time, your AI app opens the QuantPower sign-in page. Sign in and click Allow. Remove access at any time from Connect AI in the QuantPower app.
Transport: MCP streamable HTTP. Sign-in: OAuth 2.1 with PKCE; the AI app registers itself. Apps that take a header (Claude Code, Codex, Gemini CLI, Cursor) can instead use a token you create in Connect AI in the QuantPower app: Authorization: Bearer qpa_…
Open your app for its steps.
Add it once on claude.ai or the desktop app. It then shows in the Claude app on iPhone and Android, under the same account.
An Owner adds it in Organization settings → Connectors (Add, Custom, Web) with the same address. Each member then clicks Connect in Customize → Connectors and signs in with their own QuantPower account.
claude mcp add --transport http quantpower https://api.quantpower.tech/mcp
claude mcp login quantpowerOr type /mcp inside Claude Code and choose quantpower to sign in.
Source: Claude Help Center: custom connectors
Source: Claude Code docs: MCP
On a Business workspace, an admin turns on developer mode first.
Source: OpenAI: connect a custom MCP server in ChatGPT
Source: OpenAI Help: plans for MCP apps
Add this to ~/.codex/config.toml:
[mcp_servers.quantpower]
url = "https://api.quantpower.tech/mcp"Then sign in:
codex mcp login quantpowerTo use a token instead, add bearer_token_env_var = "QUANTPOWER_TOKEN" under the same heading and put your token in that environment variable.
Source: OpenAI Codex docs: MCP
gemini mcp add --transport http quantpower https://api.quantpower.tech/mcpThen type /mcp auth quantpower inside Gemini CLI. Sign-in needs a browser on the same computer.
Once added on the web, it also works in the Gemini phone app. It cannot be added from the phone. Outside the US, use Gemini CLI.
Source: Gemini CLI docs: MCP servers
Source: Gemini Apps Help: custom apps
Source: xAI docs: Grok connectors
Add this to ~/.cursor/mcp.json (all projects) or .cursor/mcp.json (one project). Cursor opens the QuantPower sign-in page when it first connects.
{
"mcpServers": {
"quantpower": {
"url": "https://api.quantpower.tech/mcp"
}
}
}Manage it later from the Customize page in Cursor's sidebar.
Source: Cursor docs: MCP
Give the app the server address and choose streamable HTTP. The app finds the sign-in by itself.
Reads your own account: holdings, positions, funds, orders, algos, risk settings, watchlists and alerts.
get_account_pnlAccount P&L today
Realised/unrealised position MTM and explicit unavailable charges. Not net profit after charges.
No arguments
get_portfolioPortfolio (holdings)
The client's demat holdings with quantity, average price, last price and profit or loss, plus totals. Amounts in INR as text. Read-only.
No arguments
get_positionsPositions today
Open and closed intraday and F&O positions for today with mark-to-market profit or loss. Read-only.
No arguments
get_fundsFunds and margin
Available margin, used margin, collateral, cash and withdrawable amount in INR. Read-only.
No arguments
get_ordersOrders today
Today's orders with status, quantity, filled quantity and prices. Read-only; orders cannot be placed, changed or cancelled here.
Arguments
status · Which orders to list. Values: all, open, executed, rejected, cancelled, amoget_algosMy algos
The client's option algos with state (on / off / stopped), schedule, legs and today's leg status. Read-only; an algo is switched on only by the client in the app.
No arguments
get_signalsMy signals and today's fires
The client's signal algos (live / paused, one touch or auto) and recent fires with their outcome. Read-only.
No arguments
get_risk_statusKill switch, loss limit, Smart Exit
Whether the kill switch is on, how much of the daily loss limit is used, and the Smart Exit (whole-book target / stop) state with M2M now. Read-only.
No arguments
get_watchlistsMy watchlists
The client's watchlists with each scrip's last price and change. Read-only.
No arguments
get_alertsMy price alerts
The client's price alerts and their status. Read-only.
No arguments
get_algo_dayWhy did my algo (not) trade today
What one of the client's algos did on a day, from its own activity log: whether it ran (switched off, not one of its days, paused, stopped, entry time not reached), each entry, exit and refusal with its time and reason in plain words, today's legs and P&L.
What one of the client's algos did on a day, from its own activity log: whether it ran (switched off, not one of its days, paused, stopped, entry time not reached), each entry, exit and refusal with its time and reason in plain words, today's legs and P&L. Read-only. This is software, not a research analyst or adviser: it builds and checks the client's own rules and never recommends a strategy, a trade or says one will be profitable.
Arguments
algo_id · The algo's id from get_algos.date · YYYY-MM-DD (optional; today if left out).Reads quotes, candles, option chains, scanners, market hours and QuantPower help.
get_market_indicesMarket indices
Connected index values. Preserve the source and timestamp; receipt time is not quote time.
No arguments
search_scripSearch scrips
Find stocks, futures and options by symbol or company name. Returns the instrument id the other tools need.
Arguments
query · Symbol or name, e.g. RELIANCE or Reliance Industries.segment · Market segment. Values: NSECM, NSEFO, NSECD, NSECO, MCXFO, BSECM, BSEFO, BSECD, BSECOget_quoteQuote
Last price, change, open, high, low, close, volume and circuit limits for one instrument. Read-only.
Arguments
instrument · Instrument id from search_scrip, e.g. NSECM:2885 (segment:exchange instrument id).get_candlesCandles
Price candles (open, high, low, close, volume) for one instrument and timeframe. Times are Unix seconds.
Arguments
instrument · Instrument id from search_scrip, e.g. NSECM:2885 (segment:exchange instrument id).timeframe · Candle size. Values: 1m, 3m, 5m, 15m, 30m, 1h, 1d, 1wfrom · Start, ISO date-time (optional), e.g. 2026-10-23T09:15:00+05:30.to · End, ISO date-time (optional).get_option_chainOption chain
Option chain for an index or stock with strikes, last prices, open interest, IV and delta. Read-only.
Arguments
underlying · Underlying symbol in capitals, e.g. NIFTY, BANKNIFTY, RELIANCE.expiry · Expiry date YYYY-MM-DD (optional; nearest expiry if left out).run_scannerRun a scanner
Run a market scanner now (top gainers, volume shock, RSI below 30 and others) and list the matching scrips.
Arguments
scanner_id · Scanner id, e.g. top_gainers.segment · Market segment. Values: NSECM, NSEFO, NSECD, NSECO, MCXFO, BSECM, BSEFO, BSECD, BSECOget_market_statusMarket hours and holidays
Which markets are open now (equity, F&O, MCX, currency), today's hours, upcoming holidays and the next index expiries.
No arguments
search_helpSearch QuantPower help
Answer 'how do I…' questions from QuantPower's own help pages, with the page link.
Arguments
query · The question in a few words, e.g. scalper one tap.Works on rules and legs you give it, and backtests them. Nothing is saved or placed.
review_option_strategyReview an option drawing
Validate explicit user-supplied option legs and sizing for review. Pure validation only: no saved-account access, save, enable or order. Ask for missing expiry and sizes; never invent rules.
Arguments
strategy name underlying Values: NIFTY, BANKNIFTY, FINNIFTY, MIDCPNIFTY, SENSEX, BANKEXexpiry mul legs backtest_rulesBacktest your rules
Backtest the client's own rules on historical candles with the chart's rule engine (the same indicators, candle patterns and chart formations as the chart).
Backtest the client's own rules on historical candles with the chart's rule engine (the same indicators, candle patterns and chart formations as the chart). Use it when the client asks to backtest or test an indicator, candle-pattern or formation rule. strategy = {version: 1, name, side: "long"|"short", quantity (units), entry: {logic: "all"|"any", conditions: [...]}, optional exit (same shape), optional stopLoss / target ({kind: "percent", value} | {kind: "points", value} | {kind: "atr", period, multiplier}), optional trailingStop ({kind: "indicator", indicator, output} | {kind: "percent", value}), optional squareOff "HH:MM" (intraday), optional costs {slippagePct, perOrder}}. Conditions: {kind: "compare", left, op: above|below|cross-up|cross-down, right}, {kind: "direction", indicator, op: is-up|is-down|turns-up|turns-down|turns}, {kind: "change", operand, op: rises|falls}, {kind: "candle-pattern", id}, {kind: "chart-pattern", id}; an operand is {"kind": "price", "field": "close"} (open/high/low/close/volume), {"kind": "value", "value": 30} or {"kind": "indicator", "indicator": {"kind": "ema", "period": 20, "multiplier": 2}, "output": 0}; the client's own custom indicator is {"kind": "indicator", "indicator": {"kind": "custom", "custom": {"name", "lines": [{"formula", "label"}], "pane"}}, "output": line index} (formulas as in save_custom_indicator). Indicator kinds include ema, sma, rsi, macd, supertrend, supertrend-ema, supertrend-sma, vwap, bollinger, atr-trailing, chandelier, cpr-daily, auto-fib, smc-structure and 90 more; period 2-300, multiplier 0.1-10. Fills are at the next bar's open. Results are past results, not advice: give the key figures and say they are historical; never call a strategy profitable or tell the client to use it.
Arguments
instrument · Instrument id as from search_scrip, e.g. NSECM:2885.timeframe · Candle size. Values: 1m, 3m, 5m, 15m, 30m, 1h, 1d, 1wbars · How many recent closed bars (default 1000).strategy · The rules, as described above.run_backtestBacktest a signal algo
Backtest the client's own entry / exit rules on one instrument with the app's backtest engine (the Backtest button: entry at the close of the bar the rule turns true, stop-loss / target inside a later bar, slippage, estimated charges) and return the report: trades, win %, net P&L, avg win / loss, reward-to-risk, expectancy, max drawdown (INR and %), drawdown duration, streaks, day-wise and monthly P&L.
Backtest the client's own entry / exit rules on one instrument with the app's backtest engine (the Backtest button: entry at the close of the bar the rule turns true, stop-loss / target inside a later bar, slippage, estimated charges) and return the report: trades, win %, net P&L, avg win / loss, reward-to-risk, expectancy, max drawdown (INR and %), drawdown duration, streaks, day-wise and monthly P&L. strategy = {instrument (search_scrip), tf 5m|15m|30m|1h|1D, side long|short, qty, entry: {left, op >|<|crosses_above|crosses_below, right}, exit (same shape, optional), sl_pct, target_pct, bars 100-2000, slippage, slippage_unit pts|pct}; an operand is a number or {"indicator": "price"} | {"indicator": "sma"|"ema"|"rsi", "period": 2-200} | {"indicator": "macd_hist"}. One of exit / sl_pct / target_pct is needed. Results are past results on historical data, not a promise or advice: give the key figures and say they are historical; never call a strategy profitable or recommend it. This is software, not a research analyst or adviser: it builds and checks the client's own rules and never recommends a strategy, a trade or says one will be profitable.
Arguments
strategy · The rules, as described above.Checks an algo built from your own rules, or saves it switched OFF. Only you switch an algo on, in the app.
list_templatesAlgo templates
Ready option-algo templates (short straddle, short strangle, iron fly, iron condor, bull call / bear put spread, long straddle) in the saved-algo format, every rule written out, to start the client's own algo from. Read-only. This is software, not a research analyst or adviser: it builds and checks the client's own rules and never recommends a strategy, a trade or says one will be profitable.
No arguments
build_strategyCheck an algo (not saved)
Check one option algo built from the client's own words with the app's own rules and return it normalised (legs in words, schedule, exits) or the exact fields to fix.
Check one option algo built from the client's own words with the app's own rules and return it normalised (legs in words, schedule, exits) or the exact fields to fix. Nothing is saved and nothing runs. Ask the client for anything missing instead of choosing it. This is software, not a research analyst or adviser: it builds and checks the client's own rules and never recommends a strategy, a trade or says one will be profitable.
Arguments
algo · The option algo in the format the app's POST /algos takes. Keys: name, legs (1-8), product INTRADAY|OVERNIGHT, entry_time / exit_time "HH:MM" IST, days [1-5] ([] every trading day), entry_mode at_time|wait_and_trade|orb (+ orb {minutes, start, on, break}, wait_pct), sl_pct (per-leg SL %), re_entry, re_entry_max, mtm_target / mtm_stop (INR as text), combined {target / stop: {kind mtm|mtm_pct|delta|theta, value | band, action, times}, lock}, qty_multiplier, monitor (0, 60, 180, 300, 900 s), next_day_exit "HH:MM" (BTST / STBT), underlying, template. A leg is a rule picked at entry time {"rule": {underlying, option_type CE|PE|FUT, strike "ATM" | "OTM 2" | "ITM 1" | {mode: premium|delta|theta|gamma|vega, match, value} | {mode: straddle_width|straddle_pct|pct_atm, value}, expiry weekly|next_weekly|monthly|next_monthly (FUT: current|next), price_basis spot|future|synthetic}, side BUY|SELL, lots} or a fixed contract {instrument (from search_scrip), side, qty, product, order_type MARKET}; any leg may carry exits {target, stop: {kind points|pct|ul_points|ul_pct|delta|theta|gamma|vega, value}, ref, trail, to_cost, on_hit leg|all, re_execute}, wait, orb, lazy {on entry|target|sl, of_leg}, entry (limit / sl_limit). Never send state or a switch: the algo is always saved OFF.id · Only to change one of the client's existing algos (it must be switched off); the ids are in get_algos.save_algo_offSave an algo switched OFF
Save a new option algo, or change one of the client's algos that is switched off, from the client's own words.
Save a new option algo, or change one of the client's algos that is switched off, from the client's own words. Always saved switched OFF: it does nothing until the client turns it on himself with its own switch on the Algos screen. You cannot switch it on, start, arm or deploy it, and nothing is placed. Run build_strategy first and show the client what will be saved. This is software, not a research analyst or adviser: it builds and checks the client's own rules and never recommends a strategy, a trade or says one will be profitable.
Arguments
algo · The option algo in the format the app's POST /algos takes. Keys: name, legs (1-8), product INTRADAY|OVERNIGHT, entry_time / exit_time "HH:MM" IST, days [1-5] ([] every trading day), entry_mode at_time|wait_and_trade|orb (+ orb {minutes, start, on, break}, wait_pct), sl_pct (per-leg SL %), re_entry, re_entry_max, mtm_target / mtm_stop (INR as text), combined {target / stop: {kind mtm|mtm_pct|delta|theta, value | band, action, times}, lock}, qty_multiplier, monitor (0, 60, 180, 300, 900 s), next_day_exit "HH:MM" (BTST / STBT), underlying, template. A leg is a rule picked at entry time {"rule": {underlying, option_type CE|PE|FUT, strike "ATM" | "OTM 2" | "ITM 1" | {mode: premium|delta|theta|gamma|vega, match, value} | {mode: straddle_width|straddle_pct|pct_atm, value}, expiry weekly|next_weekly|monthly|next_monthly (FUT: current|next), price_basis spot|future|synthetic}, side BUY|SELL, lots} or a fixed contract {instrument (from search_scrip), side, qty, product, order_type MARKET}; any leg may carry exits {target, stop: {kind points|pct|ul_points|ul_pct|delta|theta|gamma|vega, value}, ref, trail, to_cost, on_hit leg|all, re_execute}, wait, orb, lazy {on entry|target|sl, of_leg}, entry (limit / sl_limit). Never send state or a switch: the algo is always saved OFF.id · Only to change one of the client's existing algos (it must be switched off); the ids are in get_algos.review_saved_option_strategyReview a change to a saved drawing
Review a complete replacement for one of the client's saved option drawings (Strategy builder). The client reviews and clicks Save in the app; nothing is written or run here. This is software, not a research analyst or adviser: it builds and checks the client's own rules and never recommends a strategy, a trade or says one will be profitable.
Arguments
strategy name underlying Values: NIFTY, BANKNIFTY, FINNIFTY, MIDCPNIFTY, SENSEX, BANKEXexpiry mul legs id · The saved drawing's id.Prepares an order card. You confirm or reject it in the QuantPower app.
prepare_orderPrepare an order for the client to confirm
Prepare one order and send it to the client's app as a card.
Prepare one order and send it to the client's app as a card. The CLIENT confirms or rejects it there; you cannot place, confirm, modify or cancel anything. Use search_scrip for the instrument id and get_quote for the price first. Explain in 'reason' why, in the client's words. The card expires in 15 minutes. If the client has two or more brokers connected, 'broker' is required (ask the client which one): without it the call is refused with the list of their brokers by name.
Arguments
order instrument · Instrument id from search_scrip, e.g. NSECM:2885 (segment:exchange instrument id).side Values: BUY, SELLqty · Quantity (shares; for F&O, lots x lot size).product · MIS intraday, CNC delivery, NRML F&O carry. Values: MIS, CNC, NRMLorder_type Values: MARKET, LIMIT, SL, SL-Mprice · Limit price in INR as text (LIMIT and SL only).trigger · Trigger price in INR as text (SL and SL-M only).validity Values: DAY, IOC, GTDreason · Why this order, in the client's words, e.g. 'You asked me to add 25 RELIANCE at market'.broker · The client's broker connection this order goes to, by name as their broker list shows it, e.g. 'Zerodha' or 'Zerodha (AB••12)'. Needed only when the client has two or more brokers connected; leave it out with one.get_prepared_ordersPrepared orders and their status
The orders you prepared for this client and what happened to each: waiting, confirmed (with the order id), rejected, expired or failed. Read-only.
No arguments
Server Wisdom Tree Ventures MCP 0.1.0. Tools behind a QuantPower feature appear when that feature is on for your account.
Linking Quanty MCP and reading your data through it is free; actions cost tokens at the normal price. See token prices · About Quanty MCP · Quanty inside the app