Skip to main content
Glama

get_economic_indicators

Read-only

Returns observations of key US macro, energy, and fiscal indicators from four sources: - BLS (Bureau of Labor Statistics): the canonical labor + price statistics. ~20-series watchlist covering unemployment, payrolls, wages, CPI, PPI, productivity. Most monthly, ECI/productivity quarterly. - FRED (Federal Reserve Economic Data, St Louis Fed): rates, money supply, GDP, PCE inflation, jobless claims, Fed balance sheet, breakeven inflation, dollar index. ~26-series watchlist. Some daily (rates, dollar), weekly (Fed assets, jobless claims), monthly, quarterly. Mortgage rates, Moody's corporate bond yields and University of Michigan consumer sentiment are NOT carried: their owners license them, and we do not hold a license. - EIA (Energy Information Administration): WTI + Brent crude oil spot prices, Henry Hub natural gas, US gasoline retail price, US crude oil production. Unique energy data not in BLS or FRED. Mostly weekly cadence. - FiscalData (Treasury Bureau of the Fiscal Service): total public debt outstanding TO THE PENNY, daily, 1993→present (split into debt held by the public vs intragovernmental); Monthly Treasury Statement gross receipts / outlays / deficit-or-surplus; average interest rate actually paid on each Treasury security class (Bills/Notes/Bonds/TIPS/FRN + nonmarketable, 2001→present). Filter to one source via source: 'bls' | 'fred' | 'eia' | 'fiscaldata'. Default returns all four unified — series_id disambiguates across catalogs. Use this when the user asks about: unemployment rate, jobs report, nonfarm payrolls, CPI / PCE / inflation, Fed Funds rate, Treasury yields, yield-curve inversion, money supply / M2, Fed balance sheet / QE / QT activity, GDP, housing starts, retail sales, jobless claims, trade balance, dollar strength, national debt / debt ceiling levels, monthly federal deficit, interest cost on the debt, or general macro context for cross-source analysis. Categories (for filtering): - rates — Fed Funds, Treasury yields, yield spread - gdp — Real + nominal GDP, GDP growth rate - activity — Industrial production, housing starts, retail sales - inflation — CPI/PPI (BLS) + PCE/Core PCE/breakevens (FRED) - employment — Unemployment rates (U-3, U-6), payrolls, jobless claims - labor-force — Labor force participation rate - wages — Average hourly earnings, employment cost index - hours — Average weekly hours - productivity — Nonfarm productivity, unit labor costs - money — M2, Fed total assets, overnight reverse repo - debt — Federal debt (FRED quarterly + FiscalData daily to-the-penny), Treasury general account - fiscal — MTS monthly receipts, outlays, deficit/surplus (positive = deficit, negative = surplus, per Treasury's sign convention) - trade — Trade balance, trade-weighted dollar index - sentiment — no series at present (UMich sentiment needs a license) - energy — WTI/Brent crude, Henry Hub natural gas, retail gasoline, US crude production (EIA) Period format is fixed-width per cadence so lexicographic sort = chronological: - 2026M04 (April 2026), 2026Q01 (Q1 2026), 2026A01 (annual 2026), 2026W18 (week 18 of 2026), 2026D258 (day-of-year 258). Set latest_only=true to get one record per series (the most-recent observation) — useful for 'where are things now' snapshot questions. Daily series under latest_only return only the latest day per series (deduped client-side); without it you can pull arbitrary history. Pure-publisher posture: the unit on each series is documented in the unit field; we do not compute year-over-year deltas, seasonally adjust differently, or derive 'real' vs 'nominal' versions — agents do those calculations on top.

Tool call template

This tool declares no required parameters. Add optional parameters from the input schema as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {},
    "name": "get_economic_indicators"
  }
}

Input Schema

