Skip to main content
Glama
CenblueOne

tradingview-mcp-py

by CenblueOne

J-SQUAD TradingView MCP โ€” Python (tradingview-mcp-py)

30 tools ยท 5 modules โ€” MCP server for stock analysis (TradingView Screener API, Yahoo Finance, IDX/BEI, backtesting, news sentiment, trade math). Lean edition, no CDP โ€” no TradingView Desktop / Chrome required, so it's VPS-compatible.

Built by CenblueOne as part of the J-SQUAD system (IDX trading bot).

๐Ÿค– For AI agents / harnesses (Claude Code, Hermes, opencode, Cursor, Grok, etc.): read AGENTS.md โ€” architecture, how to run/test, tool inventory, and mandatory rules (never upgrade mcp, never use "command": "python", etc.).


โœจ Highlights

  • โœ… No TradingView Desktop โ€” uses TradingView public Screener API + Yahoo Finance (runs headless on servers/VPS)

  • โœ… IDX-ready โ€” idx_* tools auto-append .JK (BBRI โ†’ BBRI.JK)

  • โœ… Graceful degradation โ€” if a library is missing, only that module's tools are disabled

  • โœ… Tested โ€” pytest 13 tests passed (helpers + server import + market_cap mocked)

  • โœ… Multi-agent ready โ€” one shared venv across many agents; per-agent config files; stdio (no port conflicts)


Related MCP server: Trading MCP Server

โš ๏ธ Agent / AI Guide โ€” Check FIRST Before Installing / Configuring

Read this section every time an agent (Claude Code, Hermes, opencode, Grok, etc.) wants to install / configure / upgrade this server. This server can be shared by MANY agents on one machine โ€” the most common mistakes come from unnecessary re-installs or using "command": "python".

Mandatory checklist:

  1. Check whether it's already installed โ€” don't blindly reinstall:

    # venv exists?
    Test-Path "<REPO_DIR>\venv\Scripts\python.exe"
    # mcp 1.x installed? (MUST be < 2.0.0)
    & "<REPO_DIR>\venv\Scripts\python.exe" -c "import importlib.metadata as m; print(m.version('mcp'))"

    If it exists and mcp is 1.x โ†’ STOP, don't install anything.

  2. NEVER upgrade / reinstall mcp. The server uses the mcp.server.fastmcp.FastMCP API which only exists in mcp 1.x. mcp 2.x completely reworked the API โ†’ the server fails to start. requirements.txt already pins mcp>=1.2.0,<2.0.0.

  3. NEVER use "command": "python" / "command": "python3". Always point to the venv python with an absolute path โ€” PATH differs per agent (e.g. store-alias on Windows, or python pointing to a different interpreter without dependencies). Venv path:

    <REPO_DIR>\venv\Scripts\python.exe
  4. NEVER reinstall / upgrade while another agent is running. The single venv is shared. pip install / pip upgrade in the middle mutates the dependencies used by all agents โ†’ other agents break (real case: mcp bumped to 2.x removed FastMCP). Install ONCE via install.bat.

  5. One venv + one server.py โ†’ many separate config files. Each agent has its own MCP config file; paste the same entry (see mcp-config.example.json) into each file. Don't overwrite another agent's config.

  6. Verify after configuring โ€” test 1 tool from EACH agent before using together:

    # import must succeed without errors (run from the project folder)
    cd "<REPO_DIR>"
    & "<REPO_DIR>\venv\Scripts\python.exe" -c "import server; print('server OK')"

    Or call a tool directly from each agent's chat (idx_price BBRI). Don't continue if any agent still errors.


๐Ÿ“ฆ Modules & Tools (30 total)

Technical Analysis โ€” 6 tools (tradingview-ta)

Tool

Description

get_ta

Full TA: RSI, MACD, BB, EMA, ADX, Stoch, CCI

get_ta_bulk

TA for many symbols (max 25, rate-limited)

get_mtf

Multi-timeframe: 1h + 4h + 1d + 1w alignment

get_candlestick

Detect 15 candlestick patterns

get_bollinger

Bollinger Band: position, bandwidth, squeeze

screen_stocks

Screen stocks by TA signal + RSI filter

Yahoo Finance โ€” 4 tools (yfinance)

Tool

Description

yf_price

Realtime price (AAPL, BTC-USD, BBRI.JK, ^JKSE)

get_market_cap

Market cap + 52w high/low + TA context

market_snapshot

Global snapshot: S&P500, NASDAQ, VIX, IHSG, BTC, ETH, GOLD, OIL, DXY

yf_ohlcv

Historical OHLCV (configurable period + interval)

IDX / BEI โ€” 11 tools

Tool

Description

idx_price

BEI stock price (auto .JK)

idx_ta

