FRED · Capability

FRED API — Tags

FRED API — Tags. 3 operations. Lead operation: FRED Get FRED Tags. Self-contained Naftiko capability covering one FRED business surface.

Run with Naftiko FREDFREDTags

What You Can Do

GET
Gettags — FRED Get FRED Tags
/v1/tags
GET
Getrelatedtags — FRED Get the Related FRED Tags for One or More FRED Tags
/v1/related-tags
GET
Gettagsseries — FRED Get the Series Matching All Tags
/v1/tags/series

MCP Tools

get-tags

FRED Get FRED Tags

read-only idempotent
get-related-tags-one-more

FRED Get the Related FRED Tags for One or More FRED Tags

read-only idempotent
get-series-matching-all-tags

FRED Get the Series Matching All Tags

read-only idempotent

Capability Spec

fred-tags.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: FRED API — Tags
  description: 'FRED API — Tags. 3 operations. Lead operation: FRED Get FRED Tags. Self-contained Naftiko capability covering one FRED business surface.'
  tags:
    - FRED
    - FRED
    - Tags
  created: '2026-05-28'
  modified: '2026-05-28'
binds:
  - namespace: env
    keys:
      FRED_API_KEY: FRED_API_KEY
capability:
  consumes:
    - type: http
      namespace: fred-tags
      baseUri: https://api.stlouisfed.org/fred
      description: FRED API — Tags business capability. Self-contained, no shared references.
      authentication:
        type: apikey
        key: api_key
        value: '{{env.FRED_API_KEY}}'
        placement: query
      resources:
        - name: tags
          path: /tags
          operations:
            - name: getTags
              method: GET
              description: FRED Get FRED Tags
              inputParameters:
                - name: api_key
                  in: query
                  type: string
                  required: true
                  description: 32-character lower-case alphanumeric FRED API key.
                - name: file_type
                  in: query
                  type: string
                  required: false
                  description: Response format. xml (default) or json. The observations endpoint additionally accepts xlsx and csv.
                - name: realtime_start
                  in: query
                  type: string
                  required: false
                  description: Start of the real-time period (YYYY-MM-DD). Defaults to today.
                - name: realtime_end
                  in: query
                  type: string
                  required: false
                  description: End of the real-time period (YYYY-MM-DD). Defaults to today.
                - name: tag_names
                  in: query
                  type: string
                  required: false
                  description: Semicolon-separated list of tag names to require.
                - name: tag_group_id
                  in: query
                  type: string
                  required: false
                  description: Group identifier for tags — freq, gen, geo, geot, rls, seas, src.
                - name: search_text
                  in: query
                  type: string
                  required: false
                  description: Words to match against tag names and descriptions.
                - name: limit
                  in: query
                  type: integer
                  required: false
                  description: Maximum number of results to return (1–1000).
                - name: offset
                  in: query
                  type: integer
                  required: false
                  description: Non-negative integer offset into the result set for pagination.
                - name: order_by
                  in: query
                  type: string
                  required: false
                  description: Field to order tag results by.
                - name: sort_order
                  in: query
                  type: string
                  required: false
                  description: Sort order. asc (ascending, default) or desc (descending).
              outputRawFormat: json
              outputParameters:
                - name: result
                  type: object
                  value: $.
        - name: related-tags
          path: /related_tags
          operations:
            - name: getRelatedTags
              method: GET
              description: FRED Get the Related FRED Tags for One or More FRED Tags
              inputParameters:
                - name: api_key
                  in: query
                  type: string
                  required: true
                  description: 32-character lower-case alphanumeric FRED API key.
                - name: file_type
                  in: query
                  type: string
                  required: false
                  description: Response format. xml (default) or json. The observations endpoint additionally accepts xlsx and csv.
                - name: realtime_start
                  in: query
                  type: string
                  required: false
                  description: Start of the real-time period (YYYY-MM-DD). Defaults to today.
                - name: realtime_end
                  in: query
                  type: string
                  required: false
                  description: End of the real-time period (YYYY-MM-DD). Defaults to today.
                - name: tag_names
                  in: query
                  type: string
                  required: false
                  description: Semicolon-separated list of tag names to require.
                - name: exclude_tag_names
                  in: query
                  type: string
                  required: false
                  description: Semicolon-separated list of tag names to exclude.
                - name: tag_group_id
                  in: query
                  type: string
                  required: false
                  description: Group identifier for tags — freq, gen, geo, geot, rls, seas, src.
                - name: search_text
                  in: query
                  type: string
                  required: false
                  description: Words to match against tag names and descriptions.
                - name: limit
                  in: query
                  type: integer
                  required: false
                  description: Maximum number of results to return (1–1000).
                - name: offset
                  in: query
                  type: integer
                  required: false
                  description: Non-negative integer offset into the result set for pagination.
                - name: order_by
                  in: query
                  type: string
                  required: false
                  description: Field to order tag results by.
                - name: sort_order
                  in: query
                  type: string
                  required: false
                  description: Sort order. asc (ascending, default) or desc (descending).
              outputRawFormat: json
              outputParameters:
                - name: result
                  type: object
                  value: $.
        - name: tags-series
          path: /tags/series
          operations:
            - name: getTagsSeries
              method: GET
              description: FRED Get the Series Matching All Tags
              inputParameters:
                - name: api_key
                  in: query
                  type: string
                  required: true
                  description: 32-character lower-case alphanumeric FRED API key.
                - name: file_type
                  in: query
                  type: string
                  required: false
                  description: Response format. xml (default) or json. The observations endpoint additionally accepts xlsx and csv.
                - name: tag_names
                  in: query
                  type: string
                  required: false
                  description: Semicolon-separated list of tag names to require.
                - name: exclude_tag_names
                  in: query
                  type: string
                  required: false
                  description: Semicolon-separated list of tag names to exclude.
                - name: realtime_start
                  in: query
                  type: string
                  required: false
                  description: Start of the real-time period (YYYY-MM-DD). Defaults to today.
                - name: realtime_end
                  in: query
                  type: string
                  required: false
                  description: End of the real-time period (YYYY-MM-DD). Defaults to today.
                - name: limit
                  in: query
                  type: integer
                  required: false
                  description: Maximum number of results to return (1–1000).
                - name: offset
                  in: query
                  type: integer
                  required: false
                  description: Non-negative integer offset into the result set for pagination.
                - name: order_by
                  in: query
                  type: string
                  required: false
                  description: Field to order series results by.
                - name: sort_order
                  in: query
                  type: string
                  required: false
                  description: Sort order. asc (ascending, default) or desc (descending).
              outputRawFormat: json
              outputParameters:
                - name: result
                  type: object
                  value: $.
  exposes:
    - type: rest
      namespace: fred-tags-rest
      port: 8080
      description: REST adapter for FRED API — Tags. One Spectral-compliant resource per consumed operation, prefixed with /v1.
      resources:
        - path: /v1/tags
          name: tags
          description: REST surface for /tags.
          operations:
            - method: GET
              name: getTags
              description: FRED Get FRED Tags
              call: fred-tags.getTags
              with:
                api_key: rest.api_key
                file_type: rest.file_type
                realtime_start: rest.realtime_start
                realtime_end: rest.realtime_end
                tag_names: rest.tag_names
                tag_group_id: rest.tag_group_id
                search_text: rest.search_text
                limit: rest.limit
                offset: rest.offset
                order_by: rest.order_by
                sort_order: rest.sort_order
              outputParameters:
                - type: object
                  mapping: $.
        - path: /v1/related-tags
          name: related-tags
          description: REST surface for /related_tags.
          operations:
            - method: GET
              name: getRelatedTags
              description: FRED Get the Related FRED Tags for One or More FRED Tags
              call: fred-tags.getRelatedTags
              with:
                api_key: rest.api_key
                file_type: rest.file_type
                realtime_start: rest.realtime_start
                realtime_end: rest.realtime_end
                tag_names: rest.tag_names
                exclude_tag_names: rest.exclude_tag_names
                tag_group_id: rest.tag_group_id
                search_text: rest.search_text
                limit: rest.limit
                offset: rest.offset
                order_by: rest.order_by
                sort_order: rest.sort_order
              outputParameters:
                - type: object
                  mapping: $.
        - path: /v1/tags/series
          name: tags-series
          description: REST surface for /tags/series.
          operations:
            - method: GET
              name: getTagsSeries
              description: FRED Get the Series Matching All Tags
              call: fred-tags.getTagsSeries
              with:
                api_key: rest.api_key
                file_type: rest.file_type
                tag_names: rest.tag_names
                exclude_tag_names: rest.exclude_tag_names
                realtime_start: rest.realtime_start
                realtime_end: rest.realtime_end
                limit: rest.limit
                offset: rest.offset
                order_by: rest.order_by
                sort_order: rest.sort_order
              outputParameters:
                - type: object
                  mapping: $.
    - type: mcp
      namespace: fred-tags-mcp
      port: 9090
      transport: http
      description: MCP adapter for FRED API — Tags. One tool per consumed operation, routed inline through this capability's consumes block.
      tools:
        - name: get-tags
          description: FRED Get FRED Tags
          hints:
            readOnly: true
            destructive: false
            idempotent: true
          call: fred-tags.getTags
          with:
            api_key: tools.api_key
            file_type: tools.file_type
            realtime_start: tools.realtime_start
            realtime_end: tools.realtime_end
            tag_names: tools.tag_names
            tag_group_id: tools.tag_group_id
            search_text: tools.search_text
            limit: tools.limit
            offset: tools.offset
            order_by: tools.order_by
            sort_order: tools.sort_order
          outputParameters:
            - type: object
              mapping: $.
        - name: get-related-tags-one-more
          description: FRED Get the Related FRED Tags for One or More FRED Tags
          hints:
            readOnly: true
            destructive: false
            idempotent: true
          call: fred-tags.getRelatedTags
          with:
            api_key: tools.api_key
            file_type: tools.file_type
            realtime_start: tools.realtime_start
            realtime_end: tools.realtime_end
            tag_names: tools.tag_names
            exclude_tag_names: tools.exclude_tag_names
            tag_group_id: tools.tag_group_id
            search_text: tools.search_text
            limit: tools.limit
            offset: tools.offset
            order_by: tools.order_by
            sort_order: tools.sort_order
          outputParameters:
            - type: object
              mapping: $.
        - name: get-series-matching-all-tags
          description: FRED Get the Series Matching All Tags
          hints:
            readOnly: true
            destructive: false
            idempotent: true
          call: fred-tags.getTagsSeries
          with:
            api_key: tools.api_key
            file_type: tools.file_type
            tag_names: tools.tag_names
            exclude_tag_names: tools.exclude_tag_names
            realtime_start: tools.realtime_start
            realtime_end: tools.realtime_end
            limit: tools.limit
            offset: tools.offset
            order_by: tools.order_by
            sort_order: tools.sort_order
          outputParameters:
            - type: object
              mapping: $.