TradingView MCP
TradingView MCP
Локальный сервер Model Context Protocol и loopback REST API для рыночных данных, детерминированного технического анализа, рендеринга графиков и опциональных браузерных сценариев TradingView Supercharts.
Сервер работает через stdio и запускает локальный просмотрщик и браузеры Playwright только тогда, когда они нужны какому-либо инструменту. Высокоуровневые инструменты истории и анализа по умолчанию автоматически закрывают управляемый браузер.
[!IMPORTANT] Это независимый проект с открытым исходным кодом. Он не аффилирован с TradingView, не спонсируется и не поддерживается TradingView. TradingView и Lightweight Charts являются товарными знаками TradingView, Inc. Пользователи несут ответственность за соблюдение условий TradingView, разрешений учетной записи, прав на биржевые данные и применимых лицензий на данные.
Возможности
Инструменты MCP для поиска рынков, котировок, OHLCV, анализа и состояния графиков
Официальные скриншоты TradingView одним вызовом для точного символа, интервала и диапазона дат
Контекст исторической даты одним вызовом: OHLCV, гэпы, изменения, объем, экспортированные поля индикаторов, скользящая доходность и технический анализ
Детерминированные расчеты SMA, EMA, RSI, MACD, полос Боллинджера, ATR, тренда, сигналов и уровней поддержки/сопротивления
Локальный просмотрщик Lightweight Charts с захватом PNG
Поддержка CSV, встроенных данных OHLCV, демо-данных и опционально настраиваемого апстрима
Атомарные оверлеи индикаторов, уровней, пользовательских серий, ценовых зон и маркеров
Опциональные сценарии Playwright для навигации по Supercharts TradingView с авторизацией аккаунта, экспорта CSV, индикаторов и скриншотов
Компактные результаты MCP по умолчанию, чтобы большие массивы OHLCV не расходовали контекст модели без необходимости
Привязка HTTP только к loopback, изоляция путей, проверка входных данных, фильтрация учетных данных и проверки браузера с блокировкой при сбое
Related MCP server: TradingView MCP Jackson
Архитектура
MCP client -- stdio --+-- deterministic analysis and chart state
+-- on-demand local viewer / PNG capture
+-- optional on-demand TradingView browser
REST client -- loopback HTTP -- local viewer and compatible JSON endpointsЛокальный просмотрщик — это детерминированная поверхность рендеринга; он не является клоном проприетарных функций графиков TradingView. См. границу совместимости.
Требования
Node.js 22 или новее
npm
Chromium, установленный через Playwright, если используются инструменты скриншотов или браузера
Установка из исходного кода
git clone https://github.com/moeuu/tradingview-mcp.git
cd tradingview-mcp
npm ci
npx playwright install chromium
npm run buildДля Linux CI или машины без системных зависимостей Chromium:
npx playwright install --with-deps chromiumПодключение MCP-клиента
TradingView MCP не зависит от клиента. Он использует стандартный транспорт MCP stdio и не вызывает API, специфичные для конкретного клиента. Любой MCP-клиент, который может запускать локальный процесс, может использовать:
node /absolute/path/to/tradingview-mcp/dist/mcp.jsМногие настольные клиенты и клиенты редакторов используют эту общую форму конфигурации:
{
"mcpServers": {
"tradingview": {
"command": "node",
"args": ["/absolute/path/to/tradingview-mcp/dist/mcp.js"],
"env": {
"MARKET_CHART_PORT": "0",
"MARKET_CHART_DATA_ROOT": "/absolute/path/to/tradingview-mcp/data"
}
}
}
}При необходимости адаптируйте внешние ключи конфигурации под свой клиент; команда, аргументы, окружение и протокол MCP остаются прежними. Перезапустите клиент после изменения его конфигурации. MARKET_CHART_PORT=0 выбирает эфемерный порт просмотрщика и позволяет избежать постоянно прослушивающего сервиса.
См. настройку MCP-клиентов и совместимость для получения сведений о поведении транспорта, жизненном цикле и устранении неполадок.
Рекомендуемый сценарий работы с MCP
Вызовите
market_get_capabilities, если доступность провайдера неясна.Используйте
tradingview_get_dayдля получения исчерпывающей информации о символе на конкретную дату.Используйте
tradingview_capture_periodдля официального PNG Supercharts, покрывающего точные календарные даты.Используйте
tradingview_analyze_symbolдля получения последней истории и детерминированного анализа одним вызовом.Используйте
tradingview_get_history, когда нужна только недавняя история.Используйте
chart_import_csvилиchart_set_dataдля локальных/пользовательских данных.Используйте
chart_analyze,chart_apply_overlaysиchart_snapshotдля локального анализа и визуализации.
Примеры вызовов:
{
"name": "tradingview_capture_period",
"arguments": {
"symbol": "NASDAQ:AAPL",
"interval": "D",
"from": "2024-01-02",
"to": "2024-03-28"
}
}{
"name": "tradingview_get_day",
"arguments": {
"symbol": "NASDAQ:AAPL",
"date": "2024-01-03",
"interval": "D",
"timezone": "America/New_York"
}
}tradingview_get_day возвращает явный статус no_session_bar для выходных, праздников и недоступных дат, а не молча подставляет ближайшую торговую сессию. Для совпадающей даты он возвращает OHLCV сессии, предыдущий и следующий бары (если они загружены), изменения относительно предыдущего закрытия и гэпа открытия, внутридневной диапазон, скользящую доходность за периоды 5/20/50/200, детерминированные индикаторы и сигналы, а также все дополнительные колонки индикаторов, присутствующие в официальном экспорте графиков TradingView. Установите внутридневной interval и includeBars:true, чтобы получить все экспортированные бары, относящиеся к этой дате.
Высокоуровневые инструменты TradingView по умолчанию закрывают браузер. Устанавливайте includeBars: true только тогда, когда в ответе MCP требуются сырые бары, а keepBrowserOpen: true — только для немедленного последующего использования браузерных инструментов.
Сервер предоставляет как высокоуровневые, так и детальные инструменты. Клиенты, поддерживающие список разрешенных enabled_tools, могут предоставлять доступ только к инструментам, необходимым для конкретного сценария.
Опциональный браузерный сценарий TradingView
Автоматизация браузера отключена по умолчанию. Предпочтительный источник аутентификации — экспорт cookie, поскольку он может содержать только необходимые cookie сеанса. Никогда не вставляйте значения учетных данных в аргументы MCP, файлы репозитория, конфигурацию клиента или подсказки.
chmod 600 /absolute/path/to/tradingview-cookies.txt
export TRADINGVIEW_BROWSER_ENABLED=true
export TRADINGVIEW_BROWSER_BASE_URL=https://www.tradingview.com
export TRADINGVIEW_BROWSER_COOKIE_FILE=/absolute/path/to/tradingview-cookies.txt
export TRADINGVIEW_BROWSER_AUTH_COOKIE_NAMES=sessionid,sessionid_sign,device_t
export TRADINGVIEW_BROWSER_HEADLESS=true
export TRADINGVIEW_BROWSER_TIMEOUT_MS=120000Файл аутентификации должен находиться за пределами репозитория, быть меньше 1 МиБ и иметь права доступа только для владельца в системах POSIX. Политика по умолчанию импортирует только sessionid, sessionid_sign и device_t с доменов TradingView. Локальное хранилище по умолчанию не импортируется. Значения cookie, значения хранилища и пути к файлам аутентификации никогда не принимаются в качестве аргументов инструментов MCP и не возвращаются в ответах MCP или REST.
Файл состояния хранилища Playwright можно использовать с TRADINGVIEW_BROWSER_AUTH_STATE, когда экспорт cookie недоступен. Применяется тот же список разрешенных cookie. Устанавливайте TRADINGVIEW_BROWSER_AUTH_STORAGE_KEYS только тогда, когда проверенный сценарий требует конкретные ключи локального хранилища; по умолчанию он пуст.
Доступность интерфейса Supercharts, селекторы, экспорт, тарифные планы аккаунтов, права на биржевые данные и статус задержки/реального времени контролируются TradingView и могут меняться независимо от этого проекта. Автоматизация никогда не пытается улучшить тарифный план или совершить покупку.
Подробности и ограничения см. в разделе Браузерные сценарии TradingView.
Отдельный REST API и просмотрщик
REST API является опциональным и не требуется для обычного использования MCP.
npm run serveПо умолчанию он привязывается к 127.0.0.1:4317:
curl http://127.0.0.1:4317/api/health
curl 'http://127.0.0.1:4317/api/price/DEMO:MARKET?timeframe=60&range=20'Установите bearer-токен перед включением платного/настроенного апстрима или предоставлением доступа к чувствительным локальным данным графиков другому локальному процессу:
export MARKET_CHART_API_TOKEN='replace-with-a-long-random-value'
npm run serveПривязка HTTP ограничена loopback-адресами. См. справочник REST API.
Конфигурация
Скопируйте .env.example как образец, но загружайте реальные значения из вашей оболочки, менеджера процессов или хранилища секретов. Приложение не читает файлы .env автоматически.
Переменная | По умолчанию | Назначение |
|
| Только loopback-адрес привязки |
|
| Порт REST/просмотрщика; используйте |
|
| Корневой каталог для CSV, экспорта и захвата |
| не задано | Опциональный bearer-токен REST |
|
| Включить захват PNG локального просмотрщика |
|
| Включить браузерные инструменты Supercharts |
|
| Разрешенный источник TradingView |
| не задано | Путь к внешнему файлу состояния хранилища Playwright |
| не задано | Путь к внешнему экспорту cookie |
|
| Список разрешенных имен cookie; значения остаются во внешнем файле |
| пусто | Опциональный список разрешенных ключей локального хранилища |
|
| Запускать управляемый Chromium в безголовом режиме |
|
| Таймаут браузерных операций, 5-120 секунд |
| не задано | Опциональный ключ совместимого апстрима |
| по умолчанию у провайдера | Опциональный хост совместимого апстрима |
Локальный формат CSV
Импортируемые CSV-файлы должны находиться внутри MARKET_CHART_DATA_ROOT, содержать возрастающие временные метки и соответствовать настроенным ограничениям.
time,open,high,low,close,volume
2026-01-02T00:00:00Z,100,104,99,103,1200000
2026-01-03T00:00:00Z,103,106,101,105,1350000timestamp или date могут заменять time; также принимаются Unix-секунды и миллисекунды.
Модель безопасности
Неактивный процесс MCP через stdio не создает сетевой слушатель.
Локальные HTTP-маршруты привязываются только к loopback и проверяют заголовок
Host.Импортируемые файлы используют изоляцию реальных путей и отклоняют обход через символические ссылки.
Аутентификация браузера читается из одного внешнего файла с правами только для владельца и фильтруется по домену, имени cookie, сроку действия, размеру и опциональным спискам разрешенных ключей локального хранилища.
Схемы запросов MCP и REST не принимают cookie, токены, состояние хранилища или пути к файлам аутентификации.
Браузерные операции сериализуют работу с состоянием интерфейса и отклоняют входные данные инструментов, похожие на учетные данные.
Сгенерированные браузерные артефакты, учетные данные, файлы
.env, трассировки и локальные рыночные данные игнорируются Git.Результаты представляют собой аналитические наблюдения, а не инвестиционные рекомендации или гарантию будущей доходности.
Пожалуйста, сообщайте об уязвимостях в соответствии с SECURITY.md.
Разработка
npm ci
npx playwright install chromium
npm run checknpm run check запускает проверки безопасности публичного релиза, проверку текста на английском языке по всему репозиторию, строгую проверку TypeScript, полный набор тестов Vitest и производственную сборку.
Вклад приветствуется; см. CONTRIBUTING.md. Участвуя, вы соглашаетесь следовать CODE_OF_CONDUCT.md.
Лицензия и атрибуция
Исходный код проекта доступен по лицензии MIT. Встроенный просмотрщик использует TradingView Lightweight Charts под лицензией Apache-2.0; необходимые уведомления находятся в NOTICE, THIRD_PARTY_LICENSES.md и licenses/Apache-2.0.txt.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseAqualityCmaintenanceA type-safe MCP server that enables AI agents to control TradingView Desktop via Chrome DevTools Protocol, allowing chart state reading, symbol/timeframe changes, and OHLCV data fetching.112541MIT
- FlicenseNot gradedqualityCmaintenanceAn MCP server that connects to TradingView Desktop via Chrome DevTools Protocol, enabling chart control, Pine Script development, and a morning brief workflow with AI-driven analysis.254
- FlicenseBqualityCmaintenanceA TradingView-style market research and charting MCP server that provides tools for market data, indicators, watchlists, and local HTML chart rendering without scraping TradingView.9
- AlicenseNot gradedqualityCmaintenanceA local-first MCP server that bridges AI coding agents with MetaTrader 5 for inspection, market data, MQL5 development, compiling, Strategy Tester review, workspace sync, logs, audit trails, demo trading, and carefully gated live trading.MIT
Related MCP Connectors
TradeOS MCP: ticker search, My Agent, chart TA, macro news. npm stdio or HTTP.
Open-source MCP server for Zerodha Kite Connect. Portfolio, market data, backtesting, alerts.
MCP server exposing the Backtest360 engine API as tools for AI agents.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/moeuu/tradingview-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server