Docs/Skills/Interest Rate Skill

Interest Rate Skill

Get Central Bank Interest Rates

OperationalCredits 2 per callp50 204msFinance

Overview

A collector reads daily policy rates every morning, from the BIS central bank policy rate dataset for 20 banks and from FRED for the Federal Reserve (upper bound of the target range) and the ECB (deposit facility rate). It stores the newest observation as the current rate and keeps month-end values from 2000 onward for history (from 2002-02 for Turkey). `rate` is the policy rate in percent and `date` is the date of the observation it came from. Current lookups also carry `lastUpdated`, the time of the last refresh.

Change tracking describes the most recent decision: `previousRate` is the rate before it, `lastChanged` the first date at the current rate, `change` the move in percentage points and `changeDirection` up or down. They are read from the daily series, so they stay on that decision while the rate holds; a bank whose rate has not moved since 2000 shows a change of 0 and unchanged.

`date=YYYY-MM` (paid) switches to a historical lookup: the response carries `period` and `isHistorical: true` instead of the change-tracking fields, and a month with no stored value returns a 404. Any other date format is rejected with a 400.

With `changes=true`, `change12m` is the difference in percentage points from the month-end rate twelve months earlier, and `high12m`, `low12m` and `average12m` cover the twelve months ending at the returned one. `history=true` returns those months oldest first as `period` and `rate`, where the latest row is the current reading rather than a month-end value. The 12-month figures are paid fields; `history` is only built for paid plans.

Live Test Interest Rate Skill Skill →

The tool

Once your client is connected to the VerveKit server, this appears in its tool list as InterestRateSkill. 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.

Tool call
{
  "name": "InterestRateSkill",
  "arguments": {
    "country": "US"
  }
}

You do not name the tool yourself; the model picks it. Asking about US in the terms this skill covers is enough for it to reach for InterestRateSkill on its own — naming it explicitly also works, and is the way to force the call.

Connecting

One server URL covers every skill 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": {
    "vervekit": {
      "url": "https://api.vervekit.com/v1/mcp"
    }
  }
}

Per-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.

ArgumentTypeDescription
countryRequiredstring2-letter country code
AUBRCACHCNCZDKEU+14
length 2–2
dateOptionalPremiumstringOptional month in YYYY-MM format for a historical lookup. Omit for the current rate.
historyOptionalPremiumbooleanInclude the 12 monthly rates ending at the returned month
changesOptionalbooleanInclude the 12-month change and the 12-month high, low and average

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.

Result
{
  "status": "ok",
  "error": null,
  "data": {
    "country": "US",
    "countryName": "United States",
    "centralBank": "Federal Reserve",
    "rate": 4,
    "date": "2026-10-27",
    "lastUpdated": "2026-10-27T10:00:00.000Z",
    "lastChanged": "2026-09-17",
    "change": 0.25,
    "changeDirection": "up",
    "previousRate": 3.75,
    "change12m": 0,
    "high12m": 4,
    "low12m": 3.75,
    "average12m": 3.8125,
    "history": [
      {
        "period": "2025-11",
        "rate": 4
      },
      {
        "period": "2025-12",
        "rate": 3.75
      },
      {
        "period": "2026-01",
        "rate": 3.75
      },
      {
        "period": "2026-02",
        "rate": 3.75
      },
      {
        "period": "2026-03",
        "rate": 3.75
      },
      {
        "period": "2026-04",
        "rate": 3.75
      },
      {
        "period": "2026-05",
        "rate": 3.75
      },
      {
        "period": "2026-06",
        "rate": 3.75
      },
      {
        "period": "2026-07",
        "rate": 3.75
      },
      {
        "period": "2026-08",
        "rate": 3.75
      },
      {
        "period": "2026-09",
        "rate": 4
      },
      {
        "period": "2026-10",
        "rate": 4
      }
    ]
  }
}

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.

FieldTypeExampleDescription
countrystringUSTwo-letter ISO country code for the nation
countryNamestringUnited StatesFull name of the country in English
centralBankstringFederal ReserveName of the central bank managing monetary policy
ratenumber4Central bank policy interest rate percentage for the requested period (current if no date)
datestring2026-10-27Date when the rate data was recorded
lastUpdatedstring2026-10-27T10:00:00.000ZISO timestamp of the last data refresh update (current lookups only)
lastChangedPremiumstring2026-09-17Date when the rate was last changed (current lookups only)
changePremiumnumber0.25Size of the last rate change in percentage points (current lookups only)
changeDirectionstringupDirection of last change: up, down, or unchanged (current lookups only)
previousRatePremiumnumber3.75Rate before the last change (current lookups only)
change12mPremiumnumber0Change in percentage points from the rate 12 months earlier (with changes=true)
high12mPremiumnumber4Highest month-end rate in the 12 months ending at the returned month (with changes=true)
low12mPremiumnumber3.75Lowest month-end rate in the 12 months ending at the returned month (with changes=true)
average12mPremiumnumber3.8125Average month-end rate over the 12 months ending at the returned month (with changes=true)
historyPremiumarray[12]The 12 monthly rates ending at the returned month, oldest first (when history=true)
history.0.periodPremiumstring2025-11Month of the rate (YYYY-MM)
history.0.ratePremiumnumber4Policy rate at the end of that month (or the latest, for the current month)

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.

StatusWhat it means
400 / 422The arguments did not validate. The message names the offending one.
401The OAuth session is invalid or expired — reconnect the server.
403Blocked by a key restriction or an IP allow-list. Never a bad identity.
404This skill is not part of VerveKit. Check the catalog.
429Out 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

Forex Trading Strategies
Algorithmic currency traders evaluate interest rate differentials between countries to identify carry trade opportunities and adjust open positions before policy announcements.
Fixed Income Portfolios
When evaluating sovereign debt yields, bond portfolio managers compare current policy rates against benchmark curves to model duration risks across international markets.
Macroeconomic Dashboards
Financial media portals publish current central bank benchmark rates and recent change directions next to national inflation reports for market researchers.
Loan Underwriting Calculations
Calculate cross-border financing costs by feeding sovereign policy rates directly into commercial lending valuation models across 22 tracked economies.

Other ways to use Interest Rate Skill

Set up Interest Rate Skill on VerveKit, or reach the same source a different way. Your VerveKit account and credits work on all of them — one key, one balance.

Call it as a REST APIOne HTTPS endpoint and an x-api-key header, with SDKs for Node, Python and .NET.APIVerve →Reference →
Google Sheets or ExcelA =VERVE() formula fills a column — no script, no export, recalculates in place.VerveSheets →Reference →
Ground an agent on itA cited, machine-checkable fact your model can't produce on its own.VerveContext →Reference →

More in Finance:

Was this page helpful?