tradingview-mcp
TradingView MCP server — real-time market data, technical analysis, screeners & backtesting for Claude, ChatGPT, Cursor & any MCP client. Stocks, crypto, forex & futures across global exchanges. Hosted or self-host.
How to read this: tool names here are observed from a live tools/list handshake. The Risk label is a heuristic inferred from the tool name (write/destructive verbs), not from executing the tool — a conservative guess, not a verified capability. We never escalate risk from a description. Found one that's wrong? Tell us — we fix on report.
| Tool | Risk | Side effects | Approval |
|---|---|---|---|
| volume_confirmation_analysis Detailed volume confirmation analysis for a specific coin.
Args:
symbol: Coin symbol (e.g., BTCUSDT)
exchange: Exchange name
timeframe: Time frame for analysis
| unknown | unknown | unknown |
| futures_category_snapshot Quote all major front-month contracts in a specific futures category.
Args:
category: equity_index | energy | metals | agriculture | rates | forex | crypto_futures
Returns:
OHLCV quotes for the standard watchlist of contracts in that category.
Example symbols: ES1! NQ1! (equity_index), CL1! NG1! (energy), GC1! SI1! (metals).
| read | false | unknown |
| egx_market_overview Get a comprehensive overview of the Egyptian Exchange (EGX) market.
Args:
timeframe: One of 5m, 15m, 1h, 4h, 1D, 1W, 1M (default 1D for stocks)
limit: Number of stocks per category (max 20)
| read | false | unknown |
| egx_sector_scanner Sector rotation scanner for EGX — identifies hot/cold sectors and top picks.
Args:
timeframe: One of 5m, 15m, 1h, 4h, 1D, 1W, 1M (default 1D)
top_n_sectors: Number of top sectors to show stock picks for (1-18, default 5)
top_n_stocks: Number of top stocks per highlighted sector (1-10, default 3)
min_stock_score: Minimum stock score for picks (0-100, default 60)
| read | false | unknown |
| top_gainers Return top gainers for an exchange and timeframe using Bollinger Band analysis.
Args:
exchange: Exchange name — crypto: KUCOIN, BINANCE, BYBIT, MEXC; stocks: EGX, BIST, NASDAQ, NYSE, BURSA, HKEX, SSE, SZSE, TWSE, TPEX
timeframe: One of 5m, 15m, 1h, 4h, 1D, 1W, 1M
limit: Number of rows to return (max 50)
Returns:
list[dict] on success. On ANY failure returns a structured error
envelope ``{"error": {"code": ..., "retryable": ...}}`` — never a
raw exception string.
| read | false | unknown |
| multi_timeframe_analysis Multi-timeframe alignment analysis (Weekly → Daily → 4H → 1H → 15m).
Canonical name is exactly `multi_timeframe_analysis` (there is no
"get_multi_timeframe_analysis" tool). Use this for cross-timeframe trend
alignment on ONE symbol; for a single-timeframe deep dive use
`coin_analysis`; for TA + sentiment + news use `combined_analysis`.
Example: multi_timeframe_analysis(symbol="SOLUSDT", exchange="BINANCE")
Args:
symbol: Bare ticker, no exchange prefix — crypto: "BTCUSDT"; stocks: "COMI" (EGX), "THYAO" (BIST), "600519" (SSE), "300251" (SZSE), "2330" (TWSE), "3105" (TPEX), "GDX" (AMEX)
exchange: Exchange — crypto: KUCOIN, BINANCE, MEXC; stocks: EGX, BIST, NASDAQ, NYSE, AMEX, NYSEARCA, PCX, SSE, SZSE, TWSE, TPEX
| unknown | unknown | unknown |
| consecutive_candles_scan Scan for coins with consecutive growing/shrinking candles pattern.
Args:
exchange: Exchange name (BINANCE, KUCOIN, etc.)
timeframe: Time interval (5m, 15m, 1h, 4h)
pattern_type: "bullish" (growing candles) or "bearish" (shrinking candles)
candle_count: Number of consecutive candles to check (2-5)
min_growth: Minimum growth percentage for each candle
limit: Maximum number of results to return
| unknown | unknown | unknown |
| bitcoin_market_pulse Single-call BTC macro context: price, dominance, total market cap + risk assessment.
Use this WHENEVER analyzing any cryptocurrency (altcoin or BTC itself) to
get the broader market frame in one shot. A SOL/ETH/whatever setup looks
very different when BTC is dumping with rising dominance vs. when alts
are leading. Calling this once gives Claude the macro context to provide
Bitcoin-aware commentary alongside the per-coin analysis - without
chaining 2-3 separate yahoo_price + manual reasoning calls.
Returns:
- bitcoin: price, 24h change %, volume, market cap
- dominance: BTC and ETH market-cap share of total crypto
- total_market: total crypto mcap + 24h change + active coin count
- assessment: label (HIGH_RISK / ALT_RISK / ALT_FAVORABLE / OPPORTUNITY_WITH_CAUTION / NEUTRAL) + 1-paragraph reasoning
| read | false | unknown |
| advanced_candle_pattern Advanced candle pattern analysis using multi-timeframe data.
Args:
exchange: Exchange name (BINANCE, KUCOIN, etc.)
base_timeframe: Base timeframe for analysis (5m, 15m, 1h, 4h)
pattern_length: Number of consecutive periods to analyse (2-4)
min_size_increase: Minimum percentage increase in candle size
limit: Maximum number of results to return
| unknown | unknown | unknown |
| stock_options_chain Full options chain (calls + puts) for a US stock symbol and one expiry.
Use this when the user asks "what's the options chain for X?", "show me
AAPL puts expiring next Friday", or wants to inspect bid/ask/IV/volume on
a specific strike. If no expiry is provided, returns the nearest expiry
so Claude can quote it back and ask "want a different one?".
Args:
symbol: US stock symbol — AAPL, NVDA, TSLA, SPY, etc.
expiry: Optional ISO date (YYYY-MM-DD). Must match one of the
`available_expiries` Yahoo returns; otherwise returns an error
with the list of valid dates.
Returns:
- underlying_price, underlying_change_pct
- requested_expiry, available_expiries (list of YYYY-MM-DD)
- call_count, put_count
- calls: list of {strike, last_price, bid, ask, volume,
open_interest, implied_volatility, in_the_money, expiration}
- puts: same shape as calls
| read | false | unknown |
| coin_analysis Get detailed analysis for a specific asset (coin or stock) on specified exchange and timeframe.
This is the canonical single-symbol technical readout (there is no
"get_technical_analysis" or "get_technical_summary" tool — use THIS one).
Use `multi_timeframe_analysis` instead when you need trend alignment
across several timeframes, and `combined_analysis` when you also want
news sentiment + headlines in the same call.
Example: coin_analysis(symbol="BTCUSDT", exchange="BINANCE", timeframe="1h")
Args:
symbol: Bare ticker, no exchange prefix — crypto: "BTCUSDT", "ETHUSDT"; stocks: "COMI" (EGX), "THYAO" (BIST), "600519" (SSE), "300251" (SZSE), "2330" (TWSE), "3105" (TPEX)
exchange: Exchange — crypto: KUCOIN, BINANCE, MEXC; stocks: EGX, BIST, NASDAQ, NYSE, BURSA, HKEX, SSE, SZSE, TWSE, TPEX. If the symbol isn't listed there, the error's `listed_on` field names exchanges that do list it.
timeframe: Time interval (5m, 15m, 1h, 4h, 1D, 1W, 1M)
Returns:
Detailed analysis with all indicators and metrics
| read | false | unknown |
| combined_analysis POWER TOOL: TradingView technical analysis + news sentiment + financial news.
Use this when you want TA AND sentiment AND news for one symbol in a
single call. For indicators only, `coin_analysis` is faster; for
cross-timeframe trend alignment use `multi_timeframe_analysis`.
Example: combined_analysis(symbol="NVDA", exchange="NASDAQ", timeframe="1D")
Args:
symbol: Bare ticker, no exchange prefix ("AAPL", "BTCUSDT", "THYAO", "GDX")
exchange: Exchange (NASDAQ, NYSE, AMEX, NYSEARCA, PCX, BINANCE, KUCOIN, MEXC, BIST, EGX, TWSE, TPEX)
timeframe: Analysis timeframe (5m, 15m, 1h, 4h, 1D, 1W)
| unknown | unknown | unknown |
| volume_breakout_scanner Detect coins with volume breakout + price breakout.
Args:
exchange: Exchange name like KUCOIN, BINANCE, BYBIT, MEXC, etc.
timeframe: One of 5m, 15m, 1h, 4h, 1D, 1W, 1M
volume_multiplier: How many times the volume should be above normal level (default 2.0)
price_change_min: Minimum price change percentage (default 3.0)
limit: Number of rows to return (max 50)
Returns ``list[dict]`` on success, or an error envelope on total upstream
failure (``{"error": {"code": "ALL_BATCHES_FAILED", ...}}``). The empty
list now strictly means "no matches today"; rate-limit cliffs surface
explicitly.
| read | false | unknown |
| walk_forward_backtest_strategy Walk-forward backtest to detect overfitting — validates strategy on unseen data.
Args:
symbol: Yahoo Finance symbol (AAPL, BTC-USD, SPY…)
strategy: rsi | bollinger | macd | ema_cross | supertrend | donchian
| keltner_breakout
(rsi_pullback and triple_ema not supported here — SMA200 warmup
exceeds typical fold size; use run_backtest with period='2y')
period: '1mo', '3mo', '6mo', '1y', '2y' (recommend '2y')
initial_capital: Starting capital per fold in USD (default $10,000)
commission_pct: Per-trade commission % (default 0.1%)
slippage_pct: Per-trade slippage % (default 0.05%)
n_splits: Number of walk-forward folds (default 3, max 10)
train_ratio: Fraction of each fold used for training (default 0.7)
interval: '1d' (daily) or '1h' (hourly)
| unknown | unknown | unknown |
| stock_screener Screen stocks by share type — the API twin of TradingView's
"Common stock" / "Preferred stock" symbol-search filter.
Args:
country: TradingView market name — e.g. america, korea, germany,
brazil, japan, uk, india, turkey, canada, australia, france, hongkong
stock_type: common | preferred
limit: rows to return (max 2000, single upstream request), ranked by market cap descending
exclude_otc: default True — drop OTC listings (foreign companies traded
over-the-counter); "america" otherwise means "US venue", not "US company"
compact: default False — True returns only ticker/symbol/price/currency/
change_percent per row (light payload for bulk price feeds)
sort_by: market_cap (default) | dividend_yield | change | price —
server-side descending sort over the WHOLE market, so e.g.
sort_by=dividend_yield with limit=20 is the market's true top-20
dividend payers, not just the biggest companies re-sorted
Returns:
Envelope dict: total_matches (market-wide count), returned, and rows
of {ticker, symbol, description, exchange, price, open, high, low,
currency, change_percent, dividend_yield, market_cap} — price is the
current/last close; open/high/low are the current session's daily bar. Prices are in the
market's local currency (e.g. KRW for korea).
| read | false | unknown |
| stock_extended_hours Real-time pre-market and after-hours prices for a US stock symbol.
Use this when the user asks about a stock outside the regular 9:30am-4pm
ET session — earnings reactions, overnight news, "what is X doing in
after-hours?", "how did Y open in pre-market?". Returns the most recent
valid print from each session window (pre-market, regular, post-market)
along with computed % changes vs. the previous close and the regular
close, respectively.
During the regular session, post_market will be null (no data yet).
On weekends/holidays, returns whatever's most recent in each window.
Args:
symbol: US stock symbol — AAPL, NVDA, TSLA, SPY, ^GSPC, etc.
Returns:
- pre_market: {price, as_of_utc, change_vs_previous_close_pct} or null
- regular: {price, as_of_utc, change_pct} (consolidated tape close)
- post_market: {price, as_of_utc, change_vs_regular_close_pct} or null
- previous_close, currency, exchange, market_state for context
| read | false | unknown |
| futures_watchlist Return the full categorized list of well-known front-month futures symbols.
Categories: equity_index, energy, metals, agriculture, rates, forex, crypto_futures.
Use these symbols with futures_category_snapshot or coin_analysis for deeper analysis.
| read | false | unknown |
| backtest_strategy Backtest a trading strategy on historical data with institutional-grade metrics.
Args:
symbol: Yahoo Finance symbol (AAPL, BTC-USD, THYAO.IS, ^GSPC)
strategy: rsi | bollinger | macd | ema_cross | supertrend | donchian
| rsi_pullback | keltner_breakout | triple_ema
(rsi_pullback and triple_ema need period >= '1y' for SMA200 warmup)
period: '1mo', '3mo', '6mo', '1y', '2y'
initial_capital: Starting capital in USD (default $10,000)
commission_pct: Per-trade commission % (default 0.1%)
slippage_pct: Per-trade slippage % (default 0.05%)
interval: '1d' (daily) or '1h' (hourly)
include_trade_log: Include full per-trade log (default False)
include_equity_curve: Include equity curve data points (default False)
| unknown | unknown | unknown |
| stock_options_unusual_activity Top strikes by volume / open-interest ratio — institutional positioning signal.
Use this when the user asks "any unusual options activity on X?", "where
is the smart money positioned on NVDA before earnings?", or wants a
V/OI screener for a ticker. A V/OI ratio > 1 means today's volume already
exceeds standing open interest, which classically flags fresh institutional
positioning on a specific strike in a specific direction (call vs put).
Scans the soonest few expirations, filters out illiquid strikes (under
`min_volume`), and returns the top-N sorted by V/OI descending. Also
returns aggregate call vs put volume so Claude can comment on the
overall directional bias.
Args:
symbol: US stock symbol — AAPL, NVDA, TSLA, SPY, META, etc.
top_n: How many strikes to return. Default 10.
min_volume: Filter floor for today's volume — prevents noise from
illiquid strikes with high V/OI ratios. Default 100.
expiries: Number of soonest expirations to scan. Default 4
(typically covers ~1 month of weeklies + monthlies).
Returns:
- underlying_price
- expiries_scanned (list of YYYY-MM-DD)
- total_call_volume, total_put_volume, put_call_volume_ratio
- unusual: list of top-N contracts sorted by V/OI desc, each with
{strike, side (call|put), expiration, volume, open_interest,
v_oi_ratio, last_price, implied_volatility, in_the_money,
strike_vs_spot_pct (moneyness)}
| read | false | unknown |
| futures_market_overview Top futures contracts sorted by trading volume.
Args:
category: all | equity_index | energy | metals | agriculture | rates | forex | crypto_futures
exchanges: us (CME, COMEX, NYMEX, CBOT) | global (adds ICE, EUREX)
limit: max contracts to return (default 30)
volume_min: minimum volume filter (0 = no filter)
Returns:
Dict with total_available count and list of contracts with OHLCV + % change.
| read | false | unknown |
| market_snapshot Global market overview: major indices, top crypto, FX rates, and key ETFs.
Powered by Yahoo Finance.
| unknown | unknown | unknown |
| financial_news Real-time financial news via Marketaux (licensed).
Args:
symbol: Optional symbol filter ("AAPL", "BTC"). None = all news.
category: News category ("crypto", "stocks", "all")
limit: Max number of news items
| unknown | unknown | unknown |
| bollinger_scan Scan for assets with low Bollinger Band Width (squeeze detection). Works with crypto and stocks.
This scans a whole EXCHANGE for squeezes (canonical name is exactly
`bollinger_scan`; there is no "get_bollinger_band_analysis" tool). For
the Bollinger read of ONE symbol, call `coin_analysis` instead.
Example: bollinger_scan(exchange="BINANCE", timeframe="15m", bbw_threshold=0.008)
Args:
exchange: Exchange — crypto: KUCOIN, BINANCE, BYBIT, MEXC; stocks: EGX, BIST, NASDAQ, NYSE, BURSA, HKEX, SSE, SZSE, TWSE, TPEX
timeframe: One of 5m, 15m, 1h, 4h, 1D, 1W, 1M. Typical squeeze thresholds: 15m→0.008, 1h→0.02, 4h→0.04, 1D→0.12
bbw_threshold: Maximum BBW value to filter (default 0.04)
limit: Number of rows to return (max 100)
Returns ``list[dict]`` on success. On ANY failure returns a structured
error envelope ``{"error": {"code": ..., "retryable": ...}}``.
| read | false | unknown |
| market_sentiment News sentiment for stocks and crypto (licensed Marketaux entity sentiment).
Args:
symbol: Asset symbol ("AAPL", "BTC", "ETH", "TSLA")
category: News group to search ("crypto", "stocks", "all")
limit: Max articles to analyse
| read | false | unknown |
| yahoo_price Real-time price quote from Yahoo Finance for any stock, crypto, ETF or index.
Args:
symbol: Yahoo Finance symbol — e.g. AAPL, BTC-USD, SPY, ^GSPC, EURUSD=X, THYAO.IS
| unknown | unknown | unknown |
| stock_prices Current price + daily % change for specific stock symbols.
Args:
tickers: comma-separated EXCHANGE:SYMBOL list (max 2000 — one
upstream request even at full size), e.g.
"NASDAQ:NVDA, NASDAQ:TSLA, KRX:005930". The exchange prefix is
required — the scanner's direct-ticker lookup is exchange-scoped.
Returns:
Envelope dict: rows of {ticker, symbol, description, exchange, price,
open, high, low, currency, change_percent} plus a not_found list naming any requested
ticker the scanner didn't recognize.
| read | false | unknown |
| egx_fibonacci_retracement Fibonacci retracement analysis for EGX stocks.
Args:
symbol: EGX stock symbol (e.g., "COMI", "TMGH", "FWRY")
lookback: Period for swing high/low — "1M", "3M", "6M", "52W", "ALL" (default 52W)
timeframe: Analysis timeframe (5m, 15m, 1h, 4h, 1D, 1W, 1M — default 1D)
| unknown | unknown | unknown |
| multi_agent_analysis Run a multi-agent debate (Technical, Sentiment, Risk) for a specific symbol.
Args:
symbol: Symbol — crypto: "BTCUSDT"; stocks: "COMI" (EGX), "THYAO" (BIST), "600519" (SSE), "300251" (SZSE), "2330" (TWSE), "3105" (TPEX), "GDX" (AMEX)
exchange: Exchange — crypto: KUCOIN, BINANCE, MEXC; stocks: EGX, BIST, NASDAQ, NYSE, AMEX, NYSEARCA, PCX, SSE, SZSE, TWSE, TPEX
timeframe: Time interval (5m, 15m, 1h, 4h, 1D, 1W)
Returns:
A structured debate between 3 AI agents culminating in a final trading decision.
| read | false | unknown |
| egx_stock_screener Production stock ranking engine for EGX — finds strong stocks with actionable setups.
Args:
timeframe: One of 5m, 15m, 1h, 4h, 1D, 1W, 1M (default 1D)
min_score: Minimum stock score to include (0-100, default 55)
index_filter: Filter by index — EGX30, EGX70, EGX100, SHARIAH33, EGX35LV, TAMAYUZ
limit: Number of results (max 50)
| unknown | unknown | unknown |
| compare_strategies Run all 9 strategies (RSI, Bollinger, MACD, EMA Cross, Supertrend, Donchian, RSI Pullback, Keltner Breakout, Triple EMA) and return a ranked leaderboard.
Args:
symbol: Yahoo Finance symbol (AAPL, BTC-USD, SPY…)
period: '1mo', '3mo', '6mo', '1y', '2y'
(period >= '1y' recommended so rsi_pullback and triple_ema can
complete SMA200 warmup; otherwise they contribute zero trades)
initial_capital: Starting capital in USD (default $10,000)
interval: '1d' (daily) or '1h' (hourly)
| unknown | unknown | unknown |
| top_losers Return top losers for an exchange and timeframe. Supports crypto (KUCOIN, BINANCE, MEXC) and stocks (EGX, BIST, NASDAQ).
Returns ``list[dict]`` on success. On ANY failure returns a structured
error envelope ``{"error": {"code": ..., "retryable": ...}}``.
| read | false | unknown |
| egx_index_analysis Analyse an EGX index showing constituent performance with full indicators.
Args:
index: EGX30, EGX70, EGX100, SHARIAH33, EGX35LV, TAMAYUZ
timeframe: One of 5m, 15m, 1h, 4h, 1D, 1W, 1M (default 1D)
limit: Number of stocks to show in detail (max 100)
| read | false | unknown |
| smart_volume_scanner Smart volume + technical analysis combination scanner.
Args:
exchange: Exchange name
min_volume_ratio: Minimum volume multiplier (default 2.0)
min_price_change: Minimum price change percentage (default 2.0)
rsi_range: "oversold" (<30), "overbought" (>70), "neutral" (30-70), "any"
limit: Number of results (max 30)
Returns ``list[dict]`` on success. On ANY failure returns a structured
error envelope ``{"error": {"code": ..., "retryable": ...}}``.
| read | false | unknown |
| egx_sector_scan Scan EGX stocks by sector. Shows available sectors if none specified.
Args:
sector: Sector name (banks, healthcare_and_pharma, real_estate, etc.)
Leave empty to list all sectors.
timeframe: One of 5m, 15m, 1h, 4h, 1D, 1W, 1M
limit: Max results per sector (max 50)
| read | false | unknown |
| futures_top_movers Futures contracts with the biggest percentage moves today.
Args:
direction: gainers | losers
exchanges: us | global
limit: max results
volume_min: minimum volume filter (default 10, filters illiquid contracts)
Returns:
List of futures ranked by % change with OHLCV data.
| read | false | unknown |
| rating_filter Filter coins by Bollinger Band rating.
Args:
exchange: Exchange name like KUCOIN, BINANCE, BYBIT, MEXC, etc.
timeframe: One of 5m, 15m, 1h, 4h, 1D, 1W, 1M
rating: BB rating (-3 to +3): -3=Strong Sell, -2=Sell, -1=Weak Sell, 1=Weak Buy, 2=Buy, 3=Strong Buy
limit: Number of rows to return (max 50)
Returns ``list[dict]`` on success. On ANY failure returns a structured
error envelope ``{"error": {"code": ..., "retryable": ...}}``.
| read | false | unknown |
| egx_trade_plan Generate a full trade plan for a specific EGX stock.
Args:
symbol: EGX stock symbol (e.g., "COMI", "TMGH", "FWRY")
timeframe: One of 5m, 15m, 1h, 4h, 1D, 1W, 1M (default 1D)
| unknown | unknown | unknown |
- repohttps://github.com/atilaahmettaner/tradingview-mcp
- homepagehttps://pro.cryptosieve.com
- licenseMIT
- adoption3980 stars · 865 forks
The access this server can exercise, inferred from its verified tools — not a declared OAuth scope.
Add the “as seen on MCPExplorer” badge to your README.
This is one server. A loadout combines the right servers, governance, and proven plays for a whole job — assembled deliberately, not tool-dumped.
Explore loadouts →