TradingView MCP
A local MCP server/CLI that connects to TradingView Desktop over CDP to inspect and automate charts, Pine Script, replay, alerts, drawings, layouts, and UI.
Check connection health, discover APIs, inspect UI state, and launch TradingView with remote debugging.
Read and control charts: symbol, timeframe, chart type, visible range, scroll dates, symbol info/search, quotes, OHLCV, depth, and study values.
Manage indicators: add/remove, read inputs, set inputs, toggle visibility, and read custom Pine lines, labels, tables, and boxes.
Develop Pine Script: get/set source, compile, smart compile, inspect errors/console, save, create/open/list scripts, and run offline analysis or server-side checks.
Access Strategy Tester results, trades, equity curve, screenshots, and batch runs across symbols/timeframes.
Practice replay: start/stop, step bars, autoplay, trade buy/sell/close, and check replay status.
Draw and manage chart shapes, list/remove drawings, and inspect drawing properties.
Create/list/delete price alerts and read/modify watchlists.
Manage multi-pane layouts, focus panes, set pane symbols, and list/switch/create/close tabs.
Automate the UI with clicks, keyboard input, text typing, hover, scroll, mouse clicks, element finding, panel/fullscreen controls, and JavaScript evaluation.
Provides Pine Script development tools for injecting source into TradingView's Pine editor, compiling scripts, retrieving compilation errors and console logs, saving scripts to TradingView cloud, performing offline static analysis, and running server-side compile checks.
Connects to a locally running TradingView Desktop app to inspect and control charts, including reading chart state, quotes, OHLCV data, indicator values, and Pine drawings; changing symbols, timeframes, chart types, layouts, indicators, watchlists, alerts, and drawings; capturing screenshots; launching and health-checking TradingView; and practicing with replay mode.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@TradingView MCPUse tv_health_check to verify TradingView is connected"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
TradingView MCP
A local MCP bridge and CLI for inspecting and controlling TradingView Desktop charts, developing Pine Scripts, and practicing with chart replay.
The original tradingview-mcp was created by @tradesdontlie. This checkout adds local connection handling, launchers, and integration improvements.
Not affiliated with TradingView Inc. or Anthropic. This tool connects to your locally running TradingView Desktop app via Chrome DevTools Protocol. Review the Disclaimer before use.
Uses your TradingView account permissions. Install TradingView Desktop and sign in with access to the charts and features you intend to use. This tool does not bypass account, subscription, or exchange-data restrictions.
The MCP connection runs locally. Some tools use TradingView endpoints for symbol search, Pine compilation, and authenticated alert management.
One-Shot Setup
Paste this into Claude Code or Codex running locally on the computer with TradingView Desktop. The agent needs terminal and file access; a cloud-only chat cannot reach your desktop's local debug port.
Set up TradingView MCP for the local client I am using (Claude Code or Codex).
Repository: https://github.com/madiver/TradingView-MCP
First read the setup guide: https://raw.githubusercontent.com/madiver/TradingView-MCP/main/SETUP_GUIDE.md
Reuse an existing checkout only after verifying it is this repository; otherwise clone that URL into a stable folder such as ~/TradingView-MCP. Do not overwrite another folder or discard local changes. Check Git and a supported Node.js version, then run npm ci in the checkout.
Follow the setup guide's instructions for my OS and this client. Reuse a working debug launcher if already configured; otherwise use the correct native Mac/Windows launcher from https://github.com/madiver/TradingView-MCP/releases/latest, or the documented Linux launch steps. Keep TradingView sign-in and save prompts under my control.
Register the local stdio server using absolute paths to Node and src/server.js. Use claude mcp add for Claude Code or codex mcp add / the Codex TOML configuration for Codex. Inspect any existing tradingview entry, preserve other servers and settings, and retain a custom local debug port if already configured. If you cannot identify the client, ask which one to configure.
Verify the client registration and run npm run tv -- status. Tell me if I need to reconnect or restart the client. After its tools are available, call tv_health_check and chart_get_state without changing my chart. Report separately whether configuration is saved and whether the live chart connection has been verified; do not claim success for checks you could not run.The same prompt works without an existing checkout. Follow SETUP_GUIDE.md for manual steps, Windows commands, both configuration formats, and reconnect instructions.
Related MCP server: TradingView MCP Bridge
Prerequisites
TradingView Desktop app, signed in with the required chart/data permissions
A supported Node.js LTS: 22, 24, or 26 (
.nvmrcselects 24)Git to clone the repository for MCP setup
An MCP client with local stdio support, such as Claude Code or Codex, or a terminal for the CLI
macOS, Windows, or Linux
Quick Start
Standalone Mac Intel, Mac Apple silicon, Windows Intel/AMD, and Windows ARM launchers are available in GitHub Releases. They need TradingView Desktop, but no developer tools. See installation and sharing instructions. Install the MCP server separately using the steps below when you want AI chart tools.
1. Clone and install
For a new installation, clone the public repository to a stable folder, then install the locked dependencies:
git clone https://github.com/madiver/TradingView-MCP.git
cd TradingView-MCP
npm ciIf you already have a checkout, verify its remote and use it without discarding local work. See SETUP_GUIDE.md for home-directory and Windows examples.
2. Launch TradingView with CDP
TradingView must be running with the debug port enabled.
macOS: download the Intel or Apple silicon launcher from Releases, extract it, and drag TradingView Debug.app to Applications. Use that app from Finder or the Dock; the download needs no Python or Xcode. See installation instructions.
To build and install from source instead:
python3 launcher/install.pyThe source installer requires Python 3 and Xcode Command Line Tools (swiftc). Both versions request a graceful restart and respect save prompts. See launcher instructions.
Windows: use the standalone TradingView Debug launcher. It supports graceful restarts, verifies the connection, and can be shared without this repository. The legacy batch entry point runs the installed launcher:
scripts\launch_tv_debug.batLinux: start TradingView with the local debug flags. Quit any existing non-debug instance through its UI first:
/path/to/tradingview --remote-debugging-address=127.0.0.1 --remote-debugging-port=9222The legacy shell launch scripts terminate matching processes; they do not provide the native launchers' save-prompt handling. Linux chart automation has not been qualified against an installed Desktop app in this checkout.
Or use the MCP tool after setup: "Use tv_launch to start TradingView in debug mode"
3. Register the MCP server
Choose Claude Code or Codex, and replace the example paths with the actual absolute paths. Use node -p "process.execPath" to find your Node executable; a desktop client may not inherit your terminal's PATH. Register only the client you intend to use, or configure each separately if you use both.
Claude Code (user-scoped stdio server):
claude mcp add --scope user --transport stdio tradingview --env TV_CDP_HOST=127.0.0.1 --env TV_CDP_PORT=9222 -- "/absolute/path/to/node" "/absolute/path/to/TradingView-MCP/src/server.js"
claude mcp get tradingviewCodex (local stdio server):
codex mcp add tradingview --env TV_CDP_HOST=127.0.0.1 --env TV_CDP_PORT=9222 -- "/absolute/path/to/node" "/absolute/path/to/TradingView-MCP/src/server.js"
codex mcp get tradingviewKeep an existing custom port in place of 9222. Claude Code uses ~/.claude.json for user-scoped servers; Codex uses ~/.codex/config.toml by default. Codex desktop/CLI/IDE clients on the same host share configuration. If the CLI is unavailable, merge the matching JSON or TOML entry from SETUP_GUIDE.md; do not paste JSON into Codex's TOML file. That guide also includes native Windows PowerShell examples.
Official references: Claude Code MCP, Codex MCP.
4. Verify
Check claude mcp get tradingview or codex mcp get tradingview, then use /mcp in the corresponding terminal client to inspect available tools. Reconnect or restart your client if needed; registration alone does not make tools available in an already-running chat.
Ask: "Use tv_health_check and chart_get_state to verify the connection without changing my chart." A ready chart should report cdp_connected: true and api_available: true. If the tools are not loaded yet, npm run tv -- status can check the local connection, but client setup remains unverified until its tools work.
What This Tool Does
Pine Script development — write, inject, compile, debug scripts with AI
Chart navigation — change symbols, timeframes, zoom to dates, add/remove indicators
Visual analysis — read indicator values, price levels, drawn levels from custom indicators
Draw on charts — trend lines, horizontal levels, rectangles, text
Manage alerts — create, list, delete price alerts
Replay practice — step through historical bars, practice entries and exits with P&L tracking
Screenshots — capture chart state
Multi-pane layouts — 2x2, 3x1 grids with different symbols per pane
Stream data — JSONL output from your live chart for monitoring scripts
CLI access — every tool is also a
tvcommand, pipe-friendly JSON output
Choosing Tools
The server advertises tool-selection instructions. AGENTS.md and CLAUDE.md provide repository-specific guidance for coding agents.
You say... | Tool sequence |
"What's on my chart?" |
|
"Give me a full analysis" |
|
"Switch to BTCUSD daily" |
|
"Write a Pine Script for..." |
|
"Start replay at March 1st" |
|
"Set up a 4-chart grid" |
|
"Draw a level at 94200" |
|
Tool Reference
Chart Reading
Tool | When to use | Output size |
| First call — get symbol, timeframe, all indicator names + IDs | ~500B |
| Read current RSI, MACD, BB, EMA values from all indicators | ~500B |
| Get latest price, OHLC, volume | ~200B |
| Get price bars. Use | 500B (summary) / 8KB (100 bars) |
Custom Indicator Data (Pine Drawings)
Read line.new(), label.new(), table.new(), box.new() output from any visible Pine indicator.
Tool | When to use |
| Horizontal price levels (support/resistance, session levels) |
| Text annotations + prices ("PDH 24550", "Bias Long") |
| Data tables (session stats, analytics dashboards) |
| Price zones as {high, low} pairs |
Always use study_filter to target a specific indicator: study_filter: "MyIndicator".
Chart Control
Tool | What it does |
| Change ticker (BTCUSD, AAPL, ES1!, NYMEX:CL1!) |
| Change resolution (1, 5, 15, 60, D, W, M) |
| Change style (Candles, HeikinAshi, Line, Area, Renko) |
| Add/remove indicators. Use full names: "Relative Strength Index" not "RSI" |
| Jump to a date (ISO: "2025-01-15") |
| Change indicator settings, show/hide |
Pine Script Development
Tool | Step |
| 1. Inject code into editor |
| 2. Compile with auto-detection + error check |
| 3. Read compilation errors if any |
| 4. Read log.info() output |
| 5. Save to TradingView cloud |
| Offline static analysis (no chart needed) |
| Server-side compile check (no chart needed) |
Replay Mode
Tool | Step |
| Enter replay at a date |
| Advance one bar |
| Auto-advance (set speed in ms) |
| Buy/sell/close positions |
| Check position, P&L, date |
| Return to realtime |
Multi-Pane, Alerts, Drawings, UI
Tool | What it does |
| Change grid: |
| Set symbol on any pane |
| Draw horizontal_line, trend_line, rectangle, text |
| Manage price alerts |
| Run action across multiple symbols/timeframes |
| Read/modify watchlist |
| Screenshot (regions: full, chart, strategy_tester) |
| Launch TradingView and verify connection |
Tool behavior
quote_get with a different symbol temporarily switches the bound chart and restores it. Strategy-report tools may open the Strategy Tester and make a hidden strategy visible; their results report that change. Alert creation/deletion changes actual TradingView alerts. Replay trades are practice actions, and the project does not place live broker/exchange orders.
Connections stay bound to their selected tab during an operation. Use tab_follow_visible between operations to attach to the chart currently visible; avoid switching targets during a drawing run. The default debug endpoint is 127.0.0.1:9222. Match TV_CDP_PORT to any custom launcher port and keep the endpoint local.
Tests and development
npm ci
npm run check # JavaScript syntax checks
npm test # offline tests and MCP startup; no Desktop chart changes
npm run test:network # opt-in Pine compilation API tests; requires internet
npm run test:e2e # opt-in Desktop tests; changes chart stateUse a disposable TradingView layout for E2E tests. npm run test:all explicitly includes both network and Desktop suites. CI runs offline tests on Linux, macOS, and Windows with Node 22/24/26, plus launcher checks. See CONTRIBUTING.md for the validation matrix and .NET 10 launcher tests.
CLI Commands
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 ticksFull command list: tv --help
Troubleshooting
Problem | Solution |
| Open TradingView Debug and match the MCP port to the launcher port. |
| TradingView isn't running or port 9222 is blocked |
MCP server missing in Claude Code | Run |
MCP server missing in Codex | Run |
| Run |
Tools return stale data | TradingView still loading — wait a few seconds |
Pine Editor tools fail | Open Pine Editor panel first: |
Architecture
MCP Client ←→ MCP Server (stdio) ←→ CDP (port 9222) ←→ TradingView Desktop (Electron)Transport: MCP over stdio + CLI (
tvcommand)Connection: Chrome DevTools Protocol on localhost:9222
Local chart connection — chart tools use CDP; symbol search, Pine compilation, and alerts can use TradingView endpoints
Dependencies: MCP SDK, Chrome DevTools client, and Zod; versions are locked in
package-lock.json
This checkout selectively incorporates input-handling and reliability fixes from
upstream commit c05b8f5.
Local visible-tab selection, explicit target binding, the macOS debug launcher, and
TVLevels integration are retained. npm run test:unit runs the regression suite
without changing a live TradingView chart. Chart-mutating E2E tests remain separate.
Credits
Original TradingView MCP author: @tradesdontlie. The original repository provides the foundation for this project. Its copyright and license notices are retained. See PROVENANCE.md for source lineage and the clean-history boundary.
Disclaimer
This project is provided for personal, educational, and research purposes only.
This tool uses the Chrome DevTools Protocol (CDP), a standard debugging interface built into all Chromium-based applications. Chart operations use the locally running Desktop app; symbol search, Pine compilation, and alert management can also use TradingView endpoints. Account permissions and access controls remain applicable. The debug port must be explicitly enabled by the user via a standard Chromium command-line flag.
By using this software you agree that:
You are solely responsible for ensuring your use complies with TradingView's Terms of Use and all applicable laws.
This tool accesses undocumented internal TradingView APIs that may change at any time.
This tool must not be used to redistribute, resell, or commercially exploit TradingView's market data.
The authors are not responsible for any account bans, suspensions, or other consequences.
Use at your own risk.
License
MIT — see LICENSE. Applies to source code only, not to TradingView's software, data, or trademarks.
Available Tools
79 toolsalert_createA
Create a price alert on the current chart symbol via TradingView's alert API
Inputs: price (required), condition (required), message.
alert_deleteA
Delete a specific alert by id, or all active alerts
Inputs: alert_id, delete_all.
alert_listA
List active alerts
Inputs: no named parameters.
batch_runB
Run an action across multiple symbols and/or timeframes
Inputs: action (required), symbols (required), delay_ms, timeframes, +1 more.
capture_screenshotB
Take a screenshot of the TradingView chart
Inputs: method, region, filename, wait_for_render.
chart_get_stateA
Get current chart state (symbol, timeframe, chart type, indicators)
Inputs: no named parameters.
chart_get_visible_rangeA
Get the visible date range (unix timestamps) and bars range on the chart
Inputs: no named parameters.
chart_manage_indicatorC
Add or remove an indicator/study on the chart
Inputs: action (required), inputs, entity_id, indicator.
chart_scroll_to_dateA
Jump the chart view to center on a specific date
Inputs: date (required).
chart_set_symbolC
Change the chart symbol
Inputs: symbol (required).
chart_set_timeframeB
Change the chart timeframe/resolution
Inputs: timeframe (required).
chart_set_typeC
Change chart type
Inputs: chart_type (required).
chart_set_visible_rangeB
Zoom the chart to a specific date range (unix timestamps)
Inputs: to (required), from (required).
data_get_equityA
Get equity curve data from Strategy Tester
Inputs: no named parameters.
data_get_indicatorC
Get indicator/study info and input values
Inputs: entity_id (required).
data_get_ohlcvA
Get OHLCV bar data from the chart. Use summary=true for compact stats instead of all bars (saves context).
Inputs: count, summary.
data_get_pine_boxesA
Read box/zone boundaries drawn by Pine Script indicators (box.new). Returns deduplicated {high, low} price zones. Use study_filter to target a specific indicator.
Inputs: verbose, study_filter.
data_get_pine_labelsA
Read text labels drawn by Pine Script indicators (label.new). Returns text and price pairs. Use study_filter to target a specific indicator.
Inputs: verbose, max_labels, study_filter.
data_get_pine_linesA
Read horizontal price levels drawn by Pine Script indicators (line.new). Returns deduplicated price levels per study. Use study_filter to target a specific indicator.
Inputs: verbose, study_filter.
data_get_pine_tablesA
Read table data drawn by Pine Script indicators (table.new). Returns formatted text rows per table. Use study_filter to target a specific indicator.
Inputs: study_filter.
data_get_strategy_resultsA
Get strategy performance metrics from Strategy Tester. Auto-opens the panel and auto-unhides a hidden strategy (TradingView never computes reports for hidden strategies); result includes unhidden_strategies when that happened.
Inputs: no named parameters.
data_get_study_valuesA
Get current indicator values from the data window for all visible studies (RSI, MACD, Bollinger Bands, EMAs, custom indicators with plot()).
Inputs: no named parameters.
data_get_tradesA
Get trade list from Strategy Tester. Auto-opens the panel and auto-unhides a hidden strategy.
Inputs: max_trades.
depth_getA
Get order book / DOM (Depth of Market) data from the chart
Inputs: no named parameters.
draw_clearA
Remove all drawings from the chart
Inputs: no named parameters.
draw_get_propertiesA
Get properties and points of a specific drawing
Inputs: entity_id (required).
draw_listA
List all shapes/drawings on the chart
Inputs: no named parameters.
draw_remove_oneA
Remove a specific drawing by entity ID
Inputs: entity_id (required).
draw_shapeC
Draw a shape/line on the chart
Inputs: point (required), shape (required), text, point2, +1 more.
indicator_set_inputsB
Change indicator/study input values (e.g., length, source, period)
Inputs: inputs (required), entity_id (required).
indicator_toggle_visibilityB
Show or hide an indicator/study on the chart
Inputs: visible (required), entity_id (required).
layout_listB
List saved chart layouts
Inputs: no named parameters.
layout_switchA
Switch to a saved chart layout by name or ID
Inputs: name (required).
pane_focusA
Focus a specific chart pane by index (0-based)
Inputs: index (required).
pane_listA
List all chart panes in the current layout with their symbols and active state
Inputs: no named parameters.
pane_set_layoutB
Change the chart grid layout (e.g., single, 2x2, 2h, 3v)
Inputs: layout (required).
pane_set_symbolB
Set the symbol on a specific pane by index
Inputs: index (required), symbol (required).
pine_analyzeA
Run static analysis on Pine Script code WITHOUT compiling — catches array out-of-bounds, unguarded array.first()/last(), bad loop bounds, and implicit bool casts. Works offline, no TradingView connection needed.
Inputs: source (required).
pine_checkA
Compile Pine Script via TradingView's server API without needing the chart open. Returns compilation errors/warnings. Useful for validating code before injecting into the chart.
Inputs: source (required).
pine_compileB
Compile / add the current Pine Script to the chart
Inputs: no named parameters.
pine_get_consoleB
Read Pine Script console/log output (compile messages, log.info(), errors)
Inputs: no named parameters.
pine_get_errorsB
Get Pine Script compilation errors from Monaco markers
Inputs: no named parameters.
pine_get_sourceA
Get current Pine Script source code from the editor
Inputs: no named parameters.
pine_list_scriptsA
List saved Pine Scripts
Inputs: no named parameters.
pine_newB
Create a new blank Pine Script
Inputs: type (required).
pine_openB
Open a saved Pine Script by name
Inputs: name (required).
pine_saveA
Save the current Pine Script (Ctrl+S)
Inputs: no named parameters.
pine_set_sourceC
Set Pine Script source code in the editor
Inputs: source (required).
pine_smart_compileB
Intelligent compile: detects button, compiles, checks errors, reports study changes
Inputs: no named parameters.
quote_getA
Get real-time quote data for a symbol (price, OHLC, volume). If symbol is provided and differs from the current chart, the chart is briefly switched to fetch the quote and then restored — adds ~1-2s and serializes parallel calls.
Inputs: symbol.
replay_autoplayA
Toggle autoplay in replay mode, optionally set speed
Inputs: speed.
replay_startB
Start bar replay mode, optionally at a specific date
Inputs: date.
replay_statusA
Get current replay mode status
Inputs: no named parameters.
replay_stepA
Advance one bar in replay mode
Inputs: no named parameters.
replay_stopA
Stop replay and return to realtime
Inputs: no named parameters.
replay_tradeB
Execute a trade action in replay mode (buy, sell, or close position)
Inputs: action (required).
symbol_infoA
Get detailed metadata about the current symbol (name, exchange, type, description)
Inputs: no named parameters.
symbol_searchB
Search for symbols by name or keyword
Inputs: query (required), type.
tab_closeA
Close the current chart tab
Inputs: no named parameters.
tab_follow_visibleA
Attach this MCP connection to the visible TradingView tab without activating a tab or changing its chart. Call between operations, never during a bound drawing run.
Inputs: no named parameters.
tab_listA
List all open TradingView chart tabs
Inputs: no named parameters.
tab_newB
Open a new chart tab
Inputs: no named parameters.
tab_switchB
Switch to a chart tab by index
Inputs: index (required).
tv_discoverA
Report which known TradingView API paths are available and their methods
Inputs: no named parameters.
tv_health_checkB
Check CDP connection to TradingView and return current chart state
Inputs: no named parameters.
tv_launchA
Launch TradingView Desktop with Chrome DevTools Protocol (remote debugging) enabled. Auto-detects install location on Mac, Windows, and Linux.
Inputs: port, kill_existing.
tv_ui_stateA
Get current UI state: which panels are open, what buttons are visible/enabled/disabled
Inputs: no named parameters.
ui_clickB
Click a UI element by aria-label, data-name, text content, or class substring
Inputs: by (required), value (required).
ui_evaluateB
Execute JavaScript code in the TradingView page context for advanced automation
Inputs: expression (required).
ui_find_elementA
Find UI elements by text, aria-label, or CSS selector and return their positions
Inputs: query (required), strategy.
ui_fullscreenA
Toggle TradingView fullscreen mode
Inputs: no named parameters.
ui_hoverA
Hover over a UI element by aria-label, data-name, or text content
Inputs: by (required), value (required).
ui_keyboardB
Press keyboard keys or shortcuts (e.g., Enter, Escape, Alt+S, Ctrl+Z)
Inputs: key (required), modifiers.
ui_mouse_clickB
Click at specific x,y coordinates on the TradingView window
Inputs: x (required), y (required), button, double_click.
ui_open_panelB
Open, close, or toggle TradingView panels (pine-editor, strategy-tester, watchlist, alerts, trading)
Inputs: panel (required), action (required).
ui_scrollB
Scroll the chart or page up/down/left/right
Inputs: direction (required), amount.
ui_type_textA
Type text into the currently focused input/textarea element
Inputs: text (required).
watchlist_addB
Add a symbol to the TradingView watchlist
Inputs: symbol (required).
watchlist_getA
Get all symbols from the current TradingView watchlist with last price, change, and change%
Inputs: no named parameters.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
TDQS
Scored across 79 tools
Most domain prefixes (chart_, pine_, replay_, alert_) carve out distinct areas, but several clusters overlap heavily: ui_click vs ui_mouse_click vs ui_hover vs ui_find_element, ui_keyboard vs ui_type_text, and four compile/validate tools (pine_compile, pine_smart_compile, pine_check, pine_analyze) whose boundaries are only explained in prose. chart_scroll_to_date vs chart_set_visible_range and tab_follow_visible vs tab_switch also require reading descriptions to choose correctly.
Nearly every tool is prefixed by its domain (data_, draw_, alert_, replay_, ui_, pane_, tab_, chart_, pine_), making grouping predictable. Ordering within the prefix varies (chart_get_state vs draw_shape vs alert_create vs capture_screenshot), but the convention remains readable and no chaotic mixing of camelCase/snake_case occurs.
79 tools is far beyond a well-scoped set even for a broad desktop-automation domain; many low-level UI primitives (ui_mouse_click, ui_scroll, ui_hover, ui_evaluate) arguably belong behind a single generic action tool. The count forces agents to scan a large, flat surface for routine operations.
Coverage is deep across chart control, Pine scripting, data extraction, replay, alerts, layouts, panes, and watchlists, so core workflows have no dead ends. Minor gaps remain (no watchlist_remove or alert_update, no layout save/delete, no cleanup for panes/scripts), but agents can work around them via ui_evaluate.
Maintenance
Related MCP Connectors
Read-only market charts, OHLC, backtests and a view of your connected broker accounts
ChartRemotely — put a security on a desktop chart anywhere in the world, by voice or by tool call
Create and manage trading strategies, bots, webhooks and signals from any MCP client.
Trading MCP server for AI agents, with live market data, account reads and controlled execution.
Related MCP Servers
- AlicenseNot gradedqualityCmaintenanceEnables MCP clients to control a local TradingView Desktop instance, providing tools to read chart state, change symbols and timeframes, and fetch OHLCV data.85 npm134MIT
- AlicenseNot gradedqualityCmaintenanceEnables AI agents to read and control TradingView Desktop charts in real time, supporting chart analysis, Pine Script development, alerts, replay practice, and multi-pane automation.85 npm1MIT
- FlicenseNot gradedqualityCmaintenanceEnables AI assistants to connect to a locally running TradingView Desktop app via Chrome DevTools Protocol for chart analysis, Pine Script development, drawing, alert management, replay, and chart navigation through natural language.85 npm-
- AlicenseNot gradedqualityCmaintenanceEnables LLM clients or shell users to read and control a live TradingView Desktop chart, including chart state, OHLCV and indicator values, Pine Script editing/compiling, drawings, alerts, bar replay, and screenshots via the Chrome DevTools Protocol.85 npmMIT