Skip to main content
Glama
rkilchmn

TradingView MCP

by rkilchmn

TradingView MCP

Model Context Protocol(MCP) 서버로, 사용자 컴퓨터의 TradingView Desktop과 연동됩니다: 차트 읽기, 아침 브리핑 실행, Pine Script 개발, Chrome DevTools Protocol(localhost:9222)을 통한 워크플로 자동화를 지원합니다.

John Anthony이 유지보수합니다. 이 프로젝트는 @tradesdontlie의 상위 프로젝트 tradingview-mcp를 확장하여 아침 브리핑 워크플로, 규칙 설정(rules.json), 그리고 TradingView Desktop v2.14+에서의 tv_launch 버그 수정을 포함합니다.

[!WARNING] TradingView Inc. 또는 Anthropic과 제휴 관계가 아닙니다. 이 도구는 Chrome DevTools Protocol을 통해 로컬에서 실행 중인 TradingView Desktop 앱에 연결합니다. 사용 전에 면책 조항을 검토하세요.

[!IMPORTANT] 유효한 TradingView 구독이 필요합니다. 이 도구는 TradingView의 유료 서비스를 우회하지 않습니다. 사용자 컴퓨터에서 이미 실행 중인 TradingView Desktop 앱을 읽고 제어할 뿐입니다.

[!NOTE] 모든 데이터 처리는 로컬에서 이루어집니다. 어떤 것도 외부로 전송되지 않습니다. TradingView 데이터가 사용자 컴퓨터를 벗어나지 않습니다.


이 포크의 새로운 기능

기능

설명

morning_brief

워치리스트를 스캔하고 모든 지표를 읽어 구조화된 데이터를 반환하여 Claude가 세션 바이어스를 생성하도록 하는 단일 명령어

session_save / session_get

일일 브리핑을 ~/.tradingview-mcp/sessions/에 저장하여 오늘과 어제를 비교할 수 있게 함

rules.json

거래 규칙을 한 번만 작성 — 바이어스 기준, 리스크 규칙, 워치리스트. 아침 브리핑이 매일 자동으로 적용합니다

실행 버그 수정

TradingView Desktop v2.14+에서 tv_launch 호환성 수정

tv brief CLI

터미널에서 한 단어로 아침 브리핑 실행


Related MCP server: TradingView MCP Bridge

원클릭 설정

이 내용을 Claude Code에 붙여넣으면 모든 것이 처리됩니다:

Set up TradingView MCP for me. 
Clone https://github.com/anthonyjohn17/tradingview-mcp.git to ~/tradingview-mcp, run npm install, then add it to my MCP config at ~/.claude/.mcp.json (merge with any existing servers, don't overwrite them). 
The config block is: { "mcpServers": { "tradingview": { "command": "node", "args": ["/Users/YOUR_USERNAME/tradingview-mcp/src/server.js"] } } } — replace YOUR_USERNAME with my actual username.
Then copy rules.example.json to rules.json and open it so I can fill in my trading rules.
Finally restart and verify with tv_health_check.

또는 아래 수동 단계를 따르세요.


사전 요구 사항

  • TradingView Desktop 앱 (실시간 데이터에는 유료 구독 필요)

  • Node.js 18 이상

  • Claude Code (MCP 도구용) 또는 모든 터미널 (CLI용)

  • macOS, Windows, Linux


빠른 시작

1. 클론 및 설치

git clone https://github.com/anthonyjohn17/tradingview-mcp.git ~/tradingview-mcp
cd ~/tradingview-mcp
npm install

2. 규칙 설정

cp rules.example.json rules.json

rules.json을 열고 다음을 입력하세요:

  • 워치리스트 (매일 아침 스캔할 심볼)

  • 바이어스 기준 (사용자에게 무엇이 상승/하락/중립인지 판단하는 기준)

  • 리스크 규칙 (매 세션 전에 Claude가 확인해야 하는 규칙)

3. CDP로 TradingView 실행

TradingView은 디버그 포트가 활성화된 상태로 실행되어야 합니다.

Mac:

./scripts/launch_tv_debug_mac.sh

Windows:

scripts\launch_tv_debug.bat

Linux:

./scripts/launch_tv_debug_linux.sh

또는 설정 후 MCP 도구 사용: "tv_launch를 사용하여 디버그 모드로 TradingView를 시작해"

4. Claude Code에 추가

~/.claude/.mcp.json에 추가하세요 (기존 서버와 병합):

{
  "mcpServers": {
    "tradingview": {
      "command": "node",
      "args": ["/Users/YOUR_USERNAME/tradingview-mcp/src/server.js"]
    }
  }
}

