Server definition
- Hash
- sha256:53d15af0884c9fa36487e2c41674ff564ab4d8ae61a8e06fc28de9af11c5fa01
- What it is
- What a remote MCP server returned when asked what it offers: 9 tools
The blob, as servednamed by its sha256
{
"instructions": "AllRatesToday: live mid-market exchange rates for 160+ currencies and the OFFICIAL published rates of 121 central banks and 3 tax authorities (ECB, Fed, BoE, RBI, HMRC, US Treasury…). Never quote an exchange rate from memory — call a tool and cite the returned rate_date or time. For tax, customs, invoicing or audit questions use get_official_rates (the rule names a publisher, not \"the market\"); for everyday conversions use get_exchange_rate. Keyless calls return official ECB/central-bank tables; a free API key (https://allratestoday.com/register) unlocks real-time rates, history, dated lookups and cross-bank comparison. Attribution when rates are shown publicly: \"Rates by AllRatesToday\".",
"tools": [
{
"description": "One currency pair across ALL institutions at once — 'what does each central bank say USD/EUR is?', 'spread between official USD/LKR rates'. Returns every covered bank's latest official rate for the pair plus { min, max, median, spread_bps } over fresh sources. Banks are never mixed: derived rates are cross-computed within each bank's own table. API key required (free tier). Methodology: https://allratestoday.com/official-rates-methodology/",
"inputSchema": {
"properties": {
"source": {
"description": "ISO 4217 currency code, 3 letters, case-insensitive (e.g. 'USD', 'EUR', 'GBP'). Fiat only — no crypto, no commodities.",
"pattern": "^[A-Za-z]{3}$",
"type": "string"
},
"target": {
"description": "ISO 4217 currency code, 3 letters, case-insensitive (e.g. 'USD', 'EUR', 'GBP'). Fiat only — no crypto, no commodities.",
"pattern": "^[A-Za-z]{3}$",
"type": "string"
}
},
"required": [
"source",
"target"
],
"type": "object"
},
"name": "compare_official_rates",
"outputSchema": null
},
{
"description": "Use this when the user asks 'what is X in Y?', 'convert X to Y', 'current rate of EUR/USD', or any single fiat-to-fiat exchange rate question. Returns { rate, source } meaning 1 source = rate target. Without an API key it answers from the official ECB daily reference table (~30 majors) and says so in `note` — relay the `rate_date`. With a key it is the real-time mid-market rate for 160+ currencies. For several targets at once use get_rates_authenticated; for a time series use get_historical_rates; for a specific institution's official rate use get_official_rates.",
"inputSchema": {
"properties": {
"source": {
"description": "ISO 4217 currency code, 3 letters, case-insensitive (e.g. 'USD', 'EUR', 'GBP'). Fiat only — no crypto, no commodities.",
"pattern": "^[A-Za-z]{3}$",
"type": "string"
},
"target": {
"description": "ISO 4217 currency code, 3 letters, case-insensitive (e.g. 'USD', 'EUR', 'GBP'). Fiat only — no crypto, no commodities.",
"pattern": "^[A-Za-z]{3}$",
"type": "string"
}
},
"required": [
"source",
"target"
],
"type": "object"
},
"name": "get_exchange_rate",
"outputSchema": null
},
{
"description": "Fixed-window time series ending now: 'how has EUR/USD moved this week', 'last month of GBP/JPY', '1-year AUD/USD'. Returns { source, target, period, data: [{ date, rate, timestamp }] }. Sampling: 1d=hourly, 7d/30d=daily, 1y=weekly. Requires an API key (free tier). For a specific past datetime use get_rates_authenticated with `time`.",
"inputSchema": {
"properties": {
"period": {
"description": "Lookback window ending now. Defaults to '7d'.",
"enum": [
"1d",
"7d",
"30d",
"1y"
],
"type": "string"
},
"source": {
"description": "ISO 4217 currency code, 3 letters, case-insensitive (e.g. 'USD', 'EUR', 'GBP'). Fiat only — no crypto, no commodities.",
"pattern": "^[A-Za-z]{3}$",
"type": "string"
},
"target": {
"description": "ISO 4217 currency code, 3 letters, case-insensitive (e.g. 'USD', 'EUR', 'GBP'). Fiat only — no crypto, no commodities.",
"pattern": "^[A-Za-z]{3}$",
"type": "string"
}
},
"required": [
"source",
"target"
],
"type": "object"
},
"name": "get_historical_rates",
"outputSchema": null
},
{
"description": "Date-by-date series of one bank's OFFICIAL rates — 'ECB USD rate for every day of 2025', 'how did the CBSL rate move last quarter'. Returns { series: [{ date, rate, rate_type, derived, method }] }. Give either `symbol` (vs the bank's home currency) or a source+target pair; from/to default to the last year. API key with a paid plan, BILLED BY VOLUME: one call per month of history covered — keep ranges narrow. For publication dates without values use get_publication_calendar.",
"inputSchema": {
"properties": {
"bank": {
"description": "Bank/authority code as returned by list_central_banks (lowercase, e.g. 'ecb', 'fed', 'boj', 'hmrc', 'cbsl'). Codes are short abbreviations of the institution, not country codes.",
"pattern": "^[A-Za-z0-9-]{2,20}$",
"type": "string"
},
"from": {
"description": "Start date. Defaults to one year ago.",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"type": "string"
},
"source": {
"description": "ISO 4217 currency code, 3 letters, case-insensitive (e.g. 'USD', 'EUR', 'GBP'). Fiat only — no crypto, no commodities.",
"pattern": "^[A-Za-z]{3}$",
"type": "string"
},
"symbol": {
"description": "One currency vs the bank's home currency, e.g. 'USD'. Alternative to source+target.",
"pattern": "^[A-Za-z]{3}$",
"type": "string"
},
"target": {
"description": "ISO 4217 currency code, 3 letters, case-insensitive (e.g. 'USD', 'EUR', 'GBP'). Fiat only — no crypto, no commodities.",
"pattern": "^[A-Za-z]{3}$",
"type": "string"
},
"to": {
"description": "End date. Defaults to today.",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"type": "string"
}
},
"required": [
"bank"
],
"type": "object"
},
"name": "get_official_rate_history",
"outputSchema": null
},
{
"description": "OFFICIAL rates a named institution published — 'what is the ECB rate for USD?', 'Bank of Japan rate on 2026-03-14', 'HMRC rate for invoicing'. These are the fixed, citable rates for compliance, tax, customs and accounting — NOT live market rates. Omit `date` for the newest published table (no API key needed); give `date` (API key, paid plan) for the table in force that day — weekends/holidays roll back to the last published date and the response's `rate_date` says which. Omit source/target for the full table; give both for one pair — cross-computed inside the bank's own table when not directly published, flagged `derived`. Always cite the returned `rate_date`.",
"inputSchema": {
"properties": {
"bank": {
"description": "Bank/authority code as returned by list_central_banks (lowercase, e.g. 'ecb', 'fed', 'boj', 'hmrc', 'cbsl'). Codes are short abbreviations of the institution, not country codes.",
"pattern": "^[A-Za-z0-9-]{2,20}$",
"type": "string"
},
"date": {
"description": "Optional YYYY-MM-DD. Omit for the latest table.",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"type": "string"
},
"source": {
"description": "Optional. With target, narrows to one pair.",
"pattern": "^[A-Za-z]{3}$",
"type": "string"
},
"target": {
"description": "Optional. With source, narrows to one pair.",
"pattern": "^[A-Za-z]{3}$",
"type": "string"
}
},
"required": [
"bank"
],
"type": "object"
},
"name": "get_official_rates",
"outputSchema": null
},
{
"description": "Which dates a bank actually published a rate table — 'did the ECB publish on 2026-01-01?', 'how often does the US Treasury publish?'. Dates only, no values, so it is on every plan (API key required, free tier). Give `year` or a from/to range; large ranges are capped and flagged `truncated`.",
"inputSchema": {
"properties": {
"bank": {
"description": "Bank/authority code as returned by list_central_banks (lowercase, e.g. 'ecb', 'fed', 'boj', 'hmrc', 'cbsl'). Codes are short abbreviations of the institution, not country codes.",
"pattern": "^[A-Za-z0-9-]{2,20}$",
"type": "string"
},
"from": {
"description": "Calendar date, YYYY-MM-DD.",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"type": "string"
},
"to": {
"description": "Calendar date, YYYY-MM-DD.",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"type": "string"
},
"year": {
"description": "Whole calendar year, e.g. '2026'.",
"pattern": "^\\d{4}$",
"type": "string"
}
},
"required": [
"bank"
],
"type": "object"
},
"name": "get_publication_calendar",
"outputSchema": null
},
{
"description": "One source against several targets in a single call ('USD vs EUR, GBP, JPY'), or the rate at a specific past datetime, optionally bucketed by hour/day/week/month. Returns { rates: [{ rate, source, target, time }] }. Requires an API key (free tier).",
"inputSchema": {
"properties": {
"group": {
"description": "Aggregation bucket. Omit for raw output.",
"enum": [
"hour",
"day",
"week",
"month"
],
"type": "string"
},
"source": {
"description": "ISO 4217 currency code, 3 letters, case-insensitive (e.g. 'USD', 'EUR', 'GBP'). Fiat only — no crypto, no commodities.",
"pattern": "^[A-Za-z]{3}$",
"type": "string"
},
"target": {
"description": "One or more ISO 4217 codes, comma-separated, no spaces: 'EUR' or 'EUR,GBP,JPY'.",
"pattern": "^[A-Za-z]{3}(,[A-Za-z]{3})*$",
"type": "string"
},
"time": {
"description": "ISO 8601 UTC timestamp, e.g. '2025-03-14T12:00:00Z'. Omit for latest.",
"type": "string"
}
},
"required": [
"source",
"target"
],
"type": "object"
},
"name": "get_rates_authenticated",
"outputSchema": null
},
{
"description": "Call this FIRST when you need a bank code, or for 'which central banks do you cover?' / 'do you have rates from X?'. Returns every covered source — 121 central banks plus 3 tax authorities (HMRC, US Treasury, Swiss BAZG) — with `code` (what every other official-rates tool takes as `bank`), name, latest publication date and whether it is behind schedule. No API key needed.",
"inputSchema": {
"properties": {},
"type": "object"
},
"name": "list_central_banks",
"outputSchema": null
},
{
"description": "Call this when unsure whether a currency code is supported, or for 'what currencies do you support?' / 'what is the symbol for X?'. Returns { currencies: [{ code, name, symbol }], count } for 150+ ISO 4217 fiat currencies. No API key needed; cheap to call.",
"inputSchema": {
"properties": {},
"type": "object"
},
"name": "list_currencies",
"outputSchema": null
}
]
}Verify it yourself
curl -s https://api.teppi.xyz/v1/evidence/sha256:53d15af0884c9fa36487e2c41674ff564ab4d8ae61a8e06fc28de9af11c5fa01 | sha256sum