Skip to main content
Glama

TradingView MCP

CI License: MIT Node.js 22+

Ein lokaler Model Context Protocol-Server und eine Loopback-REST-API für Marktdaten, deterministische technische Analysen, Diagrammdarstellung und optionale TradingView-Supercharts-Browser-Workflows.

Der Server läuft über stdio und startet seinen lokalen Viewer und Playwright-Browser nur, wenn ein Tool sie benötigt. Hochrangige Verlaufs- und Analysetools schließen den verwalteten Browser standardmäßig automatisch.

[!IMPORTANT] Dies ist ein unabhängiges Open-Source-Projekt. Es ist nicht mit TradingView verbunden, wird von TradingView nicht gesponsert oder unterstützt. TradingView und Lightweight Charts sind Marken von TradingView, Inc. Die Nutzer sind dafür verantwortlich, die Bedingungen von TradingView, Kontoberechtigungen, Börsenberechtigungen und geltende Datenlizenzen einzuhalten.

Funktionen

  • MCP-Tools für Markterkennung, Kurse, OHLCV, Analysen und Diagrammzustand

  • Offizielle TradingView-Screenshots mit einem Aufruf für ein bestimmtes Symbol, Intervall und Datumsbereich

  • Kontext mit historischem Datum in einem Aufruf mit OHLCV, Lücken, Änderungen, Volumen, exportierten Indikatorfeldern, rollierender Performance und technischer Analyse

  • Deterministische SMA-, EMA-, RSI-, MACD-, Bollinger-Bänder-, ATR-, Trend-, Signal- und Unterstützungs-/Widerstandsberechnungen

  • Lokaler Lightweight-Charts-Viewer mit PNG-Erfassung

  • CSV, Inline-OHLCV, Demodaten und optionale konfigurierte Upstream-Unterstützung

  • Atomare Indikator-, Niveau-, benutzerdefinierte Serien-, Preiszonen- und Marker-Overlays

  • Opt-in-Playwright-Workflows für kontobasierte TradingView-Supercharts-Navigation, CSV-Export, Indikatoren und Screenshots

  • Kompakte MCP-Ergebnisse standardmäßig, damit große OHLCV-Arrays den Modellkontext nicht unnötig verbrauchen

  • Nur-Loopback-HTTP-Bindung, Pfadeindämmung, Eingabevalidierung, Anmeldedatenfilterung und Fail-Closed-Browserprüfungen

Related MCP server: TradingView MCP Jackson

Architektur

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

Der lokale Viewer ist eine deterministische Rendering-Oberfläche; er ist kein Klon proprietärer TradingView-Chartfunktionen. Siehe die Kompatibilitätsgrenze.

Anforderungen

  • Node.js 22 oder neuer

  • npm

  • Chromium, installiert über Playwright, wenn Screenshot- oder Browsertools verwendet werden

Aus dem Quellcode installieren

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

Für Linux-CI oder einen Rechner ohne Chromium-Systemabhängigkeiten:

npx playwright install --with-deps chromium

Einen MCP-Client verbinden

TradingView MCP ist clientunabhängig. Es verwendet den Standard-MCP-stdio-Transport und ruft keine clientspezifischen APIs auf. Jeder MCP-Client, der einen lokalen Prozess starten kann, kann verwendet werden:

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

Viele Desktop- und Editor-Clients verwenden diese gemeinsame Konfigurationsform:

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

Passen Sie die äußeren Konfigurationsschlüssel bei Bedarf an Ihren Client an; Befehl, Argumente, Umgebung und MCP-Protokoll bleiben gleich. Starten Sie den Client nach einer Konfigurationsänderung neu. MARKET_CHART_PORT=0 wählt einen ephemeren Viewer-Port und vermeidet einen dauerhaft lauschenden Dienst.

Siehe MCP-Client-Einrichtung und -Kompatibilität für Transportverhalten, Lebenszyklus und Fehlerbehebung.

Empfohlener MCP-Workflow

  1. Rufen Sie market_get_capabilities auf, wenn die Verfügbarkeit des Anbieters unklar ist.

  2. Verwenden Sie tradingview_get_day für umfassende Informationen zu einem Symbol an einem bestimmten Datum.

  3. Verwenden Sie tradingview_capture_period für ein offizielles Supercharts-PNG, das genaue Kalenderdaten abdeckt.

  4. Verwenden Sie tradingview_analyze_symbol für einen Aufruf mit aktueller Historie plus deterministischer Analyse.

  5. Verwenden Sie tradingview_get_history, wenn nur die aktuelle Historie benötigt wird.

  6. Verwenden Sie chart_import_csv oder chart_set_data für lokale/vom Benutzer bereitgestellte Daten.

  7. Verwenden Sie chart_analyze, chart_apply_overlays und chart_snapshot für lokale Analyse und Visualisierung.