YOUR_USERNAME을 실제 사용자 이름으로 바꾸세요. Mac에서 확인: echo $USER

SSE 전송 (대안)

stdio 대신 HTTP/SSE로 MCP 서버를 실행:

SSE 서버 시작:

# Mac/Linux
TRANSPORT=sse PORT=3000 node src/server.js

# Windows
set TRANSPORT=sse
node src/server.js

실행 스크립트:

# Mac/Linux - custom port
./scripts/launch_mcp_sse.sh 8080

# Windows - custom port
scripts\launch_mcp_sse.bat 8080

SSE로 연결하도록 Claude Code 구성:

{
  "mcpServers": {
    "tradingview": {
      "url": "http://127.0.0.1:3000/sse"
    }
  }
}

SSE 서버는 기본적으로 http://127.0.0.1:3000/sse에서 수신합니다. PORT 환경 변수로 포트를 변경할 수 있습니다.

5. 확인

Claude Code를 재시작한 후 물어보세요: "tv_health_check를 사용하여 TradingView가 연결되었는지 확인해줘"

6. 첫 아침 브리핑 실행

Claude에게 물어보세요: "morning_brief를 실행하고 내 세션 바이어스를 알려줘"

또는 터미널에서:

npm link  # install tv CLI globally (one time)
tv brief

아침 브리핑 워크플로

이 기능이 이 도구를 단순한 툴킷에서 일상 습관으로 바꿔줍니다.

매 세션 전:

  1. TradingView이 열려 있어야 함 (디버그 포트로 실행)

  2. 터미널에서 tv brief 실행 (또는 Claude에게 "morning_brief 실행" 요청)

  3. Claude가 워치리스트의 모든 심볼을 스캔하고, 지표 값을 읽고, rules.json 기준을 적용하여 다음을 출력:

BTCUSD  | BIAS: Bearish  | KEY LEVEL: 94,200  | WATCH: RSI crossing 50 on 4H
ETHUSD  | BIAS: Neutral  | KEY LEVEL: 3,180   | WATCH: Ribbon direction on daily
SOLUSD  | BIAS: Bullish  | KEY LEVEL: 178.50  | WATCH: Hold above 20 EMA

Overall: Cautious session. BTC leading bearish, SOL the exception — watch for divergence.
  1. 저장: "이 브리핑 저장해" (session_save 사용)

  2. 다음 날 아침 비교: "어제 세션 가져와" (session_get 사용)


이 도구가 하는 일

  • 아침 브리핑 — 워치리스트 스캔, 지표 읽기, 규칙 적용, 세션 바이어스 출력

  • Pine Script 개발 — AI로 스크립트 작성, 주입, 컴파일, 디버그

  • 차트 탐색 — 심볼, 타임프레임 변경, 날짜로 이동, 지표 추가/제거

  • 시각적 분석 — 지표 값, 가격 레벨, 커스텀 지표의 그려진 레벨 읽기

  • 차트 그리기 — 추세선, 수평선, 사각형, 텍스트

  • 알림 관리 — 가격 알림 생성, 목록, 삭제

  • 리플레이 연습 — 과거 바를 단계별로 이동하며 P&L 추적으로 진입/청산 연습

  • 스크린샷 — 차트 상태 캡처

  • 멀티 패널 레이아웃 — 패널별 다른 심볼로 2x2, 3x1 그리드

  • 데이터 스트리밍 — 모니터링 스크립트용 라이브 차트의 JSONL 출력

  • CLI 접근 — 모든 도구는 tv 명령어로도 사용 가능, 파이프 가능한 JSON 출력


Claude가 어떤 도구를 사용할지 아는 방법

Claude는 이 프로젝트에서 작업할 때 CLAUDE.md를 자동으로 읽습니다. 여기에 전체 의사결정 트리가 포함되어 있습니다.

사용자 말...

Claude가 사용하는 도구...

"아침 브리핑 실행해"

morning_brief → 규칙 적용 → session_save

"어제 내 바이어스가 뭐였지?"

session_get

"내 차트에 뭐가 있어?"

chart_get_state → data_get_study_values → quote_get

"전체 분석 해줘"

quote_get → data_get_study_values → data_get_pine_lines → data_get_pine_labels → capture_screenshot

"BTCUSD 일봉으로 전환해"

chart_set_symbol → chart_set_timeframe

"다음에 대한 Pine Script 작성해..."

pine_set_source → pine_smart_compile → pine_get_errors

"3월 1일부터 리플레이 시작해"

replay_start → replay_step → replay_trade

