PluginBench
MCP Server
Maintained
AGPL-3.0

io.github.stefanoamorelli/fred-mcp-server MCP Server

io.github.stefanoamorelli/fred-mcp-server

Access 800,000+ Federal Reserve economic time series through Claude and Cursor with FRED® data integration.

What is the io.github.stefanoamorelli/fred-mcp-server MCP server?

The FRED MCP Server is a Model Context Protocol server that provides universal access to all 800,000+ Federal Reserve Economic Data (FRED®) time series. It enables AI agents to browse economic categories, search for indicators, and retrieve real-time data with custom transformations through three powerful tools.

This server connects Claude and Cursor to the Federal Reserve's comprehensive economic database, allowing you to discover and analyze economic indicators like GDP, unemployment, inflation, and interest rates. Use it to research economic trends, build financial analyses, and integrate real-time economic data into your AI workflows.

How to install io.github.stefanoamorelli/fred-mcp-server

Copy-paste configuration for popular MCP clients.

transport: stdio
Config generated by PluginBench — verify against the source before use.
Environment / auth
  • FRED_API_KEY
    required
    secret

    Your FRED API key to access the API

~/Library/Application Support/Claude/claude_desktop_config.json
{
  "mcpServers": {
    "fred-mcp-server": {
      "command": "npx",
      "args": [
        "-y",
        "fred-mcp-server"
      ],
      "env": {
        "FRED_API_KEY": "<YOUR_FRED_API_KEY>"
      }
    }
  }
}

Tools & capabilities

Tools this server exposes to the agent.

  • fred_browse — Browse FRED's complete catalog through categories, releases, sources, and series with pagination and sorting options.
  • fred_search — Search for FRED economic data series by keywords, tags, or filters with support for full-text and series ID search.
  • fred_get_series — Retrieve data for any FRED series by ID with support for date ranges, transformations (percent change, log, etc.), and frequency aggregation.

Use cases

  • Analyze unemployment trends and labor market indicators over time
  • Compare inflation rates across different measures (CPI, PCE) with custom date ranges
  • Research GDP growth and economic output with percent-change transformations
  • Explore interest rate movements and Federal Reserve policy impacts
  • Build economic dashboards by combining multiple series with custom aggregations

io.github.stefanoamorelli/fred-mcp-server MCP server FAQ

What is the FRED MCP Server?

It's a Model Context Protocol server that gives Claude and Cursor access to 800,000+ Federal Reserve economic time series. You can browse categories, search for indicators, and retrieve data with transformations like percent change or log scaling.

Is it free to use?

Yes, the server itself is open-source (AGPL-3.0). However, you need a free FRED API key from the Federal Reserve Bank of St. Louis (fred.stlouisfed.org/docs/api/api_key.html).

How do I install it in Claude Desktop?

Use Smithery: `npx -y @smithery/cli install @stefanoamorelli/fred-mcp-server --client claude`, or manually clone the repo, install dependencies with `pnpm install`, build with `pnpm build`, and configure your claude_desktop_config.json with your FRED API key.

What authentication is required?

You need a FRED API key from the Federal Reserve Bank of St. Louis. Set it as the FRED_API_KEY environment variable in your server configuration.

Can I run it with Docker?

Yes, the server includes a Docker image. Configure it in claude_desktop_config.json using `docker run` with your FRED API key passed as an environment variable.

What data transformations are supported?

The fred_get_series tool supports transformations including levels (lin), change from previous period (chg), percent change (pch), percent change from year ago (pc1), compounded annual rate (pca), natural log (log), and frequency aggregation (daily, weekly, monthly, quarterly, annual).

README (reference)

Source of truth, from the repository.

Federal Reserve Economic Data MCP Server

smithery badge npm version DOI License: AGPL v3 Tests Documentation

[!IMPORTANT] Disclaimer: This open-source project is not affiliated with, sponsored by, or endorsed by the Federal Reserve or the Federal Reserve Bank of St. Louis. "FRED" is a registered trademark of the Federal Reserve Bank of St. Louis, used here for descriptive purposes only.

A Model Context Protocol (MCP) server providing universal access to all 800,000+ Federal Reserve Economic Data (FRED®) time series through three powerful tools.

https://github.com/user-attachments/assets/66c7f3ad-7b0e-4930-b1c5-a675a7eb1e09