BEI stock TA via TradingView Screener

idx_mtf

BEI stock MTF

idx_market

IHSG snapshot + top 10 LQ45 + gainers/losers

idx_screener

Screen BEI stocks by movement & volume

idx_signals

BUY/SELL/HOLD signals for a BEI stock list

idx_backtest

Backtest strategies on BEI stocks

idx_deep_analysis

100pt stock score (trend/momentum/volatility)

morning_brief_idx

Morning brief: scan BEI watchlist, rank TA + price

combined_analysis

TA + Price + Sentiment โ†’ STRONG BUY/SELL

financial_news

Live headlines (Yahoo, CNBC, MarketWatch)

Backtesting โ€” 3 tools (services/backtest_service.py)

Tool

Description

backtest_strategy

1 strategy, institutional metrics

compare_strategies

Compare 9 strategies, ranked by total return

walk_forward_backtest

Walk-forward, overfitting detection

Trading Utilities & Sentiment โ€” 6 tools

Tool

Description

market_sentiment

Sentiment from Yahoo News for a symbol

position_size

Lot size by risk management

rr_calc

Risk:Reward ratio from entry/SL/TP

journal_add

Log a trade to the local journal

journal_list

Trade journal history

market_sessions

Global trading sessions (WIB / UTC+7)


๐Ÿ”ง Requirements

Python >= 3.11         (tested on 3.11)
mcp >= 1.2.0, < 2.0.0  (MUST be 1.x โ€” server uses mcp.server.fastmcp.FastMCP)
tradingview-ta >= 3.3.0
yfinance >= 0.2.40
pandas >= 2.0.0
numpy >= 1.24.0
feedparser >= 6.0.0
requests >= 2.31.0

Not needed websocket-client / Chrome โ€” the CDP module (TradingView Desktop) was removed on 03 Jul 2026.


๐Ÿš€ Installation

install.bat (Windows) or the manual commands below โ€” run ONCE. After installation, replace every <REPO_DIR> in the config examples with the absolute path where you cloned this repo on your machine.

Windows

install.bat

Linux / macOS (VPS-compatible)

python3 -m venv venv
venv/bin/pip install -r requirements.txt

Verify (all OS)

venv/Scripts/python server.py    # Windows
venv/bin/python server.py        # Linux/macOS โ€” MCP stdio server, waits for JSON-RPC on stdin

NEVER run a bare pip install mcp / upgrade mcp. requirements.txt pins mcp>=1.2.0,<2.0.0 โ€” mcp 2.x completely reworked the API and is incompatible.

Quick smoke test (no network)

venv/Scripts/pip install pytest          # Windows
venv/bin/pip install pytest              # Linux/macOS
venv/Scripts/python -m pytest            # Windows โ†’ 13 passed
venv/bin/python -m pytest                # Linux/macOS โ†’ 13 passed

๐Ÿค– Per-Agent Configuration (Universal โ€” stdio)

IMPORTANT: each agent has its own config file. Don't merge multiple agents into one file, and don't overwrite another agent's config.

Claude Code / Grok

~/.claude.json (global) or .mcp.json (project root) โ†’ mcpServers:

{
  "mcpServers": {
    "tradingview-mcp-py": {
      "command": "<REPO_DIR>\\venv\\Scripts\\python.exe",
      "args": ["<REPO_DIR>\\server.py"],
      "env": {}
    }
  }
}

Hermes Agent

~/.hermes/config.yaml โ†’ mcp_servers:

mcp_servers:
  tradingview-mcp-py:
    command: "<REPO_DIR>\\venv\\Scripts\\python.exe"
    args: ["<REPO_DIR>\\server.py"]
    type: stdio

opencode

opencode.json (project root) โ†’ mcp:

{
  "mcp": {
    "tradingview-mcp-py": {
      "type": "local",
      "command": ["<REPO_DIR>\\venv\\Scripts\\python.exe", "<REPO_DIR>\\server.py"]
    }
  }
}

Absolute path is MANDATORY for command (venv python) and args (server.py). Don't use "command": "python". Ready-to-use example: mcp-config.example.json.

Verify

After registering, call a tool from each agent's chat, e.g.:

get_ta BBRI exchange=IDX screener=indonesia
idx_deep_analysis TLKM
morning_brief_idx

๐Ÿ‘ฅ Multi-Agent โ€” Several Agents on 1 Machine

Same pattern as other MCP servers in this workspace (yfinance-mcp-final, invezgo-mcp):

Rule

Explanation

1 venv + 1 server.py โ†’ N separate configs

All agents use the same venv & server, but each agent has its own config

stdio

Each agent spawns its own Python process โ†’ no port conflicts, no stdout contention

Absolute path

command โ†’ venv\Scripts\python.exe; args โ†’ absolute path to server.py

