treasury_par_yield_curve

Pack: fred · Connect: https://pipeworx.io/mcp (see Connect below for a single-pack URL)

No MCP client? Call it directly: GET https://gateway.pipeworx.io/v1/tools/treasury_par_yield_curve for the schema, then POST the same URL with its arguments for the data.

The full US Treasury par yield curve — every maturity, 1-month to 30-year — for one date, from the St. Louis Fed.

Tool description as the model sees it

The full US Treasury daily par yield curve (also called the Treasury yield curve) for ONE date — every published maturity from 1-month through 30-year in a single call. Sourced from the Federal Reserve Bank of St. Louis (FRED)‘s DGS* constant-maturity series, matching the US Treasury’s own daily par yield curve rates. Use this (not fred_get_series) whenever the question wants more than one maturity at once: “treasury yield curve”, “par yield curve”, “full yield curve today/on ”, “treasury rates across maturities”. Pass date (YYYY-MM-DD) for a specific day; if that date has no published rate (a weekend or federal holiday), the curve as of the nearest PRIOR business day is returned instead, and the response says so (used_prior_business_day_fallback). Omit date for the most recently published curve. For a single maturity’s own history over time, use fred_get_series with the matching DGS series id instead (e.g. DGS10 for the 10-year).

Parameters

NameTypeRequiredDescription
datestringnoThe date to get the par yield curve for, YYYY-MM-DD. Omit for the most recently published curve. If the date falls on a weekend or federal holiday (no published rate), the nearest PRIOR business day’s curve is returned instead.
_apiKeystringyesFRED API key

Example call

Arguments

{
  "date": "2024-07-01"
}

curl

curl -X POST https://gateway.pipeworx.io/fred/mcp \
  -H 'Content-Type: application/json' \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"treasury_par_yield_curve","arguments":{"date":"2024-07-01"}}}'

TypeScript (@pipeworx/sdk)

import { Pipeworx } from '@pipeworx/sdk';
const pipeworx = new Pipeworx();

const result = await pipeworx.call('treasury_par_yield_curve', {
  "date": "2024-07-01"
});

More examples

{}

Response shape

Always returns: source, statement, requested_date, date_used, data_as_of, used_prior_business_day_fallback, curve, maturities

FieldTypeDescription
sourcestringPublisher and dataset — Federal Reserve Bank of St. Louis (FRED), US Treasury daily par yield curve rates.
statementstringHuman-readable summary of the curve, naming the date used and every maturity.
requested_datestring | nullThe date argument as passed, or null if omitted.
date_usedstringThe actual trading date the curve is as of (may differ from requested_date on a weekend/holiday).
data_as_ofstringSame as date_used — the freshness date of this curve.
used_prior_business_day_fallbackbooleanTrue when requested_date had no published rate and the nearest prior business day was used instead.
curveobjectMaturity key -> percent (null if that maturity has no observation for date_used). Keys: 1mo, 3mo, 6mo, 1yr, 2yr, 3yr, 5yr, 7yr, 10yr, 20yr, 30yr.
maturitiesarrayOne entry per maturity, with the underlying FRED series id.
notestringPresent only when one or more maturities had no published rate as of date_used.
Full JSON Schema
{
  "type": "object",
  "properties": {
    "source": {
      "type": "string",
      "description": "Publisher and dataset — Federal Reserve Bank of St. Louis (FRED), US Treasury daily par yield curve rates."
    },
    "statement": {
      "type": "string",
      "description": "Human-readable summary of the curve, naming the date used and every maturity."
    },
    "requested_date": {
      "type": [
        "string",
        "null"
      ],
      "description": "The `date` argument as passed, or null if omitted."
    },
    "date_used": {
      "type": "string",
      "description": "The actual trading date the curve is as of (may differ from requested_date on a weekend/holiday)."
    },
    "data_as_of": {
      "type": "string",
      "description": "Same as date_used — the freshness date of this curve."
    },
    "used_prior_business_day_fallback": {
      "type": "boolean",
      "description": "True when requested_date had no published rate and the nearest prior business day was used instead."
    },
    "curve": {
      "type": "object",
      "description": "Maturity key -> percent (null if that maturity has no observation for date_used). Keys: 1mo, 3mo, 6mo, 1yr, 2yr, 3yr, 5yr, 7yr, 10yr, 20yr, 30yr.",
      "additionalProperties": {
        "type": [
          "number",
          "null"
        ]
      }
    },
    "maturities": {
      "type": "array",
      "description": "One entry per maturity, with the underlying FRED series id.",
      "items": {
        "type": "object",
        "properties": {
          "maturity": {
            "type": "string"
          },
          "series_id": {
            "type": "string"
          },
          "percent": {
            "type": [
              "number",
              "null"
            ]
          },
          "date": {
            "type": [
              "string",
              "null"
            ]
          }
        }
      }
    },
    "note": {
      "type": "string",
      "description": "Present only when one or more maturities had no published rate as of date_used."
    }
  },
  "required": [
    "source",
    "statement",
    "requested_date",
    "date_used",
    "data_as_of",
    "used_prior_business_day_fallback",
    "curve",
    "maturities"
  ]
}

Connect

Add this to your MCP client config — every tool in the catalog, including this one — or use one-click install buttons:

{
  "mcpServers": {
    "pipeworx": {
      "url": "https://pipeworx.io/mcp"
    }
  }
}
Connect to just the fred pack
{
  "mcpServers": {
    "fred": {
      "url": "https://gateway.pipeworx.io/fred/mcp"
    }
  }
}

See Getting Started for client-specific install steps.

Regenerated from source · build November 3, 2026