Overview
I-Bond Rates pulls data from the US Treasury Fiscal Data API. The composite rate consists of a fixed rate (set at purchase, never changes) plus an inflation rate (adjusts every May and November based on CPI). Historical rate data is available back to 1998.
Live Test I-Bond Rate Grounding Data Source →
The tool
Once your client is connected to the VerveContext server, this appears in its tool list as I-BondRateGroundingData. It is read-only and open-world — it fetches and never mutates anything on your side — so most clients call it without asking you to confirm.
{
"name": "I-BondRateGroundingData",
"arguments": {}
}Connecting
One server URL covers every source in the catalog, including this one. Authorization is OAuth: the client opens a browser once, and there is no key to paste into a config file.
{
"mcpServers": {
"vervecontext": {
"url": "https://api.vervecontext.com/v1/mcp"
}
}
}https://api.vervecontext.com/v1/mcpPer-client setup — Claude, Cursor, VS Code, ChatGPT — is on the MCP setup page.
Arguments
These are the properties on the tool's inputSchema, so a well-behaved client validates them before the call is made. Premium arguments are accepted on every plan but only take effect on plans that include them.
| Argument | Type | Description |
|---|---|---|
periodOptionalPremium | string | Specific issue period to lookup (YYYY-MM format, e.g., 2024-11). Omit for current rates. |
What the model gets back
The result carries a structuredContent object matching the tool's declared outputSchema, so a client reads fields without parsing prose. status is "ok" and error is null on success; a null field means the value was not available for that input, not that the call failed.
{
"status": "ok",
"error": null,
"data": {
"period": "2026-10",
"compositeRate": 4.26,
"fixedRate": 0.9,
"inflationRate": 1.67,
"purchaseLimit": 10000,
"minimumHoldingPeriod": "1 year",
"earlyRedemptionPenalty": "Last 3 months interest if redeemed before 5 years",
"taxAdvantages": "Federal tax deferred until redemption; exempt from state/local tax; may be tax-free for education",
"nextRateChange": "2026-11-01",
"lastUpdated": "2026-09-01T15:00:29.761Z"
}
}
Response fields
Paths are relative to data. Premium fields are absent rather than zeroed on plans that do not include them, so check for presence instead of comparing to 0.
| Field | Type | Example | Description |
|---|---|---|---|
period | string | 2026-10 | Issue period for the rate (YYYY-MM format) |
compositeRate | number | 4.26 | Total annual interest rate combining fixed and inflation components |
fixedRate | number | 0.9 | Fixed rate component (set at purchase, never changes) |
inflationRate | number | 1.67 | Inflation rate component (adjusts every 6 months) |
purchaseLimit | number | 10000 | Annual electronic purchase limit per person in dollars |
minimumHoldingPeriod | string | 1 year | Minimum time bond must be held before redemption |
earlyRedemptionPenalty | string | Last 3 months interest if redeemed before 5 years | Penalty for redeeming before 5 years |
taxAdvantages | string | Federal tax deferred until redemption; exempt from state/local tax; may be tax-free for education | Tax benefits of I-Bonds |
nextRateChange | string | 2026-11-01 | Date of next scheduled I-Bond rate announcement |
lastUpdated | string | 2026-09-01T15:00:29.761Z | ISO 8601 timestamp of last data refresh |
Why ground on it
A model can produce something that looks like this answer from its training data, and be confidently out of date or simply wrong. This source returns the current value in a shape you can check, which is the difference between an answer you can cite and one you have to hedge.
Point an evaluation at compositeRate: it is the field most worth pinning a claim to, and it is either present and current or absent — never plausibly invented.
Failure modes
Errors come back as tool errors carrying a sentence the model can act on, not a bare status code. Error handling covers the full list.
| Status | What it means |
|---|---|
400 / 422 | The arguments did not validate. The message names the offending one. |
401 | The OAuth session is invalid or expired — reconnect the server. |
403 | Blocked by a key restriction or an IP allow-list. Never a bad identity. |
404 | This source is not part of VerveContext. Check the catalog. |
429 | Out of credits, or a brief rate limit. The message tells them apart. |
A call costs 2 credits each time the tool actually runs; a model that reasons about the tool without calling it costs nothing.
Use cases
- Investment Research
- Track I-Bond rates to optimize purchase timing around rate changes
- Financial Planning
- Factor I-Bond rates into inflation-protected savings strategies
- Rate Tracking
- Monitor I-Bond composite, fixed, and inflation rate components over time
- Historical Analysis
- Analyze historical I-Bond rates back to 1998 for trend research
Other ways to use I-Bond Rate Grounding Data
Set up I-Bond Rate Grounding Data on VerveContext, or reach the same source a different way. Your VerveContext account and credits work on all of them — one key, one balance.
Related
More in Finance: