UNPKG

fred-mcp-server

Version:

Federal Reserve Economic Data (FRED) MCP Server - Access all 800,000+ economic time series with search, browse, and data retrieval capabilities

52 lines (51 loc) 2 kB
import { makeRequest } from "../common/request.js"; /** * Handler for retrieving Overnight Reverse Repurchase Agreements data from FRED */ export async function handleRRPONTSYD(input) { try { // RRPONTSYD is the series ID for Overnight Reverse Repurchase Agreements const seriesId = "RRPONTSYD"; // Prepare query parameters const queryParams = { series_id: seriesId }; // Add optional parameters if provided if (input.start_date) queryParams.observation_start = input.start_date; if (input.end_date) queryParams.observation_end = input.end_date; if (input.limit) queryParams.limit = input.limit; if (input.sort_order) queryParams.sort_order = input.sort_order; // Make the request to FRED API const response = await makeRequest("series/observations", queryParams); // Transform the data for easier consumption const formattedData = response.observations.map(obs => ({ date: obs.date, value: parseFloat(obs.value), units: "Billions of Dollars", })); const responseData = { title: "Overnight Reverse Repurchase Agreements: Treasury Securities Sold by the Federal Reserve", description: "Daily amount value of RRP transactions reported by the New York Fed as part of the Temporary Open Market Operations.", source: "Federal Reserve Economic Data (FRED)", series_id: seriesId, total_observations: response.count, data: formattedData }; return { content: [{ type: "text", text: JSON.stringify(responseData, null, 2) }] }; } catch (error) { if (error instanceof Error) { throw new Error(`Failed to retrieve RRPONTSYD data: ${error.message}`); } throw error; } }