Skip to main content
Glama

Financial Modeling Prep MCP Server

Apache 2.0
17
59
  • Linux
  • Apple
SearchClient.ts4.36 kB
import { FMPClient } from "../FMPClient.js"; import type { FMPContext } from "../../types/index.js"; import type { SymbolSearchResult, NameSearchResult, CIKSearchResult, CUSIPSearchResult, ISINSearchResult, StockScreenerResult, ExchangeVariantResult, } from "./types.js"; export class SearchClient extends FMPClient { constructor(apiKey?: string) { super(apiKey); } /** * Search for stock symbols by query * @param query The search query * @param limit Optional limit on number of results (default: 50) * @param exchange Optional exchange filter * @param context Optional context containing configuration * @returns Array of matching symbols */ async searchSymbol( query: string, limit?: number, exchange?: string, context?: FMPContext ): Promise<SymbolSearchResult[]> { return super.get<SymbolSearchResult[]>( "/search-symbol", { query, limit, exchange, }, { context } ); } /** * Search for company names by query * @param query The search query * @param limit Optional limit on number of results (default: 50) * @param exchange Optional exchange filter * @param context Optional context containing configuration * @returns Array of matching companies */ async searchName( query: string, limit?: number, exchange?: string, context?: FMPContext ): Promise<NameSearchResult[]> { return super.get<NameSearchResult[]>( "/search-name", { query, limit, exchange, }, { context } ); } /** * Search for companies by CIK number * @param cik The CIK number to search for * @param limit Optional limit on number of results (default: 50) * @param context Optional context containing configuration * @returns Array of matching companies */ async searchCIK( cik: string, limit?: number, context?: FMPContext ): Promise<CIKSearchResult[]> { return super.get<CIKSearchResult[]>( "/search-cik", { cik, limit }, { context } ); } /** * Search for securities by CUSIP number * @param cusip The CUSIP number to search for * @param context Optional context containing configuration * @returns Array of matching securities */ async searchCUSIP( cusip: string, context?: FMPContext ): Promise<CUSIPSearchResult[]> { return super.get<CUSIPSearchResult[]>( "/search-cusip", { cusip }, { context } ); } /** * Search for securities by ISIN number * @param isin The ISIN number to search for * @param context Optional context containing configuration * @returns Array of matching securities */ async searchISIN( isin: string, context?: FMPContext ): Promise<ISINSearchResult[]> { return super.get<ISINSearchResult[]>("/search-isin", { isin }, { context }); } /** * Search for stocks using various criteria * @param params Search criteria * @param context Optional context containing configuration * @returns Array of matching stocks */ async stockScreener( params: { marketCapMoreThan?: number; marketCapLowerThan?: number; sector?: string; industry?: string; betaMoreThan?: number; betaLowerThan?: number; priceMoreThan?: number; priceLowerThan?: number; dividendMoreThan?: number; dividendLowerThan?: number; volumeMoreThan?: number; volumeLowerThan?: number; exchange?: string; country?: string; isEtf?: boolean; isFund?: boolean; isActivelyTrading?: boolean; limit?: number; includeAllShareClasses?: boolean; }, context?: FMPContext ): Promise<StockScreenerResult[]> { return super.get<StockScreenerResult[]>("/company-screener", params, { context, }); } /** * Search for exchange variants of a symbol * @param symbol The stock symbol to search for * @param context Optional context containing configuration * @returns Array of exchange variants */ async searchExchangeVariants( symbol: string, context?: FMPContext ): Promise<ExchangeVariantResult[]> { return super.get<ExchangeVariantResult[]>( "/search-exchange-variants", { symbol, }, { context } ); } }

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