FrankfurterMCP Server

An MCP server that provides access to the Frankfurter API for retrieving current exchange rates, historical data, and currency conversion, using data from sources such as the European Central Bank.

Get this MCP server

An MCP server that provides access to the Frankfurter API for retrieving current exchange rates, historical data, and currency conversion, using data from sources such as the European Central Bank.

Installation

From source code with uv

git clone https://github.com/anirbanbasu/frankfurtermcp
cd frankfurtermcp
just install
uv run frankfurtermcp

PyPI with pip

pip install frankfurtermcp
python -m frankfurtermcp.server

Docker

docker build -t frankfurtermcp -f local.dockerfile .
docker run -it --rm -p 8000:8000/tcp --env-file .env.template --expose 8000 frankfurtermcp

Configuration

Claude Desktop (uv)

{
    "command": "uv",
    "args": [
        "run",
        "frankfurtermcp"
    ]
}

Claude Desktop (Python)

{
    "command": "python3.12",
    "args": [
        "-m",
        "frankfurtermcp.server"
    ]
}

Available Tools

Tool Description
get_supported_currencies Get a list of currencies supported by the Frankfurter API
get_latest_exchange_rates Get current exchange rates in specified currencies for a given base currency
convert_currency_latest Convert an amount from one currency to another using current exchange rates
get_historical_exchange_rates Get historical exchange rates for a specific date or date range in specified currencies for a given...
convert_currency_specific_date Convert an amount from one currency to another using exchange rates for a specific date

Features

  • Current exchange rates from the European Central Bank and other sources
  • Historical exchange rate data and time series
  • Currency conversion calculations
  • LRU and TTL caching for improved performance
  • Support for self-hosted Frankfurter API instances
  • Multiple transport options (stdio, SSE, streamable HTTP)
  • Available cloud hosting options

Environment Variables

Optional

  • LOG_LEVEL - Logging level (default: INFO)
  • HTTPX_TIMEOUT - HTTP client timeout in seconds for the Frankfurter API (default: 5.0)
  • HTTPX_VERIFY_SSL - Enable/disable SSL certificate verification (default: True)
  • FAST_MCP_HOST - Host to bind the MCP server to (default: localhost)
  • FAST_MCP_PORT - Port for the MCP server to listen on (default: 8000)
  • MCP_SERVER_TRANSPORT - Server transport type: stdio, sse, or streamable-http (default: stdio)
  • MCP_SERVER_INCLUDE_METADATA_IN_RESPONSE - Include additional metadata in MCP responses (default: True)
  • FRANKFURTER_API_URL - API endpoint URL for the Frankfurter service (default: https://api.frankfurter.dev/v1)

Usage Examples

What are the current exchange rates for EUR to USD?
Convert 100 USD to EUR using today's rates
What was the exchange rate between GBP and JPY on January 1, 2023?
Show me the historical exchange rates for EUR to multiple currencies over the past week
What currencies are supported by the Frankfurter API?

Notes

Cloud hosting options are available on FastMCP Cloud (https://frankfurtermcp.fastmcp.app/mcp), Glama.AI, and Smithery.AI. Supports self-hosted Frankfurter API instances and includes caching for improved performance.

Comments (0)

Sign In Sign in to leave a comment.