Skip to main content
Glama
tradingview-mcp

tradingview-mcp

by harshil1502

tradingview-mcp

tradingview-mcp/  v0.1   ──────────────────────────────────────────────────

Компактный, типобезопасный MCP-сервер, который позволяет Claude Code (или любому другому MCP-совместимому клиенту) управлять локально запущенным приложением TradingView Desktop — читать состояние графика, менять символы и таймфреймы, получать бары OHLCV, делать скриншоты.

[!IMPORTANT] Этот проект не связан с TradingView Inc., не поддерживается и не одобрен ею. Это мост для личного использования, который взаимодействует с вашим локально запущенным приложением TradingView Desktop через протокол Chrome DevTools — тот же стандартный интерфейс отладки, встроенный в Slack, VS Code, Discord и любое другое приложение на Electron.

[!IMPORTANT] Требуется действующая подписка TradingView. Этот инструмент не обходит, не парсит и не нарушает платный доступ или контроль доступа TradingView. Все происходит на вашем компьютере, в рамках экземпляра TradingView Desktop, в который вы уже вошли и за который заплатили.

[!NOTE] Вся обработка происходит локально. Никакие данные TradingView не передаются, не хранятся и не распространяются этим инструментом. Ваши графики, ваши данные, ваш компьютер.

[!CAUTION] Внутренний API страниц TradingView не задокументирован. Он может меняться между релизами Desktop. Зафиксируйте рабочую версию TradingView Desktop, если вам нужна стабильность, и ознакомьтесь с примечанием о совместимости версий перед обновлением.


Что он делает

Оборачивает график TradingView Desktop в небольшой набор четко определенных инструментов MCP. Инструменты типизированы от начала до конца с помощью схем Zod, проверяются на границах и выводят полезные сообщения об ошибках в случае сбоев.

                  ┌───────────────┐
                  │ Claude Code   │
                  │ (or any MCP   │
                  │  client)      │
                  └───────┬───────┘
                          │ stdio (MCP)
                          ▼
                  ┌───────────────┐
                  │tradingview-mcp│
                  └───────┬───────┘
                          │ Chrome DevTools Protocol
                          ▼
                  ┌───────────────┐
                  │ TradingView   │
                  │ Desktop       │
                  │ (--remote-    │
                  │  debugging-   │
                  │  port=9222)   │
                  └───────────────┘

Related MCP server: TradingView MCP Jackson

Почему еще одна интеграция с TradingView?

Существуют другие проекты для автоматизации TradingView. Этот намеренно ограничен в функциональности:

  • 12 инструментов, а не 78. Каждый инструмент задокументирован, типизирован и протестирован.

  • Строгий TypeScript. Никаких any, никаких неявных возвратов, включен noUncheckedIndexedAccess.

  • Одна ответственность на файл. Соединение, страница, инструменты и сервер — это отдельные уровни; при изменении версий нужно исправлять только одно место.

  • Типизированные ошибки. ConnectionError, ToolExecutionError, ChartStateError и т.д. с понятными сообщениями.

  • tradingview-mcp doctor. Диагностическая команда, которая точно скажет, что не так с вашей настройкой.

Используйте это, если вам нужна небольшая, предсказуемая поверхность, которую можно изучить за один вечер. Используйте альтернативы «все включено», если вам нужно обернуть каждую функцию TradingView.


Установка

Требуется Node.js 20+.

npm install -g tradingview-mcp
# or, in a project:
npm install tradingview-mcp

Для разработки:

git clone https://github.com/harshil1502/tradingview-mcp.git
cd tradingview-mcp
npm install
npm run build

Настройка — три шага

1. Закройте все запущенные экземпляры TradingView Desktop

Иначе порт отладки не сможет быть включен.

2. Запустите TradingView Desktop с включенным портом отладки

macOS:

open -a "TradingView" --args --remote-debugging-port=9222

Windows:

& "C:\Users\<you>\AppData\Local\Programs\TradingView\TradingView.exe" --remote-debugging-port=9222

Linux:

tradingview --remote-debugging-port=9222

[!NOTE] Флаг --remote-debugging-port — это стандартный флаг отладки Chromium. Он является опциональным и отключен по умолчанию. Ничего не произойдет, пока вы явно его не передадите.

3. Проверьте соединение

tradingview-mcp doctor

Если все настроено правильно, вы увидите что-то вроде:

tradingview-mcp · doctor
─────────────────────────────────────────────
[ok]  CDP endpoint reachable on localhost:9222
[ok]  TradingView page found (NASDAQ:AAPL · 1h)
[ok]  tvWidget detected — chart state readable
─────────────────────────────────────────────
ready.

Использование с Claude Code

Добавьте это в конфигурацию MCP Claude Code (~/.claude/mcp.json или проектный .mcp.json):

{
  "mcpServers": {
    "tradingview": {
      "command": "tradingview-mcp",
      "env": {
        "TV_MCP_PORT": "9222"
      }
    }
  }
}

Перезапустите Claude Code. Инструменты ниже станут доступны.


Инструменты

Инструмент

Описание

chart_get_state

Чтение текущего символа, таймфрейма, видимых индикаторов, последней цены

chart_set_symbol

Смена активного символа (например, NASDAQ:AAPL, NSE:RELIANCE)

chart_set_timeframe

Смена разрешения (1m, 5m, 1h, 1d и т.д.)

chart_get_ohlcv

Получение до 5000 последних баров OHLCV с активного графика

Скоро появятся новые инструменты — см. docs/roadmap.md.

Пример сессии