NameRequiredDescriptionDefault
limitNoDefault 50, max 500.
sourceNoFilter to one source. Omit to query all four. BLS = canonical labor + price stats. FRED = rates, money, GDP, PCE inflation. EIA = energy prices + production. FiscalData = Treasury debt to the penny, MTS budget totals, avg interest rates on the debt.
sort_byNoDefault period (chronological).
categoryNoBucket filter.
series_idNoExact series ID. BLS examples: 'LNS14000000' (U-3), 'CES0000000001' (payrolls), 'CUUR0000SA0' (CPI). FRED examples: 'DFF' (Fed Funds), 'DGS10' (10Y Treasury), 'PCEPILFE' (Core PCE), 'M2SL' (M2), 'WALCL' (Fed assets). FiscalData examples: 'FISCAL-DEBT-TOTAL-DAILY' (daily national debt), 'FISCAL-MTS-DEFICIT-MONTHLY' (monthly deficit/surplus).
since_yearNoCalendar-year lower bound (inclusive).
sort_orderNoDefault desc.
until_yearNoCalendar-year upper bound (inclusive).
latest_onlyNoWhen true, return only the most-recent observation per series. Useful for 'current state' snapshots.
period_typeNoCadence filter.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changed
    • changedInput schema / properties / series_id / description
      Previous value: -"Exact series ID. BLS examples: 'LNS14000000' (U-3), 'CES0000000001' (payrolls), 'CUUR0000SA0' (CPI). FRED examples: 'DFF' (Fed Funds), 'DGS10' (10Y Treasury), 'PCEPILFE' (Core PCE), 'M2SL' (M2), 'WALCL' (Fed assets), 'UMCSENT' (sentiment). FiscalData examples: 'FISCAL-DEBT-TOTAL-DAILY' (daily national debt), 'FISCAL-MTS-DEFICIT-MONTHLY' (monthly deficit/surplus)."New value: +"Exact series ID. BLS examples: 'LNS14000000' (U-3), 'CES0000000001' (payrolls), 'CUUR0000SA0' (CPI). FRED examples: 'DFF' (Fed Funds), 'DGS10' (10Y Treasury), 'PCEPILFE' (Core PCE), 'M2SL' (M2), 'WALCL' (Fed assets). FiscalData examples: 'FISCAL-DEBT-TOTAL-DAILY' (daily national debt), 'FISCAL-MTS-DEFICIT-MONTHLY' (monthly deficit/surplus)."
    • changedInput schema / properties / source / description
      Previous value: -"Filter to one source. Omit to query all four. BLS = canonical labor + price stats. FRED = rates, money, GDP, PCE inflation, sentiment. EIA = energy prices + production. FiscalData = Treasury debt to the penny, MTS budget totals, avg interest rates on the debt."New value: +"Filter to one source. Omit to query all four. BLS = canonical labor + price stats. FRED = rates, money, GDP, PCE inflation. EIA = energy prices + production. FiscalData = Treasury debt to the penny, MTS budget totals, avg interest rates on the debt."
  2. First observed

TDQS

A4.6/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, destructiveHint=false, openWorldHint=true, so safety is covered. The description adds real behavior beyond that: default returns all four sources unified with `series_id` disambiguating across catalogs, `latest_only` is deduped client-side for daily series, and the 'pure-publisher posture' explicitly states no YoY deltas, no re-seasonalization, and no real/nominal derivation — a genuine constraint an agent must know before computing on the output.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The content is long but deliberately front-loaded and bulleted by source, then triggers, then categories, then formats — an agent can scan to the relevant block quickly. There is some redundancy with the schema (the source enum meanings and the category list are restated in the parameter descriptions) and the 'sentiment — no series at present' note repeats the earlier licensing remark, but neither obscures the key routing information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With ten optional parameters, no required fields, no output schema, and four heterogeneous upstream sources, this tool is genuinely complex — and the description covers the period format, unit-field return contract, source/category interplay, and the publisher-only calculation boundary. Nothing an agent needs in order to call it and interpret the result correctly appears to be missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so all ten parameters are already documented in structured fields and the baseline is 3. The description earns an extra point by documenting the period encoding format (2026M04, 2026Q01, 2026A01, 2026W18, 2026D258) and why it is fixed-width — lexicographic sort equals chronological — which is not recoverable from the schema, plus it clarifies `latest_only` semantics more fully than the schema does.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Names a specific verb ('Returns observations') plus the exact resource (US macro, energy, and fiscal indicators) and enumerates the four upstream publishers with their series coverage. The scope statement ('BLS = labor + price, FRED = rates/money/GDP, EIA = energy, FiscalData = Treasury debt') is detailed enough that an agent can tell this apart from any other data-retrieval sibling without inspecting a schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides an explicit trigger list ('unemployment rate, jobs report, nonfarm payrolls, CPI / PCE / inflation, Fed Funds rate...') plus a cross-source analysis use case. It also supplies negative guidance by naming what is deliberately NOT carried (mortgage rates, Moody's yields, UMich sentiment) because of licensing, so an agent knows when this tool will fail to satisfy a request.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources