Skip to main content
Glama

TradingView MCP

CI License: MIT Node.js 22+

Un servidor Model Context Protocol local-first y API REST de bucle invertido para datos de mercado, análisis técnico determinista, renderizado de gráficos y flujos de trabajo opcionales del navegador TradingView Supercharts.

El servidor se ejecuta sobre stdio y solo inicia su visor local y los navegadores Playwright cuando una herramienta los necesita. Las herramientas de alto nivel de historial y análisis cierran el navegador administrado automáticamente de forma predeterminada.

[!IMPORTANT] Este es un proyecto independiente de código abierto. No está afiliado, patrocinado ni respaldado por TradingView. TradingView y Lightweight Charts son marcas comerciales de TradingView, Inc. Los usuarios son responsables de cumplir con los términos de TradingView, los permisos de cuenta, los derechos de acceso a bolsas y las licencias de datos aplicables.

Características

  • Herramientas MCP para descubrimiento de mercado, cotizaciones, OHLCV, análisis y estado de gráficos

  • Capturas de pantalla oficiales de TradingView en una sola llamada para un símbolo, intervalo y rango de fechas exactos

  • Contexto de fecha histórica en una sola llamada con OHLCV, huecos, cambios, volumen, campos de indicadores exportados, rendimiento móvil y análisis técnico

  • Cálculos deterministas de SMA, EMA, RSI, MACD, Bandas de Bollinger, ATR, tendencia, señal y soporte/resistencia

  • Visor local Lightweight Charts con captura PNG

  • CSV, OHLCV en línea, datos de demostración y soporte ascendente opcional configurado

  • Superposiciones atómicas de indicadores, niveles, series personalizadas, zonas de precios y marcadores

  • Flujos de trabajo Playwright opcionales para navegación, exportación CSV, indicadores y capturas de pantalla de TradingView Supercharts autorizados por cuenta

  • Resultados MCP compactos de forma predeterminada para que las matrices OHLCV grandes no consuman contexto del modelo innecesariamente

  • Enlace HTTP solo de bucle invertido, contención de rutas, validación de entradas, filtrado de credenciales y comprobaciones de navegador con cierre seguro

Related MCP server: TradingView MCP Jackson

Arquitectura

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

El visor local es una superficie de renderizado determinista; no es un clon de las funciones propietarias de gráficos de TradingView. Consulte el límite de compatibilidad.

Requisitos

  • Node.js 22 o más reciente

  • npm

  • Chromium instalado a través de Playwright cuando se utilizan herramientas de captura de pantalla o navegador

Instalar desde el código fuente

git clone https://github.com/moeuu/tradingview-mcp.git
cd tradingview-mcp
npm ci
npx playwright install chromium
npm run build

Para CI de Linux o una máquina sin dependencias de sistema de Chromium:

npx playwright install --with-deps chromium

Conectar un cliente MCP

TradingView MCP es independiente del cliente. Utiliza el transporte estándar MCP stdio y no llama a API específicas del cliente. Cualquier cliente MCP que pueda lanzar un proceso local puede usar:

node /absolute/path/to/tradingview-mcp/dist/mcp.js

Muchos clientes de escritorio y editores usan esta forma de configuración común:

{
  "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"
      }
    }
  }
}

Adapte las claves de configuración externas a su cliente si es necesario; el comando, los argumentos, el entorno y el protocolo MCP siguen siendo los mismos. Reinicie el cliente después de cambiar su configuración. MARKET_CHART_PORT=0 selecciona un puerto de visor efímero y evita un servicio que escuche permanentemente.

Consulte Configuración y compatibilidad de clientes MCP para conocer el comportamiento del transporte, el ciclo de vida y la resolución de problemas.

Flujo de trabajo MCP recomendado

  1. Llame a market_get_capabilities cuando la disponibilidad del proveedor no esté clara.

  2. Use tradingview_get_day para obtener información completa sobre un símbolo en una fecha específica.

  3. Use tradingview_capture_period para un PNG oficial de Supercharts que cubra fechas de calendario exactas.

  4. Use tradingview_analyze_symbol para una llamada única de historial reciente más análisis determinista.

  5. Use tradingview_get_history cuando solo se necesite historial reciente.

  6. Use chart_import_csv o chart_set_data para datos locales/proporcionados por el usuario.

  7. Use chart_analyze, chart_apply_overlays y chart_snapshot para análisis y visualización locales.

