MCP TradingView Server
MCP TradingView Server
MCP-сервер (Model Context Protocol) на Python, который предоставляет данные рынка TradingView MCP-клиенту — Claude Desktop, claude.ai или любому другому совместимому клиенту. Данные получаются через tvdatafeed (OHLCV) и tradingview-ta (скринер).
Предоставляемые инструменты
Инструмент MCP | Описание |
| Исторические свечи OHLCV (акции, криптовалюты, форекс, фьючерсы) |
| Последняя свеча + изменение в % по сравнению с предыдущей |
| Технические индикаторы, мультитаймфреймовый контекст и композитная оценка |
| Фильтрация по рынку, объёму и RSI на предопределённом наборе инструментов |
tv_get_indicators подробнее
Рассчитываемые индикаторы: RSI, MACD, Bollinger Bands (с обнаружением сжатия), EMA, SMA, ATR (с уровнями стопов для длинных и коротких позиций), Стохастик, ADX (+DI/−DI), OBV, средний объём и коэффициент объёма за 20 периодов, а также обнаружение расхождений RSI.
Три опции, отключённые по умолчанию:
Параметр | Эффект |
| Добавляет недельный контекст: |
| Рассчитывает относительную силу за 1 и 3 месяца по сравнению с этим бенчмарком |
| Рассчитывает композитную техническую оценку в |
Допустимые интервалы: 1, 3, 5, 15, 30, 45 (минут), 1H, 2H,
3H, 4H, 1D, 1W, 1M.
Охват скринера
tvdatafeed не предоставляет API скринера. Поэтому tv_screener перебирает жёстко заданный предопределённый набор в MARKET_SYMBOLS (src/mcp_tradingview/client.py) и вычисляет индикаторы по каждому символу через tradingview-ta:
Рынок | Охватываемый набор |
| 29 символов Euronext Paris — CAC 40, несколько технологических midcaps, ETF, доступные для PEA |
| 20 голубых фишек Nasdaq / NYSE |
| 8 основных пар Binance |
| 6 основных пар |
Перечисление ScreenerMarket также принимает futures, india, brazil,
australia, canada, europe и hongkong, но ни для одного из этих рынков не задан набор инструментов: вызов возвращает пустой список. Чтобы активировать их, достаточно добавить запись в MARKET_SYMBOLS.
Related MCP server: tradingview-mcp
Архитектура
Client MCP (Claude Desktop, claude.ai…)
│
├── stdio ──► process local
└── SSE ──► serveur HTTP (Starlette + uvicorn)
│
├──► tvdatafeed : bougies OHLCV
└──► tradingview-ta : screener
│
└──► cache TTL en mémoireПредварительные требования
Python ≥ 3.11
Учётная запись TradingView необязательна — анонимный доступ работает, но с более строгими лимитами частоты запросов.
SDK MCP закреплён на версии
< 2.0.0: версия 2.x удаляет декораторы@server.list_tools()/@server.call_tool()и переименовываетTool.inputSchemaвTool.input_schema. Прежде чем поднять это ограничение, необходима миграция.
Установка
git clone https://github.com/mathieubernardi/tradingview_mcp.git
cd tradingview_mcp
pip install -e ".[dev]"
cp .env.example .env # puis éditer .envКонфигурация
Все переменные имеют префикс TV_ и могут передаваться либо через файл .env, либо через окружение.
Переменная | По умолчанию | Описание |
| (пусто) | Идентификатор TradingView (необязательно) |
| (пусто) | Пароль TradingView (необязательно) |
|
|
|
|
| Хост SSE-сервера |
|
| Порт SSE-сервера (1024–65535) |
|
| Площадка по умолчанию, если она не указана в вызове |
|
| Количество свечей по умолчанию |
|
| Максимальное количество свечей |
|
| Время жизни кэша в памяти ( |
|
|
|
Двойной префикс в TV_TV_USERNAME / TV_TV_PASSWORD сделан намеренно: префикс окружения TV_ добавляется к полям tv_username / tv_password.
Запуск сервера
Две эквивалентные точки входа: консольный скрипт mcp-tradingview и модуль python -m mcp_tradingview. Второй не зависит от PATH, что делает его более надёжным в Windows.
# Linux / macOS — stdio
TV_TRANSPORT=stdio python -m mcp_tradingview
# Linux / macOS — SSE
TV_TRANSPORT=sse python -m mcp_tradingview# Windows PowerShell — stdio
$env:TV_TRANSPORT = "stdio"; python -m mcp_tradingview
# Windows PowerShell — SSE
$env:TV_TRANSPORT = "sse"; python -m mcp_tradingviewИнтеграция с Claude Desktop (stdio)
Добавьте в claude_desktop_config.json — ~/Library/Application Support/Claude/ в macOS, %APPDATA%\Claude\ в Windows:
{
"mcpServers": {
"tradingview": {
"command": "python",
"args": ["-m", "mcp_tradingview"],
"env": {
"TV_TRANSPORT": "stdio",
"TV_CACHE_TTL_SECONDS": "60"
}
}
}
}Если окружение Python не является окружением по умолчанию, замените "python" на абсолютный путь к интерпретатору virtualenv. Чтобы использовать учётную запись TradingView, добавьте TV_TV_USERNAME и TV_TV_PASSWORD в блок env.
В режиме stdio сессия TradingView устанавливается лениво при первом вызове инструмента: рукопожатие MCP отвечает немедленно, и клиент не сталкивается с тайм-аутом при запуске.
Интеграция SSE
TV_TRANSPORT=sse TV_PORT=8765 python -m mcp_tradingviewEndpoint | Роль |
| SSE-поток, который нужно указать на стороне MCP-клиента |
| Канал обратной передачи сообщений клиента |
| Проверка живости, возвращает |
Разработка
pytest tests/ -v # tests
ruff check src/ tests/ # lint
mypy src/ # type checking (strict)Известные ограничения
tvdatafeed— неофициальный клиент, который полагается на веб-эндпоинты TradingView: он может перестать работать без предупреждения.tv_screenerне сканирует весь рынок, а только предопределённый набор инструментов, описанный выше.Без премиум-аккаунта TradingView данные могут задерживаться на несколько минут.
Анонимный доступ имеет значительно более строгие лимиты частоты запросов, чем авторизованная учётная запись.
Ошибки инструмента возвращаются клиенту в виде JSON
{"error": ..., "tool": ..., "arguments": ...}, а не передаются как ошибки протокола.
Структура проекта
tradingview_mcp/
├── src/mcp_tradingview/
│ ├── __init__.py # métadonnées du paquet (__version__)
│ ├── __main__.py # entrée `python -m mcp_tradingview`
│ ├── config.py # settings (pydantic-settings, préfixe TV_)
│ ├── models.py # schémas Pydantic d'entrée / sortie
│ ├── client.py # client TradingView, indicateurs, cache TTL
│ ├── tools.py # définition JSON Schema + dispatch des outils
│ └── server.py # serveur MCP (stdio + SSE) et entrée console
├── tests/
│ └── test_server.py
├── pyproject.toml
├── .env.example
├── .gitignore
├── LICENSE
└── README.mdЛицензия
Распространяется под лицензией MIT. См. файл LICENSE.
This server cannot be installed
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
- FlicenseNot gradedqualityCmaintenanceExposes TradingView technical indicators and OHLCV data through MCP tools for Claude Desktop or any MCP-aware client.23
- FlicenseNot gradedqualityDmaintenanceA Model Context Protocol (MCP) server that lets AI assistants interact with TradingView for real-time quotes, historical OHLCV data, screener, alerts, watchlists, news, chart layouts, Pine scripts, and more. Connect it to Claude Desktop, Cursor, or any MCP-compatible client to control TradingView via natural language.5525
- AlicenseAqualityBmaintenanceMCP server for TradingView's market screener API, enabling stock, forex, crypto, and ETF screening, technical analysis, and investor workflows via Claude or CLI.1286749MIT
- 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.552133MIT
Related MCP Connectors
Query SEC EDGAR filings, XBRL financials, and company data through MCP. STDIO & Streamable HTTP.
MCP server for OpenMM — exposes market data, account, trading, and strategy tools to AI agents
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/mathieubernardi/tradingview_mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server