About
Frankfurter MCP connects AI agents to the Frankfurter API for retrieving foreign exchange rate data published by institutional sources including the European Central Bank. Key features of Frankfurter MCP: - Access to the latest currency exchange rates between major world currencies - Historical exchange rate data retrieval for specific dates - Time series data for tracking currency trends over time - Data sourced from authoritative financial institutions including the European Central Bank
Tools 6
get_supported_currenciesReturns a list of three-letter currency codes for the supported currencies.
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.
convert_currency_latestConverts an amount from one currency to another using the latest exchange rates.
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.
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.
greetA simple greeting tool to demonstrate middleware functionality.
README
[](https://www.python.org/downloads/release/python-3120/) [](https://github.com/anirbanbasu/frankfurtermcp/actions/workflows/uv-pytest-coverage.yml) [](https://pypi.org/project/frankfurtermcp/#history) [](https://pypi.org/project/frankfurtermcp/) [](https://mseep.ai/app/c6527bdb-9b60-430d-9ed6-cb3c8b9a2b54) [](https://smithery.ai/server/@anirbanbasu/frankfurtermcp)
Frankfurter MCP
Frankfurter is a useful API for latest currency exchange rates, historical data, or time series published by sources such as the European Central Bank. Should you have to access the Frankfurter API as tools for language model agents exposed over the Model Context Protocol (MCP), Frankfurter MCP is what you need.
Installation
_If your objective is to use the tools available on this MCP server, please refer to the usage > client sub-section below_.
The directory where you clone this repository will be referred to as the _working directory_ or _WD_ hereinafter.
Install just to manage project tasks.
Install uv. To install the project with its minimal dependencies in a virtual environment, run the just install in the _WD_. To install all non-essential dependencies (_which are required for developing and testing_), run just install-all instead.
Environment variables
Following is a list of environment variables that can be used to configure the application. A template of environment variables is provided in the file .env.template. _Note that the default values listed in the table below are not always the same as those in the .env.template file_.
The following environment variables can be specified, prefixed with FASTMCP_: HOST, PORT, DEBUG and LOG_LEVEL. See global configuration options for FastMCP. Note that on_duplicate_ prefixed options specified as environment variables _will be ignored_.
The underlying HTTP client also respects some environment variables, as documented in the HTTPX library. In addition, SSL_CERT_FILE and SSL_CERT_DIR can be configured to use self-signed certificates of hosted API endpoint or intermediate HTTP(S) proxy server(s).
Frankfurter MCP will cache calls to the Frankfurter API to improve performance. The cache happens with two different strategies. For API calls whose responses do not change for certain parameters, e.g., historical rate lookup, a least recently used (LRU) cache is used. For API calls whose responses do change, e.g., latest rate lookup, a time-to-live (TTL) cache is used with a default time-to-live set to 15 minutes. The cache parameters can be adjusted using the environment variables, see below.
| Variable | [Default value] and description |
|--------------|----------------|
| LOG_LEVEL | [INFO] The level for logging. Changing this level also affects the log output of other dependent libraries that may use the same environment variable. See valid values at Python logging documentation. |
| HTTPX_TIMEOUT | [5.0] The time for the underlying HTTP client to wait, in seconds, for a response from the Frankfurter API. The acceptable range of values is between 5.0 and 60.0. |
| HTTPX_VERIFY_SSL | [True] This variable can be set to False to turn off SSL certificate verification, if, for instance, you are using a proxy server with a self-signed certificate. However, setting this to False _is advised against_: instead, use the SSL_CERT_FILE and SSL_CERT_DIR variables to properly configure self-signed certificates. |
| FAST_MCP_HOST | [localhost] This variable specifies which host the MCP server must bind to unless the server transport (see below) is set to stdio. _Note that running the server to bind to any IP by specifying 0.0.0.0 poses a security threat. Such a setting should only be used in demo environments._|
| FAST_MCP_PORT | [8000] This variable specifies which port the MCP server must listen on unless the server transport (see below) is set to stdio. |
| CORS_MIDDLEWARE_ALLOW_ORIGINS | ["localhost", "127.0.0.1"] This variable specifies [Cross-Origin Resource Sharing (CORS)](https://developer.mozilla.org/en-US/docs/Web/HTTP/Guides/C
Related MCP Servers
AI Research Assistant
hamid-vakilzadeh
AI Research Assistant provides comprehensive access to millions of academic papers through the Semantic Scholar and arXiv databases. This MCP server enables AI coding assistants to perform intelligent literature searches, citation network analysis, and paper content extraction without requiring an API key. Key features include: - Advanced paper search with multi-filter support by year ranges, citation thresholds, field of study, and publication type - Title matching with confidence scoring for finding specific papers - Batch operations supporting up to 500 papers per request - Citation analysis and network exploration for understanding research relationships - Full-text PDF extraction from arXiv and Wiley open-access content (Wiley TDM token required for institutional access) - Rate limits of 100 requests per 5 minutes with options to request higher limits through Semantic Scholar
Linkup
LinkupPlatform
Linkup is a real-time web search and content extraction service that enables AI assistants to search the web and retrieve information from trusted sources. It provides source-backed answers with citations, making it ideal for fact-checking, news gathering, and research tasks. Key features of Linkup: - Real-time web search using natural language queries to find current information, news, and data - Page fetching to extract and read content from any webpage URL - Search depth modes: Standard for direct-answer queries and Deep for complex research across multiple sources - Source-backed results with citations and context from relevant, trustworthy websites - JavaScript rendering support for accessing dynamic content on JavaScript-heavy pages
Math-MCP
EthanHenrickson
Math-MCP is a computation server that enables Large Language Models (LLMs) to perform accurate numerical calculations through the Model Context Protocol. It provides precise mathematical operations via a simple API to overcome LLM limitations in arithmetic and statistical reasoning. Key features of Math-MCP: - Basic arithmetic operations: addition, subtraction, multiplication, division, modulo, and bulk summation - Statistical analysis functions: mean, median, mode, minimum, and maximum calculations - Rounding utilities: floor, ceiling, and nearest integer rounding - Trigonometric functions: sine, cosine, tangent, and their inverses with degrees and radians conversion support