You:    What's the chart showing?
Claude: [calls chart_get_state]
        Showing NASDAQ:AAPL on 1h timeframe with EMA20, EMA50.
        Last price 187.42.

You:    Switch to BTCUSDT 4h and pull the last 200 bars.
Claude: [calls chart_set_symbol, chart_set_timeframe, chart_get_ohlcv]
        Done. Range: 187 days. Open at start: 62,440.
        Close at end: 67,830. +8.6%.

Конфигурация

Переменная окружения

По умолчанию

Описание

TV_MCP_HOST

localhost

Хост CDP

TV_MCP_PORT

9222

Порт отладки CDP

TV_MCP_TARGET

(автоопределение)

Явный ID цели CDP — нужен только если открыто несколько окон TradingView


Разработка

npm install
npm run build         # tsc to dist/
npm run dev           # tsc --watch
npm test              # vitest run
npm run test:coverage # with v8 coverage report
npm run typecheck     # tsc --noEmit

Кодовая база состоит из четырех уровней:

src/
├── index.ts              entry — reads env, starts stdio server
├── server.ts             MCP server, tool registration, request handlers
├── errors.ts             typed error classes
├── types.ts              shared types + Zod schemas
├── connection/
│   ├── cdp.ts            CDP client wrapper (chrome-remote-interface)
│   └── tradingview.ts    TradingView-page interactions (all evaluated JS lives here)
└── tools/
    ├── index.ts          tool registry
    └── chart.ts          chart_* tools

Чтобы добавить инструмент:

  1. Создайте новый файл в src/tools/ (или расширьте существующий).

  2. Экспортируйте схемы Zod <name>Input и <name>Output плюс функцию-обработчик.

  3. Добавьте запись в TOOLS в src/tools/index.ts.

  4. Добавьте тест в tests/.

Это все — авторегистрация, автопроверка, автоинтроспекция.


Совместимость версий

TradingView Desktop

tradingview-mcp

Статус

2026.x.x

0.1.x

Протестировано

Если TradingView обновится и инструменты перестанут работать, сначала проверьте connection/tradingview.ts — это единственный файл, который знает о внутреннем API TradingView.


Отказ от ответственности

Это программное обеспечение предоставляется «как есть», без каких-либо гарантий. Запуская его, вы подтверждаете:

  • Вы используете свой собственный платный экземпляр TradingView Desktop для работы со своими данными.

  • Вы самостоятельно включили порт отладки Chrome DevTools.

  • Внутренний API TradingView не задокументирован и может измениться.

  • Ничто в этом программном обеспечении не гарантирует правильность торговых решений, принимаемых ИИ-агентом на его основе. Используйте его на демо-счете, прежде чем позволить ему касаться реального капитала.


Лицензия

MIT © 2026 Harshil Patel


Благодарности

Это новая реализация, созданная с нуля с целью быть компактной, хорошо типизированной и легкой для чтения. Если вы работали над похожими инструментами в этой области, спасибо за проложенный путь.

Available Tools

11 tools
chart_get_ohlcvB

Fetch recent OHLCV bars from the active chart.

Inputs: count.

chart_get_stateA

Read the current chart state: symbol, timeframe, visible studies, and last price.

Inputs: no named parameters.

chart_set_symbolB

Change the active chart symbol (e.g. "NASDAQ:AAPL").

Inputs: symbol (required).

chart_set_timeframeB

Change the active chart timeframe / resolution.

Inputs: timeframe (required).

pine_compileB

Trigger a Pine compile and return diagnostics (errors, warnings).

Inputs: no named parameters.

pine_get_sourceA

Read the current Pine Editor source code. Pine Editor must be open.

Inputs: no named parameters.

pine_saveA

Save the current Pine script (commits + reloads the indicator on the chart).

Inputs: no named parameters.

pine_set_sourceB

Replace the Pine Editor source code with new content.

Inputs: code (required).

quote_getA

Get a real-time quote snapshot for the active symbol (last price, day OHLC, volume).

Inputs: no named parameters.

screenshot_chartA

Capture the chart pane as a base64-encoded PNG.

Inputs: no named parameters.

screenshot_fullA

Capture the full TradingView viewport as a base64-encoded PNG.

Inputs: no named parameters.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    A3.8/5.0

    Scored across 11 tools

    Disambiguation5/5

    Each tool has a clearly distinct purpose. The chart_* tools handle different aspects of chart interaction, pine_* tools manage Pine script editing and compilation, screenshot_* tools capture images, and quote_get fetches real-time quotes. No overlapping functionality.

    Naming Consistency5/5

    Tool names follow a consistent pattern: <domain>_<verb>_<noun> (e.g., chart_get_ohlcv, pine_set_source, screenshot_chart). All use lowercase with underscores, and the verb-noun structure is uniform across domains.

    Tool Count5/5

    With 11 tools, the server is well-scoped for a TradingView MCP. It covers chart manipulation, Pine scripting, quotes, and screenshots without being bloated or too sparse.

    Completeness4/5

    The tool set covers core workflows like symbol/timeframe changes, data retrieval, Pine script management, and screenshots. A minor gap is the lack of tools to add or remove studies (only visible studies are read), but this does not severely hinder typical use cases.

    Maintenance

    ActivityInactive
    ResponsivenessNo recent community issues

    Related MCP Connectors

    Related MCP Servers

    • A
      license
      B
      quality
      A
      maintenance
      MCP server that lets AI agents directly control and interact with the TradingView desktop app via 88 chart-control tools, enabling automated chart reading, Pine Script compilation, strategy optimization, and replay control.
      113
      47 npm
      60
      MIT