Beispielaufrufe:

{
  "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 gibt einen expliziten no_session_bar-Status für Wochenenden, Feiertage und nicht verfügbare Daten zurück, anstatt stillschweigend eine nahegelegene Sitzung zu ersetzen. An einem passenden Datum werden Sitzungs-OHLCV, vorherige und nächste Balken (sofern geladen), Änderungen gegenüber dem vorherigen Schlusskurs und der Eröffnungslücke, die Tagesspanne, die rollierende 5/20/50/200-Perioden-Performance, deterministische Indikatoren und Signale sowie alle zusätzlichen Indikatorspalten aus dem offiziellen TradingView-Chartexport zurückgegeben. Legen Sie ein Intraday-interval und includeBars:true fest, um alle diesem Datum zugeordneten exportierten Balken zu erhalten.

Hochrangige TradingView-Tools schließen den Browser standardmäßig. Setzen Sie includeBars: true nur, wenn Rohbalken in der MCP-Antwort erforderlich sind, und keepBrowserOpen: true nur für sofortige Folge-Browser-Tools.

Der Server stellt sowohl hochrangige als auch granulare Tools bereit. Clients, die eine enabled_tools-Zulassungsliste unterstützen, können nur die für einen bestimmten Workflow erforderlichen Tools verfügbar machen.

Optionaler TradingView-Browser-Workflow

Die Browserautomatisierung ist standardmäßig deaktiviert. Ein Cookie-Export ist die bevorzugte Authentifizierungsquelle, da er nur die erforderlichen Sitzungscookies enthalten kann. Fügen Sie Anmeldeinformationen niemals in MCP-Argumente, Repository-Dateien, Client-Konfigurationen oder Eingabeaufforderungen ein.

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

Die Authentifizierungsdatei muss sich außerhalb des Repositorys befinden, kleiner als 1 MiB sein und auf POSIX-Systemen über Nur-Besitzer-Berechtigungen verfügen. Die Standardrichtlinie importiert nur sessionid, sessionid_sign und device_t von TradingView-Domains. Der lokale Speicher wird standardmäßig nicht importiert. Cookie-Werte, Speicherwerte und Pfade zu Authentifizierungsdateien werden niemals als MCP-Toolargumente akzeptiert oder von MCP- oder REST-Antworten zurückgegeben.

Eine Playwright-Speicherzustandsdatei kann mit TRADINGVIEW_BROWSER_AUTH_STATE verwendet werden, wenn kein Cookie-Export verfügbar ist. Dieselbe Cookie-Zulassungsliste gilt. Setzen Sie TRADINGVIEW_BROWSER_AUTH_STORAGE_KEYS nur, wenn ein verifizierter Workflow bestimmte lokale Speicherschlüssel erfordert; der Standardwert ist leer.

Die Verfügbarkeit der Supercharts-Benutzeroberfläche, Selektoren, Exporte, Kontopläne, Börsenberechtigungen und der Verzögerungs-/Echtzeitstatus werden von TradingView gesteuert und können sich unabhängig von diesem Projekt ändern. Die Automatisierung versucht niemals ein Konto-Upgrade oder einen Kauf.

Siehe TradingView-Browser-Workflows für Details und Einschränkungen.

Eigenständige REST-API und Viewer

Die REST-API ist optional und muss für die normale MCP-Nutzung nicht ausgeführt werden.

npm run serve

Sie bindet standardmäßig an 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'

Legen Sie ein Bearer-Token fest, bevor Sie einen kostenpflichtigen/konfigurierten Upstream aktivieren oder vertrauliche lokale Chartdaten für einen anderen lokalen Prozess verfügbar machen:

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

Die HTTP-Bindung ist auf Loopback-Adressen beschränkt. Siehe die REST-API-Referenz.

Konfiguration

Kopieren Sie .env.example als Referenz, laden Sie echte Werte jedoch aus Ihrer Shell, Ihrem Prozessmanager oder Ihrem Secret-Store. Die Anwendung liest .env-Dateien nicht automatisch.

Variable

Standard

Zweck

MARKET_CHART_HOST

127.0.0.1

Nur Loopback-Bindeadresse

MARKET_CHART_PORT

4317

REST-/Viewer-Port; verwenden Sie 0 für einen ephemeren MCP-Viewer

MARKET_CHART_DATA_ROOT

./data

Enthaltenes CSV-, Export- und Erfassungsverzeichnis

MARKET_CHART_API_TOKEN

nicht gesetzt

Optionales REST-Bearer-Token

MARKET_CHART_SCREENSHOTS

true

Lokale Viewer-PNG-Erfassung aktivieren

TRADINGVIEW_BROWSER_ENABLED

false

Supercharts-Browser-Tools aktivieren

TRADINGVIEW_BROWSER_BASE_URL

https://www.tradingview.com

Zulässiger TradingView-Ursprung

TRADINGVIEW_BROWSER_AUTH_STATE

nicht gesetzt

Externer Playwright-Speicherzustandspfad

TRADINGVIEW_BROWSER_COOKIE_FILE

nicht gesetzt

Externer Cookie-Exportpfad

TRADINGVIEW_BROWSER_AUTH_COOKIE_NAMES

sessionid,sessionid_sign,device_t

Cookie-Namens-Zulassungsliste; Werte bleiben in der externen Datei

TRADINGVIEW_BROWSER_AUTH_STORAGE_KEYS

leer

Opt-in-Zulassungsliste für lokale Speicherschlüssel

TRADINGVIEW_BROWSER_HEADLESS

true

Verwaltetes Chromium im Headless-Modus ausführen

TRADINGVIEW_BROWSER_TIMEOUT_MS

30000

Browser-Timeout, 5-120 Sekunden

TRADINGVIEW_RAPIDAPI_KEY

nicht gesetzt

Optionaler kompatibler Upstream-Schlüssel

TRADINGVIEW_RAPIDAPI_HOST

Standard des Anbieters

Optionaler kompatibler Upstream-Host

Lokales CSV-Format

CSV-Importe müssen innerhalb von MARKET_CHART_DATA_ROOT aufgelöst werden, aufsteigende Zeitstempel enthalten und innerhalb der konfigurierten Grenzen bleiben.

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 oder date können time ersetzen; Unix-Sekunden und -Millisekunden werden ebenfalls akzeptiert.

Sicherheitsmodell

  • Kein Netzwerk-Listener wird von einem ruhenden stdio-MCP-Prozess erstellt.

  • Lokale HTTP-Routen binden nur an Loopback und validieren den Host-Header.

  • Importierte Dateien verwenden eine echte Pfadeindämmung und lehnen Symlink-Traversierung ab.

  • Die Browserauthentifizierung wird aus einer einzigen externen Datei mit Nur-Besitzer-Berechtigung gelesen und nach Domäne, Cookie-Name, Ablauf, Größe und optionalen Zulassungslisten für lokale Speicherschlüssel gefiltert.

  • MCP- und REST-Anfrageschemata akzeptieren keine Cookies, Token, Speicherzustände oder Pfade zu Authentifizierungsdateien.

  • Browseroperationen serialisieren zustandsbehaftete UI-Arbeit und lehnen anmeldeinformationsähnliche Tool-Eingaben ab.

  • Generierte Browser-Artefakte, Anmeldeinformationen, .env-Dateien, Ablaufverfolgungen und lokale Marktdaten werden von Git ignoriert.

  • Ergebnisse sind analytische Beobachtungen und keine Anlageberatung oder Garantie für zukünftige Wertentwicklungen.

Bitte melden Sie Sicherheitslücken gemäß SECURITY.md.

Entwicklung

npm ci
npx playwright install chromium
npm run check

npm run check führt Sicherheitsprüfungen für die öffentliche Veröffentlichung, eine repositoryweite Nur-Englisch-Textvalidierung, strenge TypeScript-Prüfungen, die vollständige Vitest-Suite und den Produktions-Build aus.

Beiträge sind willkommen; siehe CONTRIBUTING.md. Durch die Teilnahme stimmen Sie der Einhaltung von CODE_OF_CONDUCT.md zu.

Lizenz und Namensnennung

Der Quellcode des Projekts ist unter der MIT-Lizenz verfügbar. Der gebündelte Viewer verwendet TradingView Lightweight Charts unter Apache-2.0; die erforderlichen Hinweise finden Sie in NOTICE, THIRD_PARTY_LICENSES.md und 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