Skip to main content
Glama
matteoantoci

Marketstack MCP Server

by matteoantoci

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

  1. Klonen Sie das Repository oder stellen Sie sicher, dass Sie sich im Projektverzeichnis befinden.

  2. Installieren Sie Abhängigkeiten:

    npm install
  3. Konfiguration:

    • 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 .env Dateien für diesen Zweck, wenn Sie über einen MCP-Runner laufen.

Bauen und Ausführen

  1. Erstellen Sie den Server:

    npm run build

    Dadurch wird ein build -Verzeichnis mit dem kompilierten JavaScript-Code erstellt.

  2. Führen Sie den Server aus:

    npm run start

    oder direkt:

    node build/index.js
  3. Via 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-marketstack an Ihren tatsächlichen Pfad an und ersetzen Sie YOUR_API_KEY_HERE durch 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:

. ├── src/ │ ├── index.ts # Server entry point │ ├── marketstackClient.ts # Centralized API client with caching │ ├── cacheConfig.ts # Cache TTL configurations │ └── tools/ │ ├── index.ts # Registers all tool categories │ ├── marketData/ # Market Data tools │ │ └── ... │ ├── referenceData/ # Reference Data tools │ │ └── ... │ ├── financialInstruments/ # Financial Instruments tools │ │ └── ... │ └── wrapToolHandler.ts # Wrapper for tool handlers ├── memory-bank/ # Project documentation │ └── ... ├── package.json # Project dependencies and scripts ├── tsconfig.json # TypeScript configuration ├── eslint.config.js # ESLint configuration ├── .prettierrc # Prettier configuration ├── LICENSE # Project license └── README.md # This file

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.

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/matteoantoci/mcp-marketstack'

If you have feedback or need assistance with the MCP directory API, please join our Discord server