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.
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 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 Connectors
Real-time market data, screeners, technical analysis & backtesting for stocks, crypto and forex.
Real-time news with bias scoring, live market data, and AI-powered options pricing
Real SEC, 13F, insider, congress & macro data your AI agent can cite. Hosted MCP, 24 tools.
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/TuokkiCode/finviz-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server