by stefanoamorelli
fred-mcp-server is an open-source Model Context Protocol (MCP) server that provides access to Federal Reserve Economic Data (FRED®) financial datasets. It enables applications and services to easily retrieve various economic indicators and financial data directly from FRED.
fred-mcp-server is an open-source Model Context Protocol (MCP) server designed to provide access to Federal Reserve Economic Data (FRED®) financial datasets. It acts as an intermediary, allowing applications and services to easily retrieve various economic indicators and financial data directly from FRED.
There are two primary ways to install and use fred-mcp-server:
For automated installation, especially for Claude Desktop, you can use Smithery:
npx -y @smithery/cli install @stefanoamorelli/fred-mcp-server --client claude
git clone https://github.com/stefanoamorelli/fred-mcp-server.git
cd fred-mcp-server
2. **Install dependencies:**
bash
pnpm install
3. **Build the project:**
bash
pnpm build
```
To use the server, you need a FRED® API key, obtainable from the FRED® website. You then configure the server, for example, within Claude Desktop's claude_desktop_config.json
:
{
"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>"
}
}
}
}
RRPONTSYD
)CPIAUCSL
)MORTGAGE30US
)T10Y2Y
)UNRATE
)WALCL
)GDP
, GDPC1
)DGS10
)CSUSHPINSA
)BAMLH0A0HYM2
)T10YIE
)FPCPITOTLZGUSA
)MSPUS
)M1SL
)DRCCLACBS
)DFII10
, FII10
, WFII10
, RIFLGFCY10XIINA
)start_date
, end_date
, limit
, and sort_order
for data queries.Q: Is fred-mcp-server affiliated with the Federal Reserve? A: No, 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 used for descriptive purposes only.
Q: Do I need an API key to use fred-mcp-server? A: Yes, a FRED® API key is required to access the data. You can obtain one from the FRED® website.
Q: How can I cite this project? A: If you use this project in your research or work, please cite it using the CITATION.cff file, or the APA format provided in the README:
Amorelli, S. (2025). Federal Reserve Economic Data MCP (Model Context Protocol) Server [Computer software]. GitHub. https://github.com/stefanoamorelli/fred-mcp-server
Q: What are the common parameters for data retrieval?
A: All tools accept optional parameters such as start_date
(YYYY-MM-DD), end_date
(YYYY-MM-DD), limit
(maximum observations), and sort_order
("asc" or "desc").
[!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 for accessing Federal Reserve Economic Data (FRED®) financial datasets.
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 the APA format below:
Amorelli, S. (2025). Federal Reserve Economic Data MCP (Model Context Protocol) Server [Computer software]. GitHub. https://github.com/stefanoamorelli/fred-mcp-server
To install Federal Reserve Economic Data Server for Claude Desktop automatically via Smithery:
npx -y @smithery/cli install @stefanoamorelli/fred-mcp-server --client claude
git clone https://github.com/stefanoamorelli/fred-mcp-server.git
cd fred-mcp-server
pnpm install
pnpm build
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>"
}
}
}
}
All tools accept these optional parameters:
start_date
(string): Start date in YYYY-MM-DD
format.end_date
(string): End date in YYYY-MM-DD
format.limit
(number): Maximum number of observations to return.sort_order
("asc" | "desc"): Sort order of observations.RRPONTSYD
RRPONTSYD
)CPIAUCSL
CPIAUCSL
)MORTGAGE30US
MORTGAGE30US
)T10Y2Y
T10Y2Y
)UNRATE
UNRATE
)WALCL
WALCL
)GDP
GDP
)GDPC1
GDPC1
)DGS10
DGS10
)CSUSHPINSA
CSUSHPINSA
)BAMLH0A0HYM2
BAMLH0A0HYM2
)T10YIE
T10YIE
)FPCPITOTLZGUSA
FPCPITOTLZGUSA
)MSPUS
MSPUS
)M1SL
M1SL
)DRCCLACBS
DRCCLACBS
)DFII10
DFII10
)FII10
FII10
)WFII10
WFII10
)RIFLGFCY10XIINA
RIFLGFCY10XIINA
)See TESTING.md for more details.
# Run all tests
pnpm test
# Run specific tests
pnpm test:registry
Reviews feature coming soon
Stay tuned for community discussions and feedback