"4개 차트 그리드 설정해"

pane_set_layout → pane_set_symbol

"94200에 레벨 그려"

draw_shape (horizontal_line)


도구 참조 (81개 MCP 도구)

아침 브리핑 (이 포크의 새로운 기능)

도구

설명

morning_brief

워치리스트 스캔, 지표 읽기, 세션 바이어스용 구조화된 데이터 반환. rules.json을 자동으로 읽습니다.

session_save

생성된 브리핑을 ~/.tradingview-mcp/sessions/YYYY-MM-DD.json에 저장

session_get

오늘의 브리핑 검색 (오늘이 아직 저장되지 않은 경우 어제 것)

차트 읽기

도구

사용 시점

출력 크기

chart_get_state

첫 호출 — 심볼, 타임프레임, 모든 지표 이름 + ID 가져오기

~500B

data_get_study_values

모든 지표에서 현재 RSI, MACD, BB, EMA 값 읽기

~500B

quote_get

최신 가격, OHLC, 거래량 가져오기

~200B

data_get_ohlcv

가격 바 가져오기. summary: true 사용으로 간결한 통계

500B (요약) / 8KB (100개 바)

커스텀 지표 데이터 (Pine 드로잉)

표시된 Pine 지표에서 line.new(), label.new(), table.new(), box.new() 출력 읽기.

도구

사용 시점

data_get_pine_lines

수평 가격 레벨 (지지/저항, 세션 레벨)

data_get_pine_labels

텍스트 주석 + 가격 ("PDH 24550", "Bias Long")

data_get_pine_tables

데이터 테이블 (세션 통계, 분석 대시보드)

data_get_pine_boxes

{high, low} 쌍으로 된 가격 구역

특정 지표를 대상으로 하려면 항상 study_filter를 사용하세요: study_filter: "MyIndicator".

차트 제어

도구

설명

chart_set_symbol

티커 변경 (BTCUSD, AAPL, ES1!, NYMEX:CL1!)

chart_set_timeframe

해상도 변경 (1, 5, 15, 60, D, W, M)

chart_set_type

스타일 변경 (Candles, HeikinAshi, Line, Area, Renko)

chart_manage_indicator

지표 추가/제거. 전체 이름 사용: "RSI"가 아닌 "Relative Strength Index"

chart_scroll_to_date

날짜로 이동 (ISO: "2025-01-15")

indicator_set_inputs / indicator_toggle_visibility

지표 설정 변경, 표시/숨기기

Pine Script 개발

도구

단계

pine_set_source

1. 코드를 편집기에 주입

pine_smart_compile

2. 자동 감지 + 오류 확인으로 컴파일

pine_get_errors

3. 컴파일 오류가 있으면 읽기

pine_get_console

4. log.info() 출력 읽기

pine_save

5. TradingView 클라우드에 저장

pine_analyze

오프라인 정적 분석 (차트 불필요)

pine_check

서버 측 컴파일 확인 (차트 불필요)

리플레이 모드

도구

단계

replay_start

특정 날짜에 리플레이 진입

replay_step

한 바 전진

replay_autoplay

자동 진행 (속도는 ms 단위)

replay_trade

매수/매도/포지션 청산

replay_status

포지션, P&L, 날짜 확인

replay_stop

실시간으로 복귀

멀티 패널, 알림, 드로잉, UI

도구

기능

pane_set_layout

그리드 변경: s, 2h, 2v, 2x2, 4, 6, 8

pane_set_symbol

아무 창에나 심볼 설정

draw_shape

수평선, 추세선, 사각형, 텍스트 그리기

alert_create / alert_list / alert_delete

가격 알림 관리

batch_run

여러 심볼/시간대에 걸쳐 작업 실행

watchlist_get / watchlist_add

관심목록 읽기/수정

capture_screenshot

스크린샷 (영역: 전체, 차트, 전략 테스터)

tv_launch / tv_health_check

TradingView 실행 및 연결 확인


CLI 명령어

tv brief                           # run morning brief
tv session get                     # get today's saved brief
tv session save --brief "..."      # save a brief

tv status                          # check connection
tv quote                           # current price
tv symbol BTCUSD                   # change symbol
tv ohlcv --summary                 # price summary
tv screenshot -r chart             # capture chart
tv pine compile                    # compile Pine Script
tv pane layout 2x2                 # 4-chart grid
tv stream quote | jq '.close'      # monitor price ticks

전체 명령어 목록: tv --help


문제 해결

문제

해결 방법

cdp_connected: false

TradingView가 --remote-debugging-port=9222로 실행되지 않았습니다. 시작 스크립트를 사용하세요.

