AI remote control for TradingView Desktop — 113 MCP tools driving symbols, indicators, Pine Script, snapshots, sweeps, diagnostics, and live chart vision over CDP.
tvcontrol exposes 51 tools with minimal schema documentation and inconsistent descriptions. Tool names follow verb_noun convention (good), but parameter schemas are not visible in source code provided. Descriptions vary from adequate (health_check: 47 chars) to vague (chart_manage_indicator: 47 chars). No evidence of input validation, error recovery guidance, or output schema documentation. Critical security issue: ui_evaluate is an IRREVERSIBLE tool that runs arbitrary JavaScript with only an environment variable gate (TV_MCP_ADVANCED=1), violating permission-gate and secret-injection patterns. Tool composition is reasonable (single responsibility per tool), but lack of schema visibility and error handling guidance significantly limits LLM usability.
Create a price alert
Delete an alert by ID
List all active alerts
Run action across multiple symbols/timeframes
Capture screenshot of chart regions (full, chart, strategy_tester)
Get symbol, timeframe, all indicator names + entity IDs
Add or remove studies/indicators from the chart
Jump to a specific date on the chart
Change the chart symbol/ticker
No input schemas visible in source code. All 51 tools lack documented parameter types, constraints, and descriptions. Cannot verify LLM can infer valid inputs.
ui_evaluate tool runs arbitrary JavaScript with only environment variable gate (TV_MCP_ADVANCED=1). No permission checks, no audit trail, no confirmation step. Violates permission-gate and secret-injection patterns.
No error handling guidance visible. Tools do not document what errors can occur, whether they are retryable, or what the LLM should do next. Violates recovery-guide pattern.
Output schemas not documented. LLMs cannot plan downstream tool calls or extract required fields (e.g., IDs for chaining). Violates tool-chain pattern.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 39 | 2026-07-28+ | v2 |
Change the chart timeframe/resolution
Change the chart type/style
Get screenshot bytes + state in a single call for LLM agents
Get price bars with optional summary
Get price zones as {high, low} pairs from custom indicators
Get text annotations with prices from custom indicators
Get horizontal price levels from custom indicators
Get table data as formatted rows from custom indicators
Get current numeric values from all visible indicators
Draw shapes on chart (horizontal_line, trend_line, rectangle, text)
Check CDP connection and TradingView API availability
Change indicator settings (length, source, etc.)
Focus a specific pane
List all panes and their current layout
Set pane layout (s, 2h, 2v, 4, 6, 8)
Set symbol for a specific pane
Read Pine Script console/log output
Read Pine Script compilation errors
Get the current Pine Script source code
Inject Pine Script code into the editor
Compile Pine Script and check for errors
Get real-time price snapshot (last, OHLC, volume)
Start bar-by-bar historical replay at a date
Get current replay mode status
Step forward one bar in replay mode
Exit replay mode
Simulate a buy/close trade in replay mode
Delete a saved snapshot
Restore chart to a previously saved snapshot
Capture full chart state (symbol, timeframe, indicators, drawings)
Parameter sweep a live strategy across input combinations
Close a tab by ID
List all open tabs
Create a new tab
Switch to a specific tab
Auto-detect and start TradingView with CDP on any platform
Run arbitrary page JavaScript (GATED behind TV_MCP_ADVANCED=1)
Add a symbol to the watchlist
Export watchlist to JSON file
Read current watchlist symbols
Import watchlist from JSON file
Remove a symbol from the watchlist
Destructive tools (alert_delete, watchlist_remove, tab_close, state_delete) lack confirmation or dry-run support. No protection against accidental agent-initiated deletions.