[!TIP] If you use this project in your research or work, please cite it using the CITATION.cff file, or use the following citation:

APA Format:

Amorelli, S. (2025). Federal Reserve Economic Data MCP (Model Context Protocol) Server (Version 1.0.2) [Computer software]. Zenodo. https://doi.org/10.5281/zenodo.14536707

BibTeX:

@software{amorelli_2025_14536707,
  author       = {Amorelli, Stefano},
  title        = {{Federal Reserve Economic Data MCP (Model Context
                   Protocol) Server}},
  month        = jan,
  year         = 2025,
  publisher    = {Zenodo},
  version      = {1.0.2},
  doi          = {10.5281/zenodo.14536707},
  url          = {https://doi.org/10.5281/zenodo.14536707}
}

Installation

Installing via Smithery

To install Federal Reserve Economic Data Server for Claude Desktop automatically via Smithery:

npx -y @smithery/cli install @stefanoamorelli/fred-mcp-server --client claude

Manual Installation

  1. Clone the repository:
    git clone https://github.com/stefanoamorelli/fred-mcp-server.git
    cd fred-mcp-server
    
  2. Install dependencies:
    pnpm install
    
  3. Build the project:
    pnpm build
    

Configuration

This server requires a FRED® API key. You can obtain one from the FRED® website.

Install the server, for example, on Claude Desktop, modify the claude_desktop_config.json file and add the following configuration:

{
  "mcpServers": {
    "FRED MCP Server": {
      "command": "/usr/bin/node",
      "args": [
        "<PATH_TO_YOUR_CLONED_REPO>/fred-mcp-server/build/index.js"
      ],
      "env": {
        "FRED_API_KEY": "<YOUR_API_KEY>"
      }
    }
  }
}

Using Docker

You can also run the FRED MCP Server using Docker. Add this configuration to your claude_desktop_config.json:

{
  "mcpServers": {
    "fred-mcp": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "-e",
        "FRED_API_KEY=<your-key-here>",
        "stefanoamorelli/fred-mcp-server:latest"
      ],
      "env": {}
    }
  }
}

Replace <your-key-here> with your actual FRED API key.

Using Streamable HTTP Transport

For network deployments, you can run the server with Streamable HTTP transport instead of stdio:

# Using CLI flag
node build/index.js --http

# Or using environment variable
TRANSPORT=http node build/index.js

# Custom port (default is 3000)
PORT=8080 node build/index.js --http

The server will be available at http://localhost:3000/mcp (or your custom port).

Example client request:

# Initialize session
curl -X POST http://localhost:3000/mcp \
  -H "Content-Type: application/json" \
  -H "Accept: application/json, text/event-stream" \
  -d '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2024-11-05","capabilities":{},"clientInfo":{"name":"my-client","version":"1.0.0"}}}'

# Use the mcp-session-id from the response header for subsequent requests
curl -X POST http://localhost:3000/mcp \
  -H "Content-Type: application/json" \
  -H "Accept: application/json, text/event-stream" \
  -H "mcp-session-id: <session-id-from-init>" \
  -d '{"jsonrpc":"2.0","id":2,"method":"tools/list"}'

Available Tools

This MCP server provides three comprehensive tools to access all 800,000+ FRED® economic data series:

fred_browse

Description: Browse FRED's complete catalog through categories, releases, or sources.

Parameters:

  • browse_type (required): Type of browsing - "categories", "releases", "sources", "category_series", "release_series"
  • category_id (optional): Category ID for browsing subcategories or series within a category
  • release_id (optional): Release ID for browsing series within a release
  • limit (optional): Maximum number of results (default: 50)
  • offset (optional): Number of results to skip for pagination
  • order_by (optional): Field to order results by
  • sort_order (optional): "asc" or "desc"

fred_search

Description: Search for FRED economic data series by keywords, tags, or filters.

Parameters:

  • search_text (optional): Text to search for in series titles and descriptions
  • search_type (optional): "full_text" or "series_id"
  • tag_names (optional): Comma-separated list of tag names to filter by
  • exclude_tag_names (optional): Comma-separated list of tag names to exclude
  • limit (optional): Maximum number of results (default: 25)
  • offset (optional): Number of results to skip for pagination
  • order_by (optional): Field to order by (e.g., "popularity", "last_updated")
  • sort_order (optional): "asc" or "desc"
  • filter_variable (optional): Filter by "frequency", "units", or "seasonal_adjustment"
  • filter_value (optional): Value to filter the variable by

