# FRED Categories MCP MCP

> FRED Categories helps you map out the entire economic data taxonomy. Start anywhere—from Money & Banking to Prices—and drill down through thousands of potential series. It lets your agent discover which categories exist, what dimensions are available for filtering, and ultimately, find the exact time-series indicator you need.

## Overview
- **Category:** brain-trust
- **Price:** Free
- **Tags:** economic-data, taxonomy, data-discovery, financial-indicators, time-series, macroeconomics

## Description

Need to figure out what data FRED even has? This MCP acts like an expert librarian, allowing your AI client to navigate the massive tree of economic indicators. You don't have to click through eight different menus just to see if a category exists or what tags it supports. Your agent first gets a high-level view by mapping out all major top-level domains. Once you zero in on an area—say, employment data—it then shows the subcategories within that domain. You can even run a check to see exactly which dimensions apply, like 'Quarterly' or 'Urban,' before you pull any results. This deep structural insight is invaluable for research because it lets your agent find all available series and filter them instantly using Vinkius's catalog framework. It turns a massive data dump into an actionable map.

## Tools

### get_category
Retrieves details for a single, specific FRED category using its unique ID.

### get_category_children
Lists all the subcategories that fall under a primary category ID to help you map out the full hierarchy.

### get_category_series
Gathers lists of actual data series within a known category, allowing filters by frequency and units.

### get_category_tags
Returns the available metadata tags for any given category, helping you understand what dimensions can filter the results.

## Prompt Examples

**Prompt:** 
```
What are the main categories of economic data in FRED?
```

**Response:** 
```
🗂️ **FRED Root Categories**

1. Money, Banking & Finance (32991)
2. Population, Employment & Labor (10)
3. National Accounts (GDP) (32992)
4. Production & Business Activity (1)
5. Prices (32455)
6. International Data (32263)
7. U.S. Regional Data (70)
8. Academic Data (33060)
```

**Prompt:** 
```
What inflation-related series are available?
```

**Response:** 
```
📈 **Prices Category (32455) — Top Inflation Series**

- CPIAUCSL — Consumer Price Index (All Urban)
- CPILFESL — Core CPI (Ex Food & Energy)
- PCEPI — PCE Price Index
- T10YIE — 10-Year Breakeven Inflation
- MICH — U. Michigan Inflation Expectations

3,000+ price-related series available in this category.
```

**Prompt:** 
```
Navigate to the interest rates subcategory
```

**Response:** 
```
🏦 **Interest Rates → Children**

- Treasury Constant Maturity (22)
- LIBOR Rates (33003)
- Federal Funds (118)
- Prime Rate (120)
- Swap Rates (33023)

Drill into any to see individual series.
```

## Capabilities

### Map top-level economic domains
View the primary, root categories of economic data like National Accounts or Prices.

### Drill down through subcategories
Navigate from a broad category to its specific child sections to narrow your focus.

### Identify filtering dimensions
Check the available tags for any given category, telling you what filters (like frequency or unit) apply before running a query.

### Discover specific data series
Pull lists of actual time-series indicators within a category, applying filters for units and relevance.

## Use Cases

### A client needs a complete list of labor market indicators.
The analyst asks the agent for all employment data. The agent first uses get_category to confirm the main 'Population & Employment' ID, then calls get_category_children to map out sub-domains like 'Unemployment Rate.' Finally, it uses get_category_series to pull every relevant time series from that specific child category.

### A student needs to compare multiple types of inflation data.
The student asks about price indices. The agent first checks the root categories using get_category, lands in 'Prices,' and then uses get_category_tags to see if they can filter by specific units (like CPI vs. PCE) before pulling any final series list.

### A quant wants to build a model that incorporates multiple national accounts.
The agent maps the root categories using get_category, then systematically calls get_category_children for 'National Accounts' and 'Money & Banking.' It builds an inventory of potential data inputs without ever needing to see the actual series.

### A developer needs a clean taxonomy structure for their app.
The agent uses get_category_children across several major domains to build a complete, structured JSON map. This allows them to design an entire data selection interface based on the true depth of FRED's offerings.

## Benefits

- Stop guessing which indicator exists. By using get_category_tags, you check all available dimensions for a category first, so your agent knows exactly how to filter the results.
- Don't waste time clicking through endless menus. Get_category_children lets you programmatically map out every single sub-domain beneath a major topic, giving you a complete structural overview.
- Get data series lists instantly. When you know the category, get_category_series pulls all relevant indicators and allows filtering by frequency or units in one call.
- Pinpoint your starting point. If you only know an indicator's general domain (like 'Prices'), get_category lets you jump right to that root ID without browsing.
- Understand the data scope. You don't just see categories; you understand their limitations and available metadata using get_category_tags.

## How It Works

The bottom line is that your agent gets an entire, structured map of FRED's content library before it even tries to pull a single data point.

1. Start by mapping the root categories to define your general area of interest (e.g., Money & Banking).
2. Use this MCP to explore the child categories, drilling down until you isolate the specific sub-domain containing the data series you need.
3. Run a final check using available tags and then request the list of actual time-series indicators within that final category.

## Frequently Asked Questions

**How do I find all top-level economic categories using get_category?**
You don't use it for the whole thing; you use get_category_children. This function starts at root (0) and maps out all major domains, like Money or Prices, so you know where to start looking.

**What is the best way to filter results using get_category_tags?**
You use it after identifying a category. It returns the available tags for that specific category, letting your agent confirm which dimensions (e.g., 'quarterly' or 'urban') you can actually apply later.

**If I know a general topic, how do I find all related data? (get_category)**
Use get_category to confirm the primary ID for that topic. This gives your agent the necessary starting point before it can map out the deeper children or series within that domain.

**Does get_category_series give me data, or just a list of indicators?**
It provides a comprehensive list of potential time-series indicators. It gives you the metadata and IDs needed to pull the actual time-series data later.

**What should I do if an ID is invalid when using get_category?**
The tool will return a specific error code indicating the ID does not exist. Always cross-reference any category ID you input with the official FRED documentation first.

**Are there rate limits when I run multiple queries, such as running get_category_children followed by get_category_series?**
Yes. Usage follows FRED's published API guidelines. For deep data exploration across many categories, monitor your usage to stay within the allotted call limits.

**If I run get_category_tags and receive an empty list, does that mean the category has no tags?**
It means there are currently no available dimension tags for that specific category. Try checking related parent categories or adjusting your search scope.

**Do I need to worry about data formatting when using get_category_series?**
The tool provides structured JSON output. Your AI client receives clean, machine-readable records that make processing the time series straightforward for downstream analysis.

**How is FRED organized?**
FRED uses a hierarchical tree of categories. The root (ID 0) branches into 8 domains like Money & Banking, Employment, and Prices. Each domain subdivides into hundreds of subcategories, each containing related series. Start from root and drill down to discover data.