Skip to main content
Glama

Weather & Stock MCP Server

by Jeetinida
dailyGainers.js8.6 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = dailyGainers; const typebox_1 = require("@sinclair/typebox"); const yahooFinanceTypes_js_1 = require("../lib/yahooFinanceTypes.js"); const DailyGainersCriterum = typebox_1.Type.Object({ field: typebox_1.Type.String(), operators: typebox_1.Type.Array(typebox_1.Type.String()), values: typebox_1.Type.Array(yahooFinanceTypes_js_1.YahooNumber), labelsSelected: typebox_1.Type.Array(yahooFinanceTypes_js_1.YahooNumber), dependentValues: typebox_1.Type.Array(typebox_1.Type.Any()), }, { title: "DailyGainersCriterium" }); const DailyGainersQuote = typebox_1.Type.Object({ language: typebox_1.Type.String(), region: typebox_1.Type.String(), quoteType: typebox_1.Type.String(), typeDisp: typebox_1.Type.String(), quoteSourceName: typebox_1.Type.String(), triggerable: typebox_1.Type.Boolean(), customPriceAlertConfidence: typebox_1.Type.String(), lastCloseTevEbitLtm: typebox_1.Type.Optional(yahooFinanceTypes_js_1.YahooNumber), lastClosePriceToNNWCPerShare: typebox_1.Type.Optional(yahooFinanceTypes_js_1.YahooNumber), firstTradeDateMilliseconds: yahooFinanceTypes_js_1.YahooNumber, priceHint: yahooFinanceTypes_js_1.YahooNumber, postMarketChangePercent: typebox_1.Type.Optional(yahooFinanceTypes_js_1.YahooNumber), postMarketTime: typebox_1.Type.Optional(yahooFinanceTypes_js_1.YahooNumber), postMarketPrice: typebox_1.Type.Optional(yahooFinanceTypes_js_1.YahooNumber), postMarketChange: typebox_1.Type.Optional(yahooFinanceTypes_js_1.YahooNumber), regularMarketChange: yahooFinanceTypes_js_1.YahooNumber, regularMarketTime: yahooFinanceTypes_js_1.YahooNumber, regularMarketPrice: yahooFinanceTypes_js_1.YahooNumber, regularMarketDayHigh: yahooFinanceTypes_js_1.YahooNumber, regularMarketDayRange: typebox_1.Type.String(), currency: typebox_1.Type.String(), regularMarketDayLow: yahooFinanceTypes_js_1.YahooNumber, regularMarketVolume: yahooFinanceTypes_js_1.YahooNumber, regularMarketPreviousClose: yahooFinanceTypes_js_1.YahooNumber, bid: typebox_1.Type.Optional(yahooFinanceTypes_js_1.YahooNumber), ask: typebox_1.Type.Optional(yahooFinanceTypes_js_1.YahooNumber), bidSize: typebox_1.Type.Optional(yahooFinanceTypes_js_1.YahooNumber), askSize: typebox_1.Type.Optional(yahooFinanceTypes_js_1.YahooNumber), market: typebox_1.Type.String(), messageBoardId: typebox_1.Type.String(), fullExchangeName: typebox_1.Type.String(), longName: typebox_1.Type.String(), financialCurrency: typebox_1.Type.Optional(typebox_1.Type.String()), regularMarketOpen: yahooFinanceTypes_js_1.YahooNumber, averageDailyVolume3Month: yahooFinanceTypes_js_1.YahooNumber, averageDailyVolume10Day: yahooFinanceTypes_js_1.YahooNumber, fiftyTwoWeekLowChange: yahooFinanceTypes_js_1.YahooNumber, fiftyTwoWeekLowChangePercent: yahooFinanceTypes_js_1.YahooNumber, fiftyTwoWeekRange: typebox_1.Type.String(), fiftyTwoWeekHighChange: yahooFinanceTypes_js_1.YahooNumber, fiftyTwoWeekHighChangePercent: yahooFinanceTypes_js_1.YahooNumber, fiftyTwoWeekChangePercent: yahooFinanceTypes_js_1.YahooNumber, earningsTimestamp: typebox_1.Type.Optional(yahooFinanceTypes_js_1.YahooNumber), earningsTimestampStart: typebox_1.Type.Optional(yahooFinanceTypes_js_1.YahooNumber), earningsTimestampEnd: typebox_1.Type.Optional(yahooFinanceTypes_js_1.YahooNumber), trailingAnnualDividendRate: yahooFinanceTypes_js_1.YahooNumber, trailingAnnualDividendYield: yahooFinanceTypes_js_1.YahooNumber, marketState: typebox_1.Type.String(), epsTrailingTwelveMonths: typebox_1.Type.Optional(yahooFinanceTypes_js_1.YahooNumber), epsForward: typebox_1.Type.Optional(yahooFinanceTypes_js_1.YahooNumber), epsCurrentYear: typebox_1.Type.Optional(yahooFinanceTypes_js_1.YahooNumber), priceEpsCurrentYear: typebox_1.Type.Optional(yahooFinanceTypes_js_1.YahooNumber), sharesOutstanding: yahooFinanceTypes_js_1.YahooNumber, bookValue: typebox_1.Type.Optional(yahooFinanceTypes_js_1.YahooNumber), fiftyDayAverage: yahooFinanceTypes_js_1.YahooNumber, fiftyDayAverageChange: yahooFinanceTypes_js_1.YahooNumber, fiftyDayAverageChangePercent: yahooFinanceTypes_js_1.YahooNumber, twoHundredDayAverage: yahooFinanceTypes_js_1.YahooNumber, twoHundredDayAverageChange: yahooFinanceTypes_js_1.YahooNumber, twoHundredDayAverageChangePercent: yahooFinanceTypes_js_1.YahooNumber, marketCap: yahooFinanceTypes_js_1.YahooNumber, forwardPE: typebox_1.Type.Optional(yahooFinanceTypes_js_1.YahooNumber), priceToBook: typebox_1.Type.Optional(yahooFinanceTypes_js_1.YahooNumber), sourceInterval: yahooFinanceTypes_js_1.YahooNumber, exchangeDataDelayedBy: yahooFinanceTypes_js_1.YahooNumber, exchangeTimezoneName: typebox_1.Type.String(), exchangeTimezoneShortName: typebox_1.Type.String(), gmtOffSetMilliseconds: yahooFinanceTypes_js_1.YahooNumber, esgPopulated: typebox_1.Type.Boolean(), tradeable: typebox_1.Type.Boolean(), cryptoTradeable: typebox_1.Type.Boolean(), exchange: typebox_1.Type.String(), fiftyTwoWeekLow: yahooFinanceTypes_js_1.YahooNumber, fiftyTwoWeekHigh: yahooFinanceTypes_js_1.YahooNumber, shortName: typebox_1.Type.String(), averageAnalystRating: typebox_1.Type.Optional(typebox_1.Type.String()), regularMarketChangePercent: yahooFinanceTypes_js_1.YahooNumber, symbol: typebox_1.Type.String(), dividendDate: typebox_1.Type.Optional(yahooFinanceTypes_js_1.YahooNumber), displayName: typebox_1.Type.Optional(typebox_1.Type.String()), trailingPE: typebox_1.Type.Optional(yahooFinanceTypes_js_1.YahooNumber), prevName: typebox_1.Type.Optional(typebox_1.Type.String()), nameChangeDate: typebox_1.Type.Optional(yahooFinanceTypes_js_1.YahooNumber), ipoExpectedDate: typebox_1.Type.Optional(yahooFinanceTypes_js_1.YahooNumber), dividendYield: typebox_1.Type.Optional(yahooFinanceTypes_js_1.YahooNumber), dividendRate: typebox_1.Type.Optional(yahooFinanceTypes_js_1.YahooNumber), }, { title: "DailyGainersQuote" }); const DailyGainersOptionsSchema = typebox_1.Type.Object({ lang: typebox_1.Type.Optional(typebox_1.Type.String()), region: typebox_1.Type.Optional(typebox_1.Type.String()), count: typebox_1.Type.Optional(yahooFinanceTypes_js_1.YahooNumber), }, { title: "DailyGainersOptions" }); const DailyGainersCriteriaMeta = typebox_1.Type.Object({ size: yahooFinanceTypes_js_1.YahooNumber, offset: yahooFinanceTypes_js_1.YahooNumber, sortField: typebox_1.Type.String(), sortType: typebox_1.Type.String(), quoteType: typebox_1.Type.String(), criteria: typebox_1.Type.Array(DailyGainersCriterum), topOperator: typebox_1.Type.String(), }, { title: "DailyGainersCriteriaMeta" }); const DailyGainersResultSchema = typebox_1.Type.Object({ id: typebox_1.Type.String(), title: typebox_1.Type.String(), description: typebox_1.Type.String(), canonicalName: typebox_1.Type.String(), criteriaMeta: DailyGainersCriteriaMeta, rawCriteria: typebox_1.Type.String(), start: yahooFinanceTypes_js_1.YahooNumber, count: yahooFinanceTypes_js_1.YahooNumber, total: yahooFinanceTypes_js_1.YahooNumber, quotes: typebox_1.Type.Array(DailyGainersQuote), useRecords: typebox_1.Type.Boolean(), predefinedScr: typebox_1.Type.Boolean(), versionId: yahooFinanceTypes_js_1.YahooNumber, creationDate: yahooFinanceTypes_js_1.YahooNumber, lastUpdated: yahooFinanceTypes_js_1.YahooNumber, isPremium: typebox_1.Type.Boolean(), iconUrl: typebox_1.Type.String(), }, { title: "DailyGainersResult" }); const queryOptionsDefaults = { lang: "en-US", region: "US", scrIds: "day_gainers", count: 5, }; function dailyGainers(queryOptionsOverrides, moduleOptions) { return this._moduleExec({ moduleName: "dailyGainers", query: { url: "https://${YF_QUERY_HOST}/v1/finance/screener/predefined/saved", schema: DailyGainersOptionsSchema, defaults: queryOptionsDefaults, overrides: queryOptionsOverrides, needsCrumb: true, }, result: { schema: DailyGainersResultSchema, transformWith(result) { if (!result.finance) throw new Error("Unexpected result: " + JSON.stringify(result)); return result.finance.result[0]; }, }, moduleOptions, }); }

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/Jeetinida/stocknews-mcp'

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