ECONNREFUSED

TradingView가 실행 중이 아니거나 포트 9222가 차단되었습니다.

MCP 서버가 Claude Code에 표시되지 않음

~/.claude/.mcp.json 구문을 확인하고 Claude Code를 다시 시작하세요.

tv 명령어를 찾을 수 없음

프로젝트 디렉터리에서 npm link를 실행하세요.

morning_brief — "rules.json을 찾을 수 없음"

cp rules.example.json rules.json을 실행하고 내용을 채우세요.

morning_brief — 관심목록이 비어 있음

rules.json의 watchlist 배열에 심볼을 추가하세요.

도구가 오래된 데이터를 반환함

TradingView가 아직 로딩 중입니다 — 몇 초 기다리세요.

Pine 에디터 도구 실패

Pine 에디터 패널을 먼저 여세요: ui_open_panel pine-editor open


아키텍처

Claude Code  ←→  MCP Server (stdio or SSE)  ←→  CDP (port 9222)  ←→  TradingView Desktop (Electron)
  • 기존 도구 78개 + 모닝 브리핑 도구 3개 = 총 81개 MCP 도구

  • 전송: stdio(기본값) 또는 SSE(TRANSPORT=sse)를 통한 MCP

  • 연결: localhost:9222의 Chrome DevTools 프로토콜

  • 외부 네트워크 호출 없음 — 모든 것이 로컬에서 실행됨

  • 원본 외 추가 종속성 없음

SSE 전송

stdio 대신 HTTP/SSE로 서버를 실행하세요:

TRANSPORT=sse node src/server.js

서버는 기본적으로 http://127.0.0.1:3000/sse에서 수신합니다. 다음으로 재정의하세요:

TRANSPORT=sse PORT=8080 HOST=0.0.0.0 node src/server.js

SSE로 연결하도록 Claude Code를 구성하세요:

{
  "mcpServers": {
    "tradingview": {
      "url": "http://127.0.0.1:3000/sse"
    }
  }
}

크레딧

  • 업스트림: @tradesdontlie의 tradingview-mcp — 원본 MCP 브리지이자 기반입니다.

  • 이 포크: John Anthony — 모닝 브리핑, 세션 도우미, rules.json, 최신 TradingView 데스크톱 빌드용 실행 수정.

업스트림이 유용하다면 저장소에 스타를 남겨주세요.


면책 조항

이 프로젝트는 개인적, 교육적, 연구 목적으로만 제공됩니다.

이 도구는 모든 Chromium 기반 애플리케이션에 내장된 표준 디버깅 인터페이스인 Chrome DevTools 프로토콜(CDP)을 사용합니다. 이 도구는 TradingView의 독점 프로토콜을 리버스 엔지니어링하지 않으며, TradingView 서버에 연결하거나 접근 제어를 우회하지 않습니다. 디버그 포트는 사용자가 표준 Chromium 명령줄 플래그를 통해 명시적으로 활성화해야 합니다.

이 소프트웨어를 사용함으로써 다음에 동의하게 됩니다:

  1. 귀하의 사용이 TradingView 이용약관 및 모든 관련 법률을 준수하는지 확인할 책임은 전적으로 귀하에게 있습니다.

  2. 이 도구는 언제든지 변경될 수 있는 문서화되지 않은 TradingView 내부 API에 접근합니다.

  3. 이 도구는 TradingView의 시장 데이터를 재배포, 재판매 또는 상업적으로 이용하는 데 사용되어서는 안 됩니다.

  4. 저자는 계정 정지, 일시 중지 또는 기타 결과에 대해 책임을 지지 않습니다.

사용에 따른 책임은 본인에게 있습니다.

라이선스

MIT — LICENSE 참조. 소스 코드에만 적용되며 TradingView의 소프트웨어, 데이터 또는 상표에는 적용되지 않습니다.

Related MCP Connectors

Related MCP Servers

  • F
    license
    Not graded
    quality
    C
    maintenance
    Enables AI assistants to interact with TradingView Desktop charts for analysis, Pine Script development, and workflow automation via Chrome DevTools Protocol.
    94 npm
    -
  • F
    license
    Not graded
    quality
    D
    maintenance
    Enables AI assistants to interact with locally running TradingView Desktop for chart analysis, Pine Script development, and workflow automation via Chrome DevTools Protocol.
    94 npm
    -
  • F
    license
    Not graded
    quality
    C
    maintenance
    Enables AI assistants to interact with locally running TradingView Desktop for chart analysis, Pine Script development, and automation via Chrome DevTools Protocol.
    94 npm
    -