Ejemplos de llamadas:

{
  "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 devuelve un estado explícito no_session_bar para fines de semana, días festivos y fechas no disponibles en lugar de sustituir silenciosamente una sesión cercana. En una fecha coincidente devuelve OHLCV de sesión, barras anterior y siguiente cuando están cargadas, cambios de cierre anterior y hueco de apertura, rango intradía, rendimiento móvil de 5/20/50/200 períodos, indicadores y señales deterministas, y cada columna de indicadores adicional presente en la exportación oficial del gráfico de TradingView. Establezca un interval intradía y includeBars:true para recibir todas las barras exportadas asignadas a esa fecha.

Las herramientas de alto nivel de TradingView cierran el navegador de forma predeterminada. Establezca includeBars: true solo cuando se requieran barras sin procesar en la respuesta MCP, y keepBrowserOpen: true solo para herramientas de navegador de seguimiento inmediato.

El servidor expone tanto herramientas de alto nivel como granulares. Los clientes que admiten una lista de permitidos enabled_tools pueden exponer solo las herramientas necesarias para un flujo de trabajo determinado.

Flujo de trabajo opcional del navegador TradingView

La automatización del navegador está deshabilitada de forma predeterminada. Una exportación de cookies es la fuente de autenticación preferida porque puede contener solo las cookies de sesión requeridas. Nunca pegue valores de credenciales en argumentos MCP, archivos de repositorio, configuración de cliente o indicaciones.

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

El archivo de autenticación debe permanecer fuera del repositorio, ser más pequeño que 1 MiB y tener permisos de solo propietario en sistemas POSIX. La política predeterminada importa solo sessionid, sessionid_sign y device_t de dominios de TradingView. El almacenamiento local no se importa de forma predeterminada. Los valores de cookies, los valores de almacenamiento y las rutas de archivos de autenticación nunca se aceptan como argumentos de herramientas MCP ni se devuelven en respuestas MCP o REST.

Se puede usar un archivo de estado de almacenamiento de Playwright con TRADINGVIEW_BROWSER_AUTH_STATE cuando no hay una exportación de cookies disponible. Se aplica la misma lista de permitidos de cookies. Establezca TRADINGVIEW_BROWSER_AUTH_STORAGE_KEYS solo cuando un flujo de trabajo verificado requiera claves específicas de almacenamiento local; su valor predeterminado está vacío.

La disponibilidad de la interfaz de Supercharts, los selectores, las exportaciones, los planes de cuenta, los derechos de acceso a bolsas y el estado de retraso/en vivo están controlados por TradingView y pueden cambiar independientemente de este proyecto. La automatización nunca intenta una actualización o compra de cuenta.

Consulte Flujos de trabajo del navegador TradingView para obtener detalles y limitaciones.

API REST independiente y visor

La API REST es opcional y no necesita ejecutarse para el uso normal de MCP.

npm run serve

Se vincula a 127.0.0.1:4317 de forma predeterminada:

curl http://127.0.0.1:4317/api/health
curl 'http://127.0.0.1:4317/api/price/DEMO:MARKET?timeframe=60&range=20'

Establezca un token de portador antes de habilitar un proveedor ascendente de pago/configurado o exponer datos de gráficos locales confidenciales a otro proceso local:

export MARKET_CHART_API_TOKEN='replace-with-a-long-random-value'
npm run serve

El enlace HTTP está restringido a direcciones de bucle invertido. Consulte la referencia de la API REST.

Configuración

Copie .env.example como referencia, pero cargue valores reales desde su shell, administrador de procesos o almacén de secretos. La aplicación no lee archivos .env automáticamente.

Variable

Predeterminado

Propósito

MARKET_CHART_HOST

127.0.0.1

Solo dirección de enlace de bucle invertido

MARKET_CHART_PORT

4317

Puerto REST/visor; use 0 para un visor MCP efímero

MARKET_CHART_DATA_ROOT

./data

Raíz contenida de CSV, exportación y captura

MARKET_CHART_API_TOKEN

sin establecer

Token de portador REST opcional

MARKET_CHART_SCREENSHOTS

true

Habilitar captura PNG del visor local

TRADINGVIEW_BROWSER_ENABLED

false

Habilitar herramientas de navegador Supercharts

TRADINGVIEW_BROWSER_BASE_URL

https://www.tradingview.com

Origen permitido de TradingView

TRADINGVIEW_BROWSER_AUTH_STATE

sin establecer

Ruta externa de estado de almacenamiento de Playwright

TRADINGVIEW_BROWSER_COOKIE_FILE

sin establecer

Ruta externa de exportación de cookies

TRADINGVIEW_BROWSER_AUTH_COOKIE_NAMES

sessionid,sessionid_sign,device_t

Lista de permitidos de nombres de cookies; los valores permanecen en el archivo externo

TRADINGVIEW_BROWSER_AUTH_STORAGE_KEYS

vacío

Lista de permitidos de claves de almacenamiento local opcional

TRADINGVIEW_BROWSER_HEADLESS

true

Ejecutar Chromium administrado sin interfaz

TRADINGVIEW_BROWSER_TIMEOUT_MS

30000

Tiempo de espera de operación del navegador, 5-120 segundos

TRADINGVIEW_RAPIDAPI_KEY

sin establecer

Clave ascendente compatible opcional

TRADINGVIEW_RAPIDAPI_HOST

predeterminado del proveedor

Host ascendente compatible opcional

Formato CSV local

Las importaciones CSV deben resolverse dentro de MARKET_CHART_DATA_ROOT, contener marcas de tiempo ascendentes y permanecer dentro de los límites configurados.

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,1350000

timestamp o date pueden reemplazar a time; también se aceptan segundos y milisegundos Unix.

Modelo de seguridad

  • Un proceso MCP stdio inactivo no crea ningún listener de red.

  • Las rutas HTTP locales se vinculan solo a bucle invertido y validan el encabezado Host.

  • Los archivos importados usan contención de ruta real y rechazan el recorrido de enlaces simbólicos.

  • La autenticación del navegador se lee de un archivo externo de solo propietario y se filtra por dominio, nombre de cookie, caducidad, tamaño y listas de permitidos de claves de almacenamiento local opcionales.

  • Los esquemas de solicitud MCP y REST no aceptan cookies, tokens, estado de almacenamiento ni rutas de archivos de autenticación.

  • Las operaciones del navegador serializan el trabajo de interfaz con estado y rechazan entradas de herramientas similares a credenciales.

  • Los artefactos generados del navegador, credenciales, archivos .env, trazas y datos de mercado locales son ignorados por Git.

  • Los resultados son observaciones analíticas, no asesoramiento de inversión ni garantía de rendimiento futuro.

Informe las vulnerabilidades según SECURITY.md.

Desarrollo

npm ci
npx playwright install chromium
npm run check

npm run check ejecuta comprobaciones de seguridad de publicación pública, validación de texto solo en inglés en todo el repositorio, comprobación estricta de TypeScript, la suite completa de Vitest y la compilación de producción.

Las contribuciones son bienvenidas; consulte CONTRIBUTING.md. Al participar, acepta seguir CODE_OF_CONDUCT.md.

Licencia y atribución

El código fuente del proyecto está disponible bajo la Licencia MIT. El visor incluido usa TradingView Lightweight Charts bajo Apache-2.0; los avisos requeridos están en NOTICE, THIRD_PARTY_LICENSES.md y licenses/Apache-2.0.txt.

Install Server
A
license - permissive license
B
quality
A
maintenance

Maintenance

Maintainers
Response time
0dRelease cycle
4Releases (12mo)
Commit activity

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

  • A
    license
    A
    quality
    C
    maintenance
    A 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.
    11
    254
    1
    MIT
  • F
    license
    B
    quality
    C
    maintenance
    A 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
  • A
    license
    Not graded
    quality
    C
    maintenance
    A 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

View all related MCP servers

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.

View all MCP Connectors

Latest Blog Posts

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