Reserve Requirements · Capability

FRED API - Federal Reserve Economic Data

The Federal Reserve Economic Data (FRED) API provided by the Federal Reserve Bank of St. Louis offers programmatic access to over 800,000 economic time series including reserve requirement data, monetary base measures, H.6 Money Stock Measures, and historical aggregate reserve data from the discontinued H.3 release. The API uses API key authentication and returns data in JSON, XML, or other formats.

Run with Naftiko ReserveRequirementsAPI

What You Can Do

GET
Getseries — Get Economic Series
/series
GET
Getseriesobservations — Get Series Observations
/series/observations
GET
Searchseries — Search Series
/series/search
GET
Getcategory — Get Category
/category
GET
Getcategoryseries — Get Category Series
/category/series
GET
Listreleases — List Releases
/releases
GET
Getrelease — Get Release
/release
GET
Getreleaseseries — Get Release Series
/release/series

MCP Tools

getseries

Get Economic Series

read-only idempotent
getseriesobservations

Get Series Observations

read-only idempotent
searchseries

Search Series

read-only idempotent
getcategory

Get Category

read-only idempotent
getcategoryseries

Get Category Series

read-only idempotent
listreleases

List Releases

read-only idempotent
getrelease

Get Release

read-only idempotent
getreleaseseries

Get Release Series

read-only idempotent

Capability Spec

reserve-requirements-capability.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: FRED API - Federal Reserve Economic Data
  description: The Federal Reserve Economic Data (FRED) API provided by the Federal Reserve Bank of St. Louis offers programmatic
    access to over 800,000 economic time series including reserve requirement data, monetary base measures, H.6 Money Stock
    Measures, and historical aggregate reserve data from the discontinued H.3 release. The API uses API key authentication
    and returns data in JSON, XML, or other formats.
  tags:
  - Reserve
  - Requirements
  - API
  created: '2026-05-06'
  modified: '2026-05-06'
