{
  "base_url": "https://bonds-api.com/api/v1",
  "mcp_endpoint": "POST https://mcp.bonds-api.com",
  "tools": [
    {
      "name": "latest",
      "method": "GET",
      "path": "/latest",
      "description": "Most recent bond yields for one or more countries/maturities.",
      "params": [
        {
          "name": "countries",
          "required": true,
          "description": "Comma-separated ISO 3166-1 alpha-2 codes, e.g. US,DE,ES"
        },
        {
          "name": "maturities",
          "required": false,
          "description": "Comma-separated maturities, e.g. 2Y,10Y. Omit for all available."
        }
      ]
    },
    {
      "name": "historical",
      "method": "GET",
      "path": "/historical",
      "description": "Bond yield on one specific past date.",
      "params": [
        {
          "name": "country",
          "required": true,
          "description": "ISO 3166-1 alpha-2 code"
        },
        {
          "name": "maturity",
          "required": true,
          "description": "e.g. 10Y"
        },
        {
          "name": "date",
          "required": true,
          "description": "Y-m-d"
        }
      ]
    },
    {
      "name": "timeseries",
      "method": "GET",
      "path": "/timeseries",
      "description": "Bond yield time series over a date range.",
      "params": [
        {
          "name": "country",
          "required": true,
          "description": "ISO 3166-1 alpha-2 code"
        },
        {
          "name": "maturity",
          "required": true,
          "description": "e.g. 10Y"
        },
        {
          "name": "start",
          "required": true,
          "description": "Y-m-d"
        },
        {
          "name": "end",
          "required": true,
          "description": "Y-m-d, >= start"
        }
      ]
    },
    {
      "name": "spread",
      "method": "GET",
      "path": "/spread",
      "description": "Yield spread of a country against a benchmark (e.g. Bund, Treasury).",
      "params": [
        {
          "name": "country",
          "required": true,
          "description": "ISO 3166-1 alpha-2 code"
        },
        {
          "name": "benchmark",
          "required": true,
          "description": "ISO 3166-1 alpha-2 code, e.g. DE for Bund"
        },
        {
          "name": "maturity",
          "required": false,
          "description": "Defaults to 10Y"
        }
      ]
    },
    {
      "name": "curve",
      "method": "GET",
      "path": "/curve",
      "description": "A country's full yield curve.",
      "params": [
        {
          "name": "country",
          "required": true,
          "description": "ISO 3166-1 alpha-2 code"
        },
        {
          "name": "date",
          "required": false,
          "description": "Defaults to the latest available date"
        }
      ]
    },
    {
      "name": "intraday",
      "method": "GET",
      "path": "/intraday",
      "description": "Intraday yield snapshots for one day (Professional plan).",
      "params": [
        {
          "name": "country",
          "required": true,
          "description": "ISO 3166-1 alpha-2 code"
        },
        {
          "name": "maturity",
          "required": true,
          "description": "e.g. 10Y"
        },
        {
          "name": "date",
          "required": true,
          "description": "Y-m-d"
        }
      ]
    },
    {
      "name": "fluctuation",
      "method": "GET",
      "path": "/fluctuation",
      "description": "Change, min and max yield over a period.",
      "params": [
        {
          "name": "countries",
          "required": true,
          "description": "Comma-separated ISO 3166-1 alpha-2 codes"
        },
        {
          "name": "maturity",
          "required": true,
          "description": "e.g. 10Y"
        },
        {
          "name": "start",
          "required": true,
          "description": "Y-m-d"
        },
        {
          "name": "end",
          "required": true,
          "description": "Y-m-d, >= start"
        }
      ]
    }
  ]
}