使用说明

项目简介

MCP-FREDAPI 是一个基于 Model Context Protocol (MCP) 构建的服务器,它将美国联邦储备经济数据库 (FRED) 的 API 集成到 MCP 协议中,使得支持 MCP 协议的 LLM 客户端(如 Cursor 编辑器)能够通过标准化的方式访问 FRED 提供的丰富的经济时间序列数据。

主要功能点

  • 经济数据访问: 提供 'get_fred_series_observations' 工具,允许 LLM 客户端查询 FRED 数据库中的经济时间序列数据。
  • 参数化查询: 支持多种 FRED API 的参数,如 'series_id'(经济指标ID)、'frequency'(频率)、'units'(单位)等,方便用户定制化数据查询。
  • MCP 协议兼容: 完全兼容 MCP 协议,可以无缝接入支持 MCP 协议的客户端环境。

安装步骤

  1. 安装依赖: 确保你的 Python 环境中安装了必要的库。推荐使用 'pip' 进行安装:
    pip install mcp httpx python-dotenv
  2. 克隆仓库: 将 'mcp-fredapi' 仓库克隆到本地:
    git clone https://github.com/Jaldekoa/mcp-fredapi.git
    cd mcp-fredapi
  3. 配置 FRED API 密钥: 访问 FRED API 官网 获取 API 密钥,并在项目根目录下创建 '.env' 文件,添加以下内容,替换 'your_api_key_here' 为你的实际密钥:
    FRED_API_KEY=your_api_key_here

服务器配置

要让 MCP 客户端(例如 Cursor 编辑器)连接到此 MCP 服务器,需要在客户端的 MCP 配置文件中添加服务器信息。以 Cursor 为例,编辑 '~/.cursor/mcp.json' 文件,添加如下配置:

{
  "mcpServers": {
    "mcp-fredapi": {
      "command": "uv",
      "args": ["--directory", "/path/to/mcp-fredapi", "run", "--with", "mcp", "--with", "httpx", "mcp", "run", "server.py"]
    }
  }
}

配置参数说明:

  • 'server name': 'mcp-fredapi' - 服务器名称,客户端通过此名称引用该服务器。
  • 'command': 'uv' - 运行服务器的命令,这里使用了 'uv' 运行器 (仓库推荐使用 'uv',也可以替换为 'python')。
  • 'args': 运行命令的参数列表:
    • '--directory': '/path/to/mcp-fredapi' - 请替换为 'mcp-fredapi' 仓库在您本地的实际路径
    • 'run': 'uv run' 命令的子命令,用于运行 Python 脚本。
    • '--with mcp': 使用 'mcp' 插件。
    • '--with httpx': 使用 'httpx' 插件。
    • 'mcp run': 运行 MCP 服务器。
    • 'server.py': 服务器主程序文件。

注意: 如果您没有安装 'uv',可以将 'command' 修改为 'python',并相应调整 'args' 参数。例如:

{
  "mcpServers": {
    "mcp-fredapi": {
      "command": "python",
      "args": ["/path/to/mcp-fredapi/server.py"]
    }
  }
}

同样需要 将 '/path/to/mcp-fredapi' 替换为实际路径

基本使用方法

配置完成后,在支持 MCP 协议的 LLM 客户端中,即可使用 '@mcp-fredapi:get_fred_series_observations' 工具访问 FRED 数据。

示例 1: 获取美国 GDP 数据

在客户端中输入类似指令:

@mcp-fredapi:get_fred_series_observations
{
  "series_id": "GDP"
}

示例 2: 获取年化 CPI 增长率

@mcp-fredapi:get_fred_series_observations
{
  "series_id": "CPIAUCSL",
  "units": "pch",
  "frequency": "a"
}

更多参数和使用方法,请参考仓库 README.md 文件中的说明和 FRED API 官方文档。

信息

分类

网页与API