Skip to main content
Glama

Financial Modeling Prep MCP Server

Apache 2.0
17
59
  • Linux
  • Apple
ForexClient.tsโ€ข5.41 kB
import { FMPClient } from "../FMPClient.js"; import type { FMPContext } from "../../types/index.js"; import type { ForexPair, ForexQuote, ForexShortQuote, ForexLightChart, ForexHistoricalChart, ForexIntradayChart, } from "./types.js"; export class ForexClient extends FMPClient { constructor(apiKey?: string) { super(apiKey); } /** * Get a list of all forex currency pairs * @param options Optional parameters including abort signal and context * @returns Array of forex pair information */ async getList(options?: { signal?: AbortSignal; context?: FMPContext; }): Promise<ForexPair[]> { return super.get<ForexPair[]>("/forex-list", {}, options); } /** * Get full quote for a forex pair * @param symbol The forex pair symbol (e.g., EURUSD) * @param options Optional parameters including abort signal and context * @returns Array of forex quotes */ async getQuote( symbol: string, options?: { signal?: AbortSignal; context?: FMPContext; } ): Promise<ForexQuote[]> { return super.get<ForexQuote[]>("/quote", { symbol }, options); } /** * Get short quote for a forex pair * @param symbol The forex pair symbol (e.g., EURUSD) * @param options Optional parameters including abort signal and context * @returns Array of forex short quotes */ async getShortQuote( symbol: string, options?: { signal?: AbortSignal; context?: FMPContext; } ): Promise<ForexShortQuote[]> { return super.get<ForexShortQuote[]>("/quote-short", { symbol }, options); } /** * Get batch quotes for all forex pairs * @param short Optional boolean to get short quotes * @param options Optional parameters including abort signal and context * @returns Array of forex short quotes */ async getBatchQuotes( short?: boolean, options?: { signal?: AbortSignal; context?: FMPContext; }): Promise<ForexShortQuote[]> { return super.get<ForexShortQuote[]>( "/batch-forex-quotes", { short }, options ); } /** * Get historical light chart data for a forex pair * @param symbol The forex pair symbol (e.g., EURUSD) * @param from Optional start date (YYYY-MM-DD) * @param to Optional end date (YYYY-MM-DD) * @param options Optional parameters including abort signal and context * @returns Array of forex light prices */ async getHistoricalLightChart( symbol: string, from?: string, to?: string, options?: { signal?: AbortSignal; context?: FMPContext; } ): Promise<ForexLightChart[]> { return super.get<ForexLightChart[]>( "/historical-price-eod/light", { symbol, from, to }, options ); } /** * Get historical full chart data for a forex pair * @param symbol The forex pair symbol (e.g., EURUSD) * @param from Optional start date (YYYY-MM-DD) * @param to Optional end date (YYYY-MM-DD) * @param options Optional parameters including abort signal and context * @returns Array of forex historical prices */ async getHistoricalFullChart( symbol: string, from?: string, to?: string, options?: { signal?: AbortSignal; context?: FMPContext; } ): Promise<ForexHistoricalChart[]> { return super.get<ForexHistoricalChart[]>( "/historical-price-eod/full", { symbol, from, to }, options ); } /** * Get 1-minute interval data for a forex pair * @param symbol The forex pair symbol (e.g., EURUSD) * @param from Optional start date (YYYY-MM-DD) * @param to Optional end date (YYYY-MM-DD) * @param options Optional parameters including abort signal and context * @returns Array of forex intraday prices */ async get1MinuteData( symbol: string, from?: string, to?: string, options?: { signal?: AbortSignal; context?: FMPContext; } ): Promise<ForexIntradayChart[]> { return super.get<ForexIntradayChart[]>( "/historical-chart/1min", { symbol, from, to }, options ); } /** * Get 5-minute interval data for a forex pair * @param symbol The forex pair symbol (e.g., EURUSD) * @param from Optional start date (YYYY-MM-DD) * @param to Optional end date (YYYY-MM-DD) * @param options Optional parameters including abort signal and context * @returns Array of forex intraday prices */ async get5MinuteData( symbol: string, from?: string, to?: string, options?: { signal?: AbortSignal; context?: FMPContext; } ): Promise<ForexIntradayChart[]> { return super.get<ForexIntradayChart[]>( "/historical-chart/5min", { symbol, from, to }, options ); } /** * Get 1-hour interval data for a forex pair * @param symbol The forex pair symbol (e.g., EURUSD) * @param from Optional start date (YYYY-MM-DD) * @param to Optional end date (YYYY-MM-DD) * @param options Optional parameters including abort signal and context * @returns Array of forex intraday prices */ async get1HourData( symbol: string, from?: string, to?: string, options?: { signal?: AbortSignal; context?: FMPContext; } ): Promise<ForexIntradayChart[]> { return super.get<ForexIntradayChart[]>( "/historical-chart/1hour", { symbol, from, to }, options ); } }

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/imbenrabi/Financial-Modeling-Prep-MCP-Server'

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