capability:
  consumes:
  - type: http
    namespace: reserve-requirements
    baseUri: https://api.stlouisfed.org/fred
    description: FRED API - Federal Reserve Economic Data HTTP API.
    authentication:
      type: apikey
      in: query
      name: api_key
      value: '{{RESERVE_REQUIREMENTS_TOKEN}}'
    resources:
    - name: series
      path: /series
      operations:
      - name: getseries
        method: GET
        description: Get Economic Series
        inputParameters:
        - name: series_id
          in: query
          type: string
          required: true
          description: The FRED series ID (e.g., RESBALNS, BOGMBASE).
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: series-observations
      path: /series/observations
      operations:
      - name: getseriesobservations
        method: GET
        description: Get Series Observations
        inputParameters:
        - name: series_id
          in: query
          type: string
          required: true
          description: The FRED series ID.
        - name: observation_start
          in: query
          type: string
          description: Start date for observations (YYYY-MM-DD).
        - name: observation_end
          in: query
          type: string
          description: End date for observations (YYYY-MM-DD).
        - name: sort_order
          in: query
          type: string
          description: Sort order for observations.
        - name: limit
          in: query
          type: integer
          description: Maximum number of observations to return.
        - name: offset
          in: query
          type: integer
          description: Offset for pagination.
        - name: units
          in: query
          type: string
          description: Units transformation for the data.
        - name: frequency
          in: query
          type: string
          description: Frequency of the data.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: series-search
      path: /series/search
      operations:
      - name: searchseries
        method: GET
        description: Search Series
        inputParameters:
        - name: search_text
          in: query
          type: string
          required: true
          description: Search keywords (e.g., "reserve requirements", "monetary base").
        - name: search_type
          in: query
          type: string
          description: Type of search to perform.
        - name: limit
          in: query
          type: integer
          description: Maximum number of results.
        - name: offset
          in: query
          type: integer
          description: Offset for pagination.
        - name: order_by
          in: query
          type: string
          description: Field to order results by.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: category
      path: /category
      operations:
      - name: getcategory
        method: GET
        description: Get Category
        inputParameters:
        - name: category_id
          in: query
          type: integer
          required: true
          description: The category ID (e.g., 32217 for Reserve Requirements).
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: category-series
      path: /category/series
      operations:
      - name: getcategoryseries
        method: GET
        description: Get Category Series
        inputParameters:
        - name: category_id
          in: query
          type: integer
          required: true
          description: The category ID.
        - name: limit
          in: query
          type: integer
          description: Maximum number of results.
        - name: offset
          in: query
          type: integer
          description: Offset for pagination.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: releases
      path: /releases
      operations:
      - name: listreleases
        method: GET
        description: List Releases
        inputParameters:
        - name: limit
          in: query
          type: integer
          description: Maximum number of results.
        - name: offset
          in: query
          type: integer
          description: Offset for pagination.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: release
      path: /release
      operations:
      - name: getrelease
        method: GET
        description: Get Release
        inputParameters:
        - name: release_id
          in: query
          type: integer
          required: true
          description: The release ID.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: release-series
      path: /release/series
      operations:
      - name: getreleaseseries
        method: GET
        description: Get Release Series
        inputParameters:
        - name: release_id
          in: query
          type: integer
          required: true
          description: The release ID.
        - name: limit
          in: query
          type: integer
          description: Maximum number of results.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
  exposes:
  - type: rest
    port: 8080
    namespace: reserve-requirements-rest
    description: REST adapter for FRED API - Federal Reserve Economic Data.
    resources:
    - path: /series
      name: getseries
      operations:
      - method: GET
        name: getseries
        description: Get Economic Series
        call: reserve-requirements.getseries
        outputParameters:
        - type: object
          mapping: $.
    - path: /series/observations
      name: getseriesobservations
      operations:
      - method: GET
        name: getseriesobservations
        description: Get Series Observations
        call: reserve-requirements.getseriesobservations
        outputParameters:
        - type: object
          mapping: $.
    - path: /series/search
      name: searchseries
      operations:
      - method: GET
        name: searchseries
        description: Search Series
        call: reserve-requirements.searchseries
        outputParameters:
        - type: object
          mapping: $.
    - path: /category
      name: getcategory
      operations:
      - method: GET
        name: getcategory
        description: Get Category
        call: reserve-requirements.getcategory
        outputParameters:
        - type: object
          mapping: $.
    - path: /category/series
      name: getcategoryseries
      operations:
      - method: GET
        name: getcategoryseries
        description: Get Category Series
        call: reserve-requirements.getcategoryseries
        outputParameters:
        - type: object
          mapping: $.
    - path: /releases
      name: listreleases
      operations:
      - method: GET
        name: listreleases
        description: List Releases
        call: reserve-requirements.listreleases
        outputParameters:
        - type: object
          mapping: $.
    - path: /release
      name: getrelease
      operations:
      - method: GET
        name: getrelease
        description: Get Release
        call: reserve-requirements.getrelease
        outputParameters:
        - type: object
          mapping: $.
    - path: /release/series
      name: getreleaseseries
      operations:
      - method: GET
        name: getreleaseseries
        description: Get Release Series
        call: reserve-requirements.getreleaseseries
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    port: 9090
    namespace: reserve-requirements-mcp
    transport: http
    description: MCP adapter for FRED API - Federal Reserve Economic Data for AI agent use.
    tools:
    - name: getseries
      description: Get Economic Series
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: reserve-requirements.getseries
      with:
        series_id: tools.series_id
      inputParameters:
      - name: series_id
        type: string
        description: The FRED series ID (e.g., RESBALNS, BOGMBASE).
        required: true
      outputParameters:
      - type: object
        mapping: $.
    - name: getseriesobservations
      description: Get Series Observations
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: reserve-requirements.getseriesobservations
      with:
        series_id: tools.series_id
        observation_start: tools.observation_start
        observation_end: tools.observation_end
        sort_order: tools.sort_order
        limit: tools.limit
        offset: tools.offset
        units: tools.units
        frequency: tools.frequency
      inputParameters:
      - name: series_id
        type: string
        description: The FRED series ID.
        required: true
      - name: observation_start
        type: string
        description: Start date for observations (YYYY-MM-DD).
      - name: observation_end
        type: string
        description: End date for observations (YYYY-MM-DD).
      - name: sort_order
        type: string
        description: Sort order for observations.
      - name: limit
        type: integer
        description: Maximum number of observations to return.
      - name: offset
        type: integer
        description: Offset for pagination.
      - name: units
        type: string
        description: Units transformation for the data.
      - name: frequency
        type: string
        description: Frequency of the data.
      outputParameters:
      - type: object
        mapping: $.
    - name: searchseries
      description: Search Series
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: reserve-requirements.searchseries
      with:
        search_text: tools.search_text
        search_type: tools.search_type
        limit: tools.limit
        offset: tools.offset
        order_by: tools.order_by
      inputParameters:
      - name: search_text
        type: string
        description: Search keywords (e.g., "reserve requirements", "monetary base").
        required: true
      - name: search_type
        type: string
        description: Type of search to perform.
      - name: limit
        type: integer
        description: Maximum number of results.
      - name: offset
        type: integer
        description: Offset for pagination.
      - name: order_by
        type: string
        description: Field to order results by.
      outputParameters:
      - type: object
        mapping: $.
    - name: getcategory
      description: Get Category
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: reserve-requirements.getcategory
      with:
        category_id: tools.category_id
      inputParameters:
      - name: category_id
        type: integer
        description: The category ID (e.g., 32217 for Reserve Requirements).
        required: true
      outputParameters:
      - type: object
        mapping: $.
    - name: getcategoryseries
      description: Get Category Series
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: reserve-requirements.getcategoryseries
      with:
        category_id: tools.category_id
        limit: tools.limit
        offset: tools.offset
      inputParameters:
      - name: category_id
        type: integer
        description: The category ID.
        required: true
      - name: limit
        type: integer
        description: Maximum number of results.
      - name: offset
        type: integer
        description: Offset for pagination.
      outputParameters:
      - type: object
        mapping: $.
    - name: listreleases
      description: List Releases
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: reserve-requirements.listreleases
      with:
        limit: tools.limit
        offset: tools.offset
      inputParameters:
      - name: limit
        type: integer
        description: Maximum number of results.
      - name: offset
        type: integer
        description: Offset for pagination.
      outputParameters:
      - type: object
        mapping: $.
    - name: getrelease
      description: Get Release
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: reserve-requirements.getrelease
      with:
        release_id: tools.release_id
      inputParameters:
      - name: release_id
        type: integer
        description: The release ID.
        required: true
      outputParameters:
      - type: object
        mapping: $.
    - name: getreleaseseries
      description: Get Release Series
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: reserve-requirements.getreleaseseries
      with:
        release_id: tools.release_id
        limit: tools.limit
      inputParameters:
      - name: release_id
        type: integer
        description: The release ID.
        required: true
      - name: limit
        type: integer
        description: Maximum number of results.
      outputParameters:
      - type: object
        mapping: $.
binds:
- namespace: env
  keys:
    RESERVE_REQUIREMENTS_TOKEN: RESERVE_REQUIREMENTS_TOKEN