FRED Economic Data

Accede a datos económicos del Banco de la Reserva Federal de St. Louis (FRED).

Documentación

MCP-FREDAPI

Integración de la API de FRED (Datos Económicos de la Reserva Federal) con el Protocolo de Contexto de Modelo (MCP)

Tabla de Contenidos

Introducción

MCP-FREDAPI proporciona acceso a datos económicos del Banco de la Reserva Federal de San Luis (FRED) a través del Protocolo de Contexto de Modelo. Esta integración permite que asistentes de IA como Claude recuperen datos de series temporales económicas directamente cuando se usan con Cursor u otros entornos compatibles con MCP.

Este paquete se integra con la API oficial de FRED, centrándose específicamente en el endpoint de observaciones de series que proporciona datos de series temporales para indicadores económicos.

Instalación

Hay dos métodos de instalación:

Método 1: Usando pip

Instale las dependencias requeridas:

pip install "mcp[cli]" httpx python-dotenv

Clone este repositorio:

git clone https://github.com/Jaldekoa/mcp-fredapi.git
cd mcp-fredapi

Método 2: Usando uv (Recomendado)

Este método es recomendado porque coincide con la configuración mostrada en mcp.json.

  1. Primero, instale uv si aún no lo tiene:
pip install uv
  1. Clone este repositorio:
git clone https://github.com/Jaldekoa/mcp-fredapi.git
cd mcp-fredapi
  1. Use uv para ejecutar el servidor (no es necesario instalar dependencias por separado):
uv run --with mcp --with httpx mcp run server.py

Configuración

Clave de API de FRED

Necesitará una clave de API de FRED, que puede obtener en API de FRED.

Cree un archivo .env en la raíz del proyecto:

FRED_API_KEY=your_api_key_here

Configuración de Claude/Cursor

Para configurar Cursor y usar este servidor MCP, agregue lo siguiente a su archivo ~/.cursor/mcp.json:

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

Reemplace /path/to/mcp-fredapi con la ruta real al repositorio en su sistema. Por ejemplo:

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

Nota: En Windows, puede usar barras diagonales / o barras diagonales dobles invertidas \\ en la ruta.

Herramientas Disponibles

get_fred_series_observations

Recupera observaciones de series temporales económicas de FRED.

Cuando use Claude en Cursor, puede acceder a esta herramienta directamente con:

@mcp-fredapi:get_fred_series_observations

Parámetros

La herramienta get_fred_series_observations acepta los siguientes parámetros. Para obtener detalles técnicos completos sobre cada parámetro, consulte la documentación oficial de la API de FRED.

ParámetroTipoDescripciónValores PermitidosValor PredeterminadoEstado
series_idstrEl ID de la serie económica-(Requerido)✅ Funciona
sort_orderstrOrden de clasificación de las observaciones'asc', 'desc''asc'✅ Funciona
unitsstrTransformación del valor de los datos'lin', 'chg', 'ch1', 'pch', 'pc1', 'pca', 'cch', 'cca', 'log''lin'✅ Funciona
frequencystrFrecuencia de las observaciones'd', 'w', 'bw', 'm', 'q', 'sa', 'a', 'wef', 'weth', 'wew', 'wetu', 'wem', 'wesu', 'wesa', 'bwew', 'bwem'None✅ Funciona
aggregation_methodstrMétodo de agregación para la frecuencia'avg', 'sum', 'eop''avg'✅ Funciona
output_typeintTipo de salida de las observaciones1, 2, 3, 41✅ Funciona
realtime_startstrInicio del período en tiempo real (AAAA-MM-DD)-None❌ No funciona
realtime_endstrFin del período en tiempo real (AAAA-MM-DD)-None❌ No funciona
limitint/strNúmero máximo de observaciones a devolverEntre 1 y 10000010❌ No funciona
offsetint/strNúmero de observaciones a omitir desde el inicio-0❌ No funciona
observation_startstrFecha de inicio de las observaciones (AAAA-MM-DD)-None❌ No funciona
observation_endstrFecha de fin de las observaciones (AAAA-MM-DD)-None❌ No funciona
vintage_datesstrLista separada por comas de fechas de cosecha-None❌ No funciona

[!ADVERTENCIA]

Debido a limitaciones actuales con la implementación de MCP, solo ciertos parámetros funcionan correctamente:

  • ✅ Parámetros que funcionan: series_id, sort_order, units, frequency, aggregation_method, and output_type`.
  • ❌ Parámetros que no funcionan: realtime_start, realtime_end, limit, offset, observation_start, observation_end y vintage_dates.

Para obtener mejores resultados, use los parámetros que funcionan en sus consultas. Las actualizaciones futuras pueden resolver estas limitaciones.

Ejemplos

Obtener Datos del PIB de EE. UU.

Cuando use Claude en Cursor, puede solicitar datos del PIB de esta manera:

Can you get the latest GDP data from FRED?

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

Obtener Datos del PIB en Orden Descendente

Can you get the GDP data in descending order (newest first)?

@mcp-fredapi:get_fred_series_observations
{
  "series_id": "GDP",
  "sort_order": "desc"
}

Obtener Datos Anuales del PIB

Can you get annual GDP data?

@mcp-fredapi:get_fred_series_observations
{
  "series_id": "GDP",
  "frequency": "a"
}

Obtener la Tasa de Inflación

Para obtener datos del índice de precios al consumidor con cambio porcentual:

What's the recent inflation rate in the US?

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

Formato de Salida Diferente

Show me GDP data in a different format.

@mcp-fredapi:get_fred_series_observations
{
  "series_id": "GDP",
  "output_type": 2
}

Contribuciones

Las contribuciones son bienvenidas. Siga estos pasos:

  1. Haga un fork del repositorio
  2. Cree una rama de características (git checkout -b feature/amazing-feature)
  3. Realice sus cambios
  4. Confirme sus cambios (git commit -m 'Add an amazing feature')
  5. Envíe a la rama (git push origin feature/amazing-feature)
  6. Abra una Solicitud de Extracción (Pull Request)

Licencia

Este proyecto está licenciado bajo la Licencia MIT: consulte el archivo LICENSE para obtener más detalles.

Referencias