FastMCP server for TradingView data scraping with historical OHLCV, news, options, and technical indicators
Mixed quality across 11 tools. Strong points: consistent verb-first naming, most tools have descriptions and schemas. Major gaps: inconsistent parameter descriptions, output schemas largely undocumented, missing error handling guidance, no tool annotations. Transport is STDIO only (hard cap 50), which severely limits protocol readiness. The server follows basic MCP structure but lacks production-grade refinements like proper error categorization, response shaping, and pagination metadata.
Fetch real-time candle data with streamed technical indicators for a given symbol.
Fetch historical OHLCV data with technical indicators. Supports stocks, indices, crypto, options (e.g. 'NSE:NIFTY260219C24000'), and futures. Use this to identify trends and patterns across any TradingView-supported asset. NOTE: When fetching historical data for Indices (like NIFTY), the volume represents the underlying market activity, not the option lot volume seen in NSE OI tools.
Scrape user-published trading ideas from TradingView community.
Get community discussions, questions, and sentiment from TradingView Minds.
Fetch full news article content using story IDs from headlines.
Scrape real-time news headlines from TradingView. Use this to identify recent events affecting a specific symbol.
Tool get_all_indicators has no visible input schema definition. Cannot determine required parameters, types, or constraints. LLM cannot invoke this tool correctly.
No tools document their output schema. LLMs cannot know what fields to expect in responses, forcing them to guess or hallucinate downstream field names. This breaks tool chaining and increases errors.
No error handling guidance in any tool description. Errors return bare stack traces or status codes. Descriptions should explain what to do if symbol not found (try search?), API rate-limited (retry with backoff?), or data unavailable.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-22 | D | 55 | <=2025-11-25 | v2 |
| 2026-03-09 | F | 11 | - | v1 |
Fetch real-time Option Chain data with Greeks analysis (Delta, Gamma, Theta, Vega, Rho, IV). This tool uses TradingView data and can work with exchanges/symbols supported by TradingView.
Fetch real-time Option Chain Open Interest (OI) and Put-Call Ratio (PCR) for Indian indices. Supports only NSE and BSE in this tool, with exchange-aware symbol validation. Returns strike-wise combined CE/PE OI details (not Greeks).
Retrieve a list of all supported stock/crypto exchanges on TradingView. Use this if you are unsure about the correct exchange name for a symbol.
Retrieve a list of all valid timeframe strings supported by the server.
Retrieve a list of all technical indicators supported by the historical data tool. These can be used in the 'indicators' list parameter of get_historical_data.
get_news_content and get_all_indicators have minimal descriptions (55-65 chars, below baseline 194). Descriptions are too vague for LLM tool selection and fail to explain when/why to use them.
Multiple tools accept date-time parameters but describe format inconsistently or lack validation constraints. get_news_headlines/get_news_content use 'DD-MM-YYYY HH:MM', get_option_chain_oi uses 'YYYY-MM-DD' (ISO). No regex patterns or exemplars in code to validate.
Numeric parameters lack explicit min/max bounds in descriptions. get_historical_data 'numb_price_candles' accepts 1-5000 but description doesn't state bounds. Agents may pass invalid values. get_option_chain_greeks/oi ITM/OTM default to 5 but description says max 20 without stating range.
No tool annotations (readOnlyHint, destructiveHint, idempotentHint) present. All 11 tools are read-only, but this is not declared in schema. Agents cannot reason about safe retry semantics or side effects.
Discovery tools (list_available_exchanges, list_supported_indicators, list_available_timeframes) do not document their output structure. Agents need to know format (array of strings? array of objects? what fields?) to use them as planning aids.
Pagination not addressed. get_news_headlines, get_ideas potentially return large result sets but lack limit and offset/cursor parameters in visible schema. Response structure doesn't indicate total count or next_cursor.