Finviz MCP
Finviz MCP
MCP-Server, der Claude (oder jedem anderen MCP-Client) Zugriff auf Finviz-Aktiendaten gewährt: Kennzahlen einer einzelnen Aktie, Nachrichten und Screener-Suchen sowie korrekte historische Kursdaten (Yahoo Finance). Die Daten werden live mit den Bibliotheken finvizfinance und yfinance abgerufen, es sind keine API-Schlüssel erforderlich.
Werkzeuge
get_stock(ticker)– Finviz-Kennzahlen einer einzelnen Aktie (KGV, Marktkapitalisierung, Margen, Renditen usw.)get_stock_news(ticker)– Aktuelle Nachrichtenüberschriften der Aktieget_price_history(ticker, days=7)– Korrekte tägliche Verlaufsdaten (Eröffnung/Höchst/Tiefst/Schluss/Volumen) von Yahoo Finance für bis zu 365 Tage, sowie eine fertige Analyse, welcher Tag der beste Kauftag gewesen wäre (niedrigster Preis und beste Rendite im Vergleich zum letzten Schlusskurs). Finviz selbst hat keine Verlaufsdaten-API, nur eine aktuelle Momentaufnahme und ein statisches Chart-Bild.screen_stocks(...)– Finviz-Screener mit natürlichen Parametern (market_cap,sector,pe_max,rsi,dividend_yield_min,signal, ...). Claude muss nicht die internen Filterbezeichnungen von Finviz erklären – der Server übersetzt die Parameter automatisch in den nächstgelegenen von Finviz unterstützten Wert. Funktioniert nur, wenn lokal ausgeführt, nicht auf einem gehosteten Cloud-Server – siehe Einschränkungen.list_screener_filters(search=None)/list_screener_signals()– Hilfsmittel für Claude, falls es einen Filter benötigt, der vonscreen_stocksnoch nicht mit einem benannten Parameter abgedeckt wird. Der gefundene Wert kann als Parameterscreen_stocks(extra_filters={...})übergeben werden.
Die Parameter von screen_stocks werden stets dem nächstgelegenen von Finviz bereitgestellten „Korb“ zugeordnet (z. B. pe_max=18 → „Unter 20“), da der Finviz-Screener nur vordefinierte Wertebereiche und keine beliebigen Zahlen unterstützt.
Related MCP server: Yahoo Finance MCP Server
1. Lokales Testen
Erfordert Python 3.10+:
pip install -r requirements.txt
python server.pyDer Server startet unter http://localhost:8000/mcp (Streamable HTTP).
End-to-End getestet in dieser Umgebung (Installation, Start,
initialize-Handshake und alle fünf Werkzeuge mit echten Finviz-Daten). Während des Tests stellte sich heraus, dassfinvizfinance1.3.0 von PyPI noch nicht auf dem neuesten Stand des überarbeiteten Finviz-Seitenlayouts war:get_stockstürzte vollständig ab (die alte CSS-Klassequote-linksheißt jetztquote-header_categories, mit anderem Inhalt), und in der Tickerspalte vonscreen_stocksbefand sich ein zusätzlicher Anfangsbuchstabe (z. B. „NVDA“ → „NNVDA“, aufgrund des neuen Logoplatzhalters von Finviz).server.pybehebt beide Probleme direkt (siehe Kommentar am Anfang der Datei) – falls Finviz seine Seite erneut ändert, sollten diese Korrekturen zuerst überprüft werden.
Falls Python nicht auf dem Rechner installiert ist, aber Docker vorhanden ist, können Sie ohne lokale Python-Installation testen:
docker build -t finviz-mcp .
docker run -p 8000:8000 finviz-mcpEin schneller Funktionstest von der Befehlszeile aus (erfordert curl und dass der Server läuft):
curl -X POST http://localhost:8000/mcp -H "Content-Type: application/json" -H "Accept: application/json, text/event-stream" -d "{\"jsonrpc\":\"2.0\",\"id\":1,\"method\":\"tools/list\"}"In der Antwort sollten sechs Werkzeuge angezeigt werden: get_stock, get_stock_news, get_price_history, screen_stocks, list_screener_filters, list_screener_signals.
2. Veröffentlichung (z. B. Render)
Übertragen Sie dieses Verzeichnis in Ihr eigenes Git-Repository (GitHub/GitLab).
Render → Neu + → Webdienst → Repository verbinden.
Render erkennt die
Dockerfileautomatisch. Es sind keine separaten Umgebungsvariablen erforderlich – der Server liest den Port aus der von Render gesetztenPORT-Variable.Nach der Veröffentlichung erhalten Sie eine Adresse wie
https://finviz-mcp.onrender.com. Der MCP-Endpunkt befindet sich dahinter unter/mcp, also:https://finviz-mcp.onrender.com/mcp.
Railway, Fly.io usw. funktionieren nach dem gleichen Prinzip (Dockerfile-basiertes Python-Hosting, Umgebungsvariable PORT).
3. Verbindung mit Claude
Claude → Einstellungen → Connectors → Benutzerdefinierten Connector hinzufügen → MCP-URL einfügen (https://<eigene-adresse>/mcp).
Claude unterstützt Remote-MCP-Server über Streamable HTTP, daher funktioniert dies ohne Weiteres.
4. Beispielaufforderungen
„Hol mir die Finviz-Grunddaten für NVDA.“
„Finde überverkaufte Technologieaktien mit einer Marktkapitalisierung über 10 Mrd. USD.“
„Zeige mir 15 Large-Cap-Dividendenaktien mit einer Rendite über 4 % und einem KGV unter 20.“
„Was sind die neuesten Nachrichten zu TSLA?“
„Finde Aktien, die heute als Top-Gewinner markiert sind und ein durchschnittliches Volumen über 1 Mio. haben.“
Einschränkungen
screen_stocks(undlist_screener_filters/list_screener_signals) funktioniert nicht auf einem gehosteten Cloud-Server (getestet auf Render): Finviz gibt einen 403 Forbidden speziell für den Screener-Endpunkt (finviz.com/screener.ashx) von Rechenzentrums-IP-Adressen zurück, obwohlget_stock/get_stock_news/get_price_historyvom selben Server völlig normal funktionieren (diese verwenden andere, weniger geschützte Endpunkte). Dies ließ sich nicht durch Anpassen der HTTP-Header beheben – es scheint sich um eine bewusste Sperre von Finviz für Rechenzentrums-IPs speziell für den Screener zu handeln. Wenn Sie die Funktionscreen_stocksbenötigen, führen Sie den Server lokal aus (python server.py) und verbinden Sie sich z. B. über einencloudflared/ngrok-Tunnel, sodass die Anfragen von der IP Ihres Heimnetzwerks ausgehen.Die Daten werden von den Websites von Finviz/Yahoo Finance gescrapt (keine offiziellen API-Schlüssel), daher kann die Funktionalität beeinträchtigt werden, wenn diese die Struktur ihrer Seiten ändern.
screen_stocksbegrenzt die Ergebnisse standardmäßig auf 20 und maximal 50 Zeilen, damit die Anfrage schnell bleibt.get_price_historybegrenzt den Parameterdaysauf maximal 365.Enthält keine Authentifizierung – wenn der Dienst öffentlich im Internet verfügbar ist, kann jeder, der die URL kennt, darauf zugreifen. Die Daten sind öffentlich, aber denken Sie daran, falls Sie später kostenpflichtige/eingeschränkte Funktionen hinzufügen.
This server cannot be deployed
Maintenance
Related MCP Connectors
Scrape stock quotes, historical prices, and financial statements from Yahoo Finance.
Analyze stocks with summaries, price targets, and analyst recommendations. Track SEC filings, divi…
Stock market data for AI agents: real-time quotes, financials, options, SEC filings and news.
Fetch current stock prices and key data for symbols across global markets. Look up companies like…
Related MCP Servers
- AlicenseNot gradedqualityBmaintenanceProvides comprehensive financial market data and news through the Finnhub API. Enables real-time stock quotes, company profiles, financial metrics, analyst recommendations, and market news access.1MIT
- AlicenseNot gradedqualityDmaintenanceProvides real-time stock quotes, historical price data, financial news, and multi-stock comparisons using Yahoo Finance data. Enables users to access comprehensive financial market information through natural language queries.243 npmMIT
- FlicenseNot gradedqualityDmaintenanceProvides real-time stock market data through Yahoo Finance without requiring an API key. Get quotes, historical data, company information, financial statements, and ticker search capabilities.-
- AlicenseNot gradedqualityCmaintenanceProvides real-time stock quotes, historical data, and stock search via Yahoo Finance, enabling AI assistants to access and analyze financial market data.57 npm19MIT