mcp pinned to 1.x

requirements.txt pins mcp>=1.2.0,<2.0.0. Don't run bare pip install mcp / upgrade

Install once

Don't reinstall while another agent is running โ€” it mutates shared dependencies

Check first

Before installing, run the checklist at the top of this README

Most common error scenarios:

  1. All tools error "unknown function" / import fails โ†’ venv was upgraded to mcp 2.x or system python was used. Check: venv\Scripts\python -c "import importlib.metadata as m; print(m.version('mcp'))" โ†’ must be 1.x.

  2. "python: can't open file 'server.py'" โ†’ use an absolute path, not relative.

  3. Agent A works, agent B errors โ†’ usually agent B uses "command": "python" pointing to a different Python / one without dependencies. Point all agents to the same venv.

  4. Yahoo rate limit (429) across 4 agents at once โ†’ expected; raise the requests.Session retry in server.py or limit polling frequency.


๐ŸŒ All AI Clients (Model-Agnostic)

This server uses MCP stdio transport โ€” usable by any AI model / client that supports MCP, not just one vendor:

Client

How to register

Claude Code / Grok

mcpServers in .mcp.json (project) / ~/.claude.json (global) โ€” absolute path to venv\Scripts\python.exe

Claude Desktop

Add the block to claude_desktop_config.json (see mcp-config.example.json)

Hermes Agent

mcp_servers in ~/.hermes/config.yaml โ€” absolute path to venv python

opencode

mcp in opencode.json โ€” absolute path to venv python

Cursor / VS Code

Add to mcp.json / MCP settings โ€” absolute path to venv python

ChatGPT / others

If the client supports MCP stdio, point it to venv\Scripts\python.exe server.py

All clients above call the same tools (get_ta, idx_deep_analysis, morning_brief_idx, etc.). Nothing is hardcoded to a specific model.

Multi-agent golden rule: one shared venv, but separate config per agent + absolute path. Don't merge all agents into a single config file.


๐Ÿ’ก Usage Examples

Analyze BBRI:

Analyze BBRI on IDX โ€” TA + sentiment + price

โ†’ combined_analysis(symbol="BBRI", exchange="IDX", screener="indonesia")

Morning scan IDX:

Run morning brief for IDX

โ†’ morning_brief_idx()

Backtest:

Backtest TLKM with supertrend strategy for 1 year

โ†’ idx_backtest(symbol="TLKM", strategy="supertrend", period="1y")

Position sizing:

Balance 10k, risk 1%, SL 50 pips, gold

โ†’ position_size(balance=10000, risk_pct=1, sl_pips=50, instrument="gold")


๐Ÿงฉ Module Dependency Map

TA tools        โ†’ tradingview-ta
YF tools        โ†’ yfinance
IDX tools       โ†’ tradingview-ta + yfinance
News/Sentiment  โ†’ feedparser + yfinance
Backtest        โ†’ services/backtest_service.py (pandas/numpy)

All modules degrade gracefully โ€” missing library โ†’ only that module's tools are off.


๐Ÿงช Testing

venv\Scripts\pip install pytest
venv\Scripts\python -m pytest    # 13 passed (helpers, server import, market_cap mocked)

Tests don't need network (mock yfinance / tradingview_ta).


๐Ÿ”— Part of J-SQUAD

The J-SQUAD IDX bot system:

  • ARA Hunter โ€” ARA detection

  • Bandar Hunter โ€” institutional accumulation detection

  • Signal Aggregator โ€” signal aggregation

  • KINARA ENGINE โ€” TradingView webhook โ†’ Telegram


๐Ÿ“„ License

See the LICENSE file โ€” MIT. Free to use, fork, and develop. For security policy, see SECURITY.md.

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    D
    maintenance
    The most complete AI-powered trading toolkit for Claude and MCP clients, offering backtesting, live sentiment, Yahoo Finance, and 30+ technical analysis tools in one MCP server.
    MIT
  • A
    license
    A
    quality
    F
    maintenance
    A comprehensive MCP server for stock analysis and trading insights, including stock screening, fundamental analysis, insider trading, options analysis, social media research, and news analysis.
    10
    75
    MIT
  • F
    license
    Not graded
    quality
    B
    maintenance
    A comprehensive MCP server that integrates TradingView Desktop automation, screener API, Yahoo Finance, IDX/BEI tools, backtesting, news sentiment, trade math, and market sessions. It enables traders to perform technical analysis, backtest strategies, manage positions, and automate TradingView tasks through natural language.
    -
  • F
    license
    B
    quality
    D
    maintenance
    A TradingView-style market research and charting MCP server that provides tools for market data, indicators, watchlists, and local HTML chart rendering without scraping TradingView.
    9
    -