fred_get_series

Description: Retrieve data for any FRED series by its ID with support for transformations and date ranges.

Parameters:

  • series_id (required): The FRED series ID (e.g., "GDP", "UNRATE", "CPIAUCSL")
  • observation_start (optional): Start date in YYYY-MM-DD format
  • observation_end (optional): End date in YYYY-MM-DD format
  • limit (optional): Maximum number of observations
  • offset (optional): Number of observations to skip
  • sort_order (optional): "asc" or "desc"
  • units (optional): Data transformation:
    • "lin" (levels/no transformation)
    • "chg" (change from previous period)
    • "ch1" (change from year ago)
    • "pch" (percent change)
    • "pc1" (percent change from year ago)
    • "pca" (compounded annual rate of change)
    • "cch" (continuously compounded rate of change)
    • "log" (natural log)
  • frequency (optional): Frequency aggregation ("d", "w", "m", "q", "a")
  • aggregation_method (optional): "avg" (average), "sum", or "eop" (end of period)

Example Usage

With these three tools, you can:

  • Browse all economic categories and discover available data
  • Search for specific indicators by keywords or tags
  • Retrieve any of the 800,000+ series with custom transformations
  • Access real-time economic data including GDP, unemployment, inflation, interest rates, and more

Social Media Shoutouts 📣

[!NOTE] Want to be featured? Tag Stefano Amorelli on LinkedIn or @stefanoamorelli on X in your post about using FRED MCP Server, or submit a PR to add your shoutout!

We're grateful for the community support! Here are some mentions from amazing people:

<details open> <summary><b>Scott G</b> - "One of my breakthrough moments for 'getting' what is possible with Claude was this fred-mcp-server project..."</summary> <br> <a href="https://www.linkedin.com/posts/sgoley_as-many-of-us-continue-to-use-llms-more-and-activity-7372401049669885952-ha6M"> <img src="assets/social/linkedin-sgoley.jpg" alt="LinkedIn post by Scott G - Fintech & Data Analytics Professional" width="600"> </a> <br> <i>Scott G - Fintech & Data Analytics Professional</i> | <a href="https://www.linkedin.com/in/sgoley/">LinkedIn Profile</a> </details> <details open> <summary><b>John Shelburne</b> - "The FRED MCP Server is a game-changer for financial analysis..."</summary> <br> <a href="https://www.linkedin.com/posts/shelburne_ai-finance-innovation-activity-7341141860880478210-JQe4"> <img src="assets/social/linkedin-john-shelburne.jpg" alt="LinkedIn post by John Shelburne" width="600"> </a> <br> <i>John Shelburne - Fixed Income Fintech Leader with 20+ Years of Experience | Machine Learning & Cloud Computing Specialist</i> | <a href="https://www.linkedin.com/in/shelburne/">LinkedIn Profile</a> </details> <!-- Add more social media posts here using the format above -->

Testing

See TESTING.md for more details.

# Run all tests
pnpm test

# Run specific tests
pnpm test:registry

License ⚖️

This open-source project is licensed under the GNU Affero General Public License v3.0 (AGPL-3.0). This means:

  • You can use, modify, and distribute this software
  • If you modify and distribute it, you must release your changes under AGPL-3.0
  • If you run a modified version on a server, you must provide the source code to users
  • See the LICENSE file for full details

For commercial licensing options or other licensing inquiries, please contact stefano@amorelli.tech.

© 2025 Stefano Amorelli

Related MCP servers

Access SEC EDGAR filings, financial statements, and insider trading data with exact numeric precision.

350
Python
AGPL-3.0
View repository →

28 pay-per-event tools for regulatory, sanctions, procurement, and corporate-registry monitoring.

0
Python
MIT
View repository →
RLRLM Tools logo

Persistent Python sandbox for token-efficient codebase exploration—reduce context usage by 25-35% with server-side code analysis.

8
Python
MIT
View repository →

Discover and explore Azure Verified Modules from the Bicep Public Registry

Check messages, npm packages and crypto addresses before acting. Read-only scanner tools.

0
JavaScript
AGPL-3.0
View repository →

Dutch-learning market map: schools, Verified Pro tutors, exams, paths and courses near any capital.