convert_currency_latest
Converts an amount from one currency to another using the latest exchange rates.
Convert an amount between currencies at the latest rate or at the rate that applied on a given date, and pull a rate series across a date range.
LABSCO SUMMARY
Both historical tools substitute the rate from the nearest earlier date, so a weekend or a holiday still answers; that is convenient for restating figures and worth remembering when a number has to tie out to the exact day. The conversion tools take the amount itself, so the arithmetic never comes back to the model. One tool does no currency work at all: greet exists to demonstrate the server's middleware.
A currency-rate client over the Frankfurter API, which publishes exchange rates sourced from the European Central Bank. Six tools cover conversion and historical lookups, with results cached locally so repeated questions do not re-hit the API.
No account and no key — the Frankfurter API is open. Python 3.12 or newer, installed from PyPI or from a clone using uv. Stdio is the default transport; MCP_SERVER_TRANSPORT switches it to sse or streamable-http, in which case the bind host, port and CORS origins matter — the defaults are localhost and 127.0.0.1 for a reason. The HTTP client's timeout defaults to 5 seconds and accepts anything between 5 and 60. The host needs outbound network access.
One command — pip install frankfurtermcp
USE CASES
Check the currency is covered, then convert at the latest rate rather than doing the arithmetic in conversation.
Convert at that date's rate; a date with no published rate falls back to the closest earlier one.
Pull the series over a start and end date, filtered to the currencies you care about.
One call returns the base currency against every symbol you name.
Counted once with only startup setup. Other versions, modes or optional credentials may expose a different list.
convert_currency_latestConverts an amount from one currency to another using the latest exchange rates.
convert_currency_specific_dateConvert an amount from one currency to another using the exchange rates for a specific date.
If there is no exchange rate available for the specific date, the rate for the closest available date before the specified date will be used.
get_historical_exchange_ratesReturns historical exchange rates for a specific date or date range.
If the exchange rates for a specified date is not available, the rates available for the closest date before the specified date will be provided. Either a specific date, a start date, or a date range must be provided. The symbols can be used to filter the results to specific currencies. If symbols are not provided, all supported currencies will be returned.
get_latest_exchange_ratesReturns the latest exchange rates for specific currencies.
The symbols can be used to filter the results to specific currencies. If symbols is not provided, all supported currencies will be returned.
get_supported_currenciesReturns a list of three-letter currency codes for the supported currencies.
greetA simple greeting tool to demonstrate middleware functionality.
BEFORE YOU INSTALL
6 tools when we connected. greet is a test tool, so 5 of the 6 handle currency.
uvx on PATH
CONTEXT COST
Rated by the size of the 6 tool definitions that ride along on every turn, not by how many there are
INSTALLATION
pip install frankfurtermcp{
"mcpServers": {
"frankfurtermcp": {
"command": "uvx",
"args": [
"frankfurtermcp"
]
}
}
}{
"servers": {
"frankfurtermcp": {
"command": "uvx",
"args": [
"frankfurtermcp"
]
}
}
}git clone https://github.com/anirbanbasu/frankfurtermcp.git
cd frankfurtermcp
npx @modelcontextprotocol/inspector uv run frankfurtermcp