Marketstack MCP Server
Ein Model Context Protocol (MCP)-Server, der verschiedene Marketstack-API-Endpunkte als MCP-Tools bereitstellt und Zugriff auf Finanzdaten wie Tagesschluss-, Intraday-, Split-, Dividenden-, Ticker-, Börsen-, Währungs-, Zeitzonen-, Anleihen- und ETF-Daten bietet. Dieser Server vereinfacht die Integration von Marketstack-Daten in MCP-kompatible Agenten und Systeme.
Voraussetzungen
Node.js (v18 oder höher empfohlen)
npm (wird mit Node.js geliefert)
Marketstack-API-Schlüssel
(Optional) MCP-kompatibler Client oder Runner (z. B. VSCode-Erweiterung, CLI)
Related MCP server: CoinMarketCap MCP
Aufstellen
Klonen Sie das Repository oder stellen Sie sicher, dass Sie sich im Projektverzeichnis befinden.
Installieren Sie Abhängigkeiten:
npm installKonfiguration:
Besorgen Sie sich einen Marketstack-API-Schlüssel von https://marketstack.com/ .
Konfigurieren Sie die Umgebungsvariable
MARKETSTACK_API_KEYüber die Einstellungen Ihres MCP-Runners. Dies ist die empfohlene Methode für eine nahtlose Integration mit dem MCP-Client. Vermeiden Sie die Verwendung.envDateien für diesen Zweck, wenn Sie über einen MCP-Runner laufen.
Bauen und Ausführen
Erstellen Sie den Server:
npm run buildDadurch wird ein
build-Verzeichnis mit dem kompilierten JavaScript-Code erstellt.Führen Sie den Server aus:
npm run startoder direkt:
node build/index.jsVia MCP-Runner: Konfigurieren Sie Ihren MCP-Client so, dass der Server per Standard-Transport ausgeführt wird. Beispiel für einen MCP-Einstellungseintrag (passen Sie
/path/to/mcp-marketstackan Ihren tatsächlichen Pfad an und ersetzen SieYOUR_API_KEY_HEREdurch Ihren tatsächlichen Schlüssel):"marketstack": { "transportType": "stdio", "command": "node", "args": [ "/path/to/mcp-marketstack/build/index.js" ], "env": { "MARKETSTACK_API_KEY": "YOUR_API_KEY_HERE" } // ... other optional settings ... }
Verfügbare Tools
Der Server stellt Marketstack-API-Endpunkte als unterschiedliche MCP-Tools bereit, die nach Funktion kategorisiert sind:
Marktdaten
Referenzdaten
Finanzinstrumente
Detaillierte Eingabeschemata und Beschreibungen für jedes Tool können von MCP-Agenten, die per Introspektion eine Verbindung zum Server herstellen, automatisch erkannt werden.
Projektstruktur
Das Projekt ist modular aufgebaut:
Zwischenspeichern
Der Server implementiert einen LRU-Cache (Least Recently Used) für Tool-Antworten im Arbeitsspeicher. Dies trägt dazu bei, redundante Aufrufe der Marketstack-API zu reduzieren, die Leistung zu verbessern und Ratenbegrenzungen einzuhalten.
Mechanismus: Der Cache speichert Antworten basierend auf dem Toolnamen und den Eingabeparametern.
Konfigurierbare TTLs: Jedes Tool verfügt über eine konfigurierbare Time-to-Live (TTL) für seine zwischengespeicherten Daten, definiert in
src/cacheConfig.ts. Dies ermöglicht unterschiedliche Caching-Dauern basierend auf der Aktualisierungshäufigkeit der von jedem Marketstack-Endpunkt bereitgestellten Daten.
Lizenzierung
Dieses Projekt ist unter der GNU General Public License der Free Software Foundation lizenziert, entweder in Version 3 oder (optional) einer späteren Version. Details finden Sie in der Datei LICENSE .
Beitragen
Beiträge sind willkommen! Bitte folgen Sie dem Standard-Workflow für Fork- und Pull-Anfragen.
Unterstützung
Bei Problemen oder Fragen öffnen Sie bitte ein Problem im GitHub-Repository.