mcpField
F
Fred

Fred

远程服务
pipeworx.io金融数据03 天前更新

关于 Fred

Fred 是用于查询美国圣路易斯联储经济数据及地区联储预测的 MCP 服务,支持查找序列、获取观测值和回溯历史数据版本,适合经济分析。

主要功能

  1. 01搜索并查看 FRED 序列
  2. 02按单位和频率获取观测值
  3. 03查询历史数据版本与修订
  4. 04获取纽约联储 GDP 预测
  5. 05获取克利夫兰联储通胀预测

适用场景

  1. 01查看美国当前利率或通胀
  2. 02比较 GDP 数据初值与修订值
  3. 03查看地区联储的增长和通胀预测

MCP 相关

通过 Pipeworx 或独立 stdio 服务向 MCP 客户端提供 FRED 和地区联储数据工具。查询 FRED 需要 API 密钥,地区预测工具无需密钥。

配置

远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。

服务地址https://gateway.pipeworx.io/fred/mcp
一键复制安装命令
Claude CodeTerminal
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Claude Desktopclaude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json

命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。

工具

详细介绍

FRED — Federal Reserve Economic Data

圣路易斯联储的数据仓库:涵盖利率、通胀、就业、GDP、货币供应量、汇率和都市区指标的 80 多万条经济时间序列。它是美国宏观经济和货币数据中最权威、持续更新的数据来源,经济学家、政策制定者和记者都在使用。

这是 Pipeworx 的一部分——一个将 AI Agent 连接到 1879 多个实时数据源的 MCP 网关。这是独立的非官方集成,与上游提供方无关联、未获其认可,也非由其发布。

这对 AI Agent 的意义

大多数“当前 X 是多少”这类宏观问题都可以通过 FRED 序列解答。只要 Agent 知道序列 ID,就能给出实际的当前值,而不是训练数据中的快照。常见示例:

  • 30 年期抵押贷款利率 → MORTGAGE30US
  • 联邦基金利率 → DFF
  • CPI(所有项目)→ CPIAUCSL
  • 失业率 → UNRATE
  • 10 年期国债收益率 → DGS10
  • 新屋开工量 → HOUST
  • Case-Shiller 房价指数 → CSUSHPISA

如果你的 Agent 要回答有关美国宏观经济状况的问题,正确的流程是 fred_search(查找合适的序列)→ fred_series_info(确认单位和频率)→ fred_get_series(获取数值)。

身份验证

FRED 需要 API 密钥。你可以在 https://fred.stlouisfed.org/docs/api/api_key.html 免费获取——只需 30 秒,无需付费,也不用担心速率限制。

每次调用时通过 _apiKey 传入:

fred_get_series({
  series_id: "MORTGAGE30US",
  _apiKey: "your-fred-api-key"
})

或者订阅 Housing Vertical,由它为你管理密钥。

更新频率

序列类别更新频率
日度序列(利率、汇率)每日更新,约滞后 1 个工作日
周度序列(抵押贷款利率)每周更新,周四
月度序列(CPI、失业率、零售额)每月更新,月末后约 2-3 周
季度序列(GDP)每季度更新,季末后约 1 个月

Pipeworx 会根据这些更新频率设置相应的 TTL 来缓存 FRED 响应,详见缓存与数据时效性。

可引用 URI

将其嵌入输出,以便生成稳定的引用:

pipeworx://fred/series/{series_id}
pipeworx://fred/series/{series_id}/observations

其他 Agent(以及 resources/read)可以解析这些 URI,获取序列的当前值。

ALFRED 历史版本:“日期 X 时这个数字是多少”

FRED 通常会在首次发布后修订大多数序列(GDP、薪资、零售额……)。 fred_get_series 默认返回最新修订值;传入以下参数之一, 即可查询较早的历史版本:

  • as_of: "2020-03-15" — 该日期时的数据原貌。相当于 realtime_start = realtime_end = as_of。
  • realtime_start / realtime_end — 指定明确的发布时间范围,适用于 少见的自定义时间段查询,而非单一日期查询。

如果三个参数都不传,则使用默认行为,且与之前相同:不会包含 vintage 字段,返回值也与该参数存在之前一致。传入其中任一参数后,响应中会增加 vintage 对象({as_of, realtime_start, realtime_end}),方便你 确认所查看的历史版本。

fred_get_series({ series_id: "GDPC1", as_of: "2024-01-15", limit: 1 })
// -> the GDP print as FRED had it published on 2024-01-15, before later revisions

还有两个工具可以直接查看修订历史:

  • fred_vintage_dates({ series_id }) — FRED 发布该序列新历史版本的每个 日期(包括首次发布或之后的修订)。
  • fred_revisions({ series_id, observation_date }) — 查看某个观测值在 所有历史版本中的变化,从 first_release 到 latest。对于容易修订的 序列(GDP GDPC1、薪资 PAYEMS),可用此工具查看最初公布的数值与 当前数值之间的差异。
fred_revisions({ series_id: "GDPC1", observation_date: "2023-10-01" })
// -> revisions: [{ vintage_date: "2023-10-26", value: "22490.692" }, ...]
//    one entry per ALFRED vintage, oldest first; first_release is the
//    earliest, latest the most recent. Consecutive vintages can repeat the
//    same value — compare first_release.value to latest.value to see
//    whether this observation was ever actually revised.

阅读 fred_get_series 响应

字段含义
countFRED 在请求的时间范围内保存的观测值数量。
returnedobservations 中的观测值数量——默认情况下,limit 最多为 20。
truncated当 returned < count 时为 True;note 会用文字说明。
observation_ordernewest_first(默认)或 oldest_first(sort_order: "asc")。
observation_start / observation_end系列的实际覆盖范围,来自 FRED 的系列元数据。
requested_start / requested_end你请求的时间范围。未指定时不会出现。

最后两行是最值得了解的。FRED 的观测值端点会原样返回收到的 observation_start/observation_end,而在调用方两者都未设置时,会替换为 1600-01-01 / 9999-12-31——因此这个工具包以前会报告美国 GDP 的时间范围是 1600 年至 9999 年。现在,这些字段名表示系列元数据中的覆盖范围,与 fred_series_info 和 fred_search 对它们的含义保持一致。

区域联储即时预测(无需密钥,不属于 FRED 系列)

此工具包中的两个工具直接代理地区联邦储备银行的网站, 而不是圣路易斯联储的 API——在开发前已通过 fred_search 确认, FRED 自己的目录中不存在这两个系列。无需 _apiKey。

  • nyfed_gdp_nowcast() — 纽约联邦储备银行对当前跟踪季度的实际 GDP 增长进行每周即时预测,提供 50%/80% 概率区间、发布方自己的说明,以及 最近已结束季度的最终预测与 BEA 实际 GDP 数据。每周五更新。
  • cleveland_fed_inflation_nowcast() — 克利夫兰联邦储备银行对 CPI/PCE 通胀进行每日即时预测(总体和核心),提供环比、同比和季度年化数据。空白 单元格表示该时期的 BLS/BEA 官方数据已发布。每个工作日更新。
nyfed_gdp_nowcast({})
// -> current_estimates: [{ quarter: "2026:Q3", nowcast_pct: 2.7, ... }, { quarter: "2026:Q4", nowcast_pct: 2.8 }]

cleveland_fed_inflation_nowcast({})
// -> current: { month: "October 2026", month_over_month_pct: { cpi: 0.27, ... }, year_over_year_pct: { cpi: 3.77, ... } }

常见问题

  • 数据版本:FRED 会保留历史“数据版本”(时间 T 当时报告的数据)。默认工具调用会返回最新修订的系列。要按指定时间查询,可向 fred_get_series 传入 as_of(或 realtime_start/realtime_end);也可以使用 fred_revisions 查看某个观测值的完整历史记录。
  • 频率聚合:frequency 参数会将数据转换为不同频率(例如,将日频数据转换为月平均值)。默认使用系列的原生频率。
  • 单位转换:units 参数会在请求时计算衍生系列(例如,pch 表示百分比变化,pca 表示复合年化增长率等)。不要在客户端计算这些值;交给 FRED 处理。
  • 系列已更名:美联储偶尔会弃用某个系列并创建替代系列。旧 ID 会返回错误。可通过 fred_search 查找替代项。

快速开始

将其添加到你的 MCP 客户端(Claude Desktop、Cursor、Windsurf 等):

{
  "mcpServers": {
    "fred": {
      "url": "https://gateway.pipeworx.io/fred/mcp"
    }
  }
}
此端点实际提供的内容

tools/list 在 https://gateway.pipeworx.io/fred/mcp 返回上表中的工具,以及共享的 Pipeworx 元工具——ask_pipeworx、 discover_tools、search_within、remember/recall,以及网关范围内的其他工具。因此,你看到的工具数量会多于此表:目前,单个工具包端点会列出大约 30 个共享工具,以及该工具包自身的工具。连接的 initialize 响应会说明确切范围,是当天情况的权威答案。

这是有意为之,并非意外的多路复用。元工具可以让限定范围的连接回答此工具包未涵盖的问题——通过 ask_pipeworx 跨整个目录进行路由——而无需添加第二个 MCP 服务。目前无法在不加载这些工具的情况下挂载工具包端点;如果额外的架构定义带来的上下文成本超过路由功能的价值,请连接一次完整网关,而不是连接多个工具包端点。

或者,连接完整的 Pipeworx 网关,直接列出所有工具包的工具,而不只是此工具包的工具:

{
  "mcpServers": {
    "pipeworx": {
      "url": "https://gateway.pipeworx.io/mcp"
    }
  }
}

这两个 URL 都会连接到同一个网关和相同的 1879+ 个数据源。唯一的区别是直接列出哪个工具包的工具;无论连接哪一个,ask_pipeworx 都能访问全部工具。

没有 MCP 客户端?通过 HTTP 调用

curl -X POST https://gateway.pipeworx.io/v1/tools/fred_get_series \
  -H 'Content-Type: application/json' \
  -d '{"series_id":"MORTGAGE30US"}'

首次调用无需账户。查看任意工具:GET https://gateway.pipeworx.io/v1/tools/fred_get_series。查找工具:使用 {"query":"..."} 向 https://gateway.pipeworx.io/v1/tools/search_packs 发送 POST 请求。

独立运行(无需网关账户)

此软件包也可以作为本地 stdio MCP 服务运行——无需 Pipeworx 账户,也无需通过网关往返:

{
  "mcpServers": {
    "fred": {
      "command": "npx",
      "args": ["-y", "@pipeworx/mcp-fred"]
    }
  }
}

或者直接运行,确认其能够启动:

npx -y @pipeworx/mcp-fred

它通过 stdin/stdout 使用 MCP,并仅针对此工具包的工具响应 initialize/tools/list/tools/call——不包含上方网关连接添加的任何共享元工具。相同的源代码,相同的工具,但没有 ask_pipeworx 路由功能。

使用 ask_pipeworx

你可以用通俗易懂的语言提问,而不是直接调用工具——这既适用于上方的工具包端点,也适用于完整网关:

ask_pipeworx({ question: "your question about Fred data" })

网关会选择合适的工具,并自动填写参数。

更多信息

许可证

MIT

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。