Go MCP server + Python A2A layer for managing TradingView watchlists and charts.
This is a reference implementation of the MaudeView agent pattern — a thin client that wraps MaudeViewTVCore REST endpoints as MCP tools. Fork it to build your own agent.
Full Documentation — architecture, quickstart, API reference, building agents.
WARNING — Security
The managed browser uses a dedicated profile — only log into TradingView in this browser. Do not log into any other websites (email, banking, social media, etc.). The controller can execute arbitrary JavaScript in any matched tab. CDP and the REST API have no authentication. See the Security guide for details.
list_watchlists- List all watchlistsget_active_watchlist- Get active watchlistset_active_watchlist- Set active watchlistcreate_watchlist- Create a new watchlistget_watchlist- Get watchlist detailsrename_watchlist- Rename a watchlistdelete_watchlist- Delete a watchlistadd_watchlist_symbols- Add symbols to a watchlistremove_watchlist_symbols- Remove symbols from a watchlistflag_watchlist_symbol- Flag/unflag a symbollist_colored_watchlists- List colored watchlistsset_color_list_symbols- Replace color list symbolsappend_color_list_symbols- Add symbols to color listremove_color_list_symbols- Remove symbols from color listbulk_remove_colored_symbols- Remove symbols from all colors
list_charts/get_active_chart- Chart listing and active infoget_symbol/set_symbol/get_symbol_info- Symbol managementget_resolution/set_resolution- Resolution controlget_chart_type/set_chart_type- Chart type controlget_currency/set_currency/list_available_currencies- Currencyget_unit/set_unit/list_available_units- Unitszoom_chart/scroll_chart/reset_chart_view/go_to_date- Navigationget_visible_range/set_visible_range/set_timeframe- Time rangereset_scales/undo_chart/redo_chart- Actionsget_toggles/toggle_log_scale/toggle_auto_scale/toggle_extended_hours- Togglesexecute_chart_action/list_chart_panes- Introspectionnext_chart/prev_chart/maximize_chart/activate_chart- Multi-pane
- Go 1.24+ — to build the Go MCP binary
- Python 3.11+ and uv — for the A2A layer
- just — task runner
- Anthropic API key — for the Claude agent backend
just setupThis builds the Go MCP binary, installs the Python package, and downloads the tv_controller binary from the latest MaudeViewTVCore release.
See the Quick Start guide for the full walkthrough.
just agent # Interactive CLI
just a2a # A2A server on :8100
just mcp # Raw MCP server (stdio)By default the agent uses the Claude API. Set AGENT_BACKEND=lmstudio to use a local LM Studio instance instead — this calls LM Studio's /v1/messages endpoint directly and manages the MCP tool-calling loop in Python.
AGENT_BACKEND=lmstudio just agent # Interactive CLI via LM Studio
AGENT_BACKEND=lmstudio just a2a # A2A server via LM StudioConfigure the connection in .env:
LMSTUDIO_BASE_URL=http://localhost:1234
LMSTUDIO_AUTH_TOKEN=lmstudio
LMSTUDIO_MODEL=qwen/qwen3-coder-next