Currency Exchange MCP Server
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Currency Exchange MCP Serverconvert 100 USD to EUR"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Currency Exchange MCP Server
A Model Context Protocol (MCP) server that provides real-time currency exchange rates and conversions for 200+ currencies. Built with FastMCP 2.0, designed for remote deployment, and optimized for use with Claude Desktop and other MCP clients.
Available Tools
get_available_currencies- Get a list of all supported currencies with their full names.get_exchange_rate- Get the current exchange rate between two currencies.Required arguments:
from_currency(required): Source currency code (e.g., 'usd', 'eur')to_currency(required): Target currency code (e.g., 'gbp', 'jpy')date(optional): Date in YYYY-MM-DD format (defaults to latest)
convert_currency- Convert an amount from one currency to another.Required arguments:
amount(required): Amount to convertfrom_currency(required): Source currency codeto_currency(required): Target currency codedate(optional): Date in YYYY-MM-DD format
get_all_rates- Get all exchange rates for a base currency.Required arguments:
base_currency(required): Base currency codedate(optional): Date in YYYY-MM-DD format
compare_rates- Compare exchange rates between a base currency and multiple target currencies.Required arguments:
base_currency(required): Base currency codetarget_currencies(required): Comma-separated currency codesdate(optional): Date in YYYY-MM-DD format
Source
Deployment
This project is deployed to Google Cloud Run using GitLab CI/CD.
The deployment job uses source-based deployment:
gcloud run deploy ... --source .
The Cloud Run service name is:
currency-exchange-mcp-server
Default deployment region in the pipeline:
europe-west1
Related MCP server: Frankfurter MCP
DevOps Pipeline (GitLab CI/CD)
Pipeline definition files:
.gitlab-ci.ymlinfra/.gitlab-ci-terraform.yml
Stages
testterraformdeploy
What Happens in Each Stage
Test (
run_test)
Runs when Python source or dependency files change.
Uses
uvand executespytest.
Terraform (
terraform_validate,terraform_plan,terraform_apply)
Initializes Terraform in
infra/.Uses GitLab HTTP backend for remote Terraform state.
Validates, plans, and applies infrastructure.
Exports
GITLAB_DEPLOYER_SA_EMAILfrom Terraform output as a dotenv artifact.
Deploy (
deploy-to-cloud-run)
Depends on
terraform_applyoutput.Authenticates to GCP using a service account key from CI variables.
Deploys the current source to Cloud Run.
Terraform Infrastructure
Terraform files:
infra/main.tfinfra/variables.tfinfra/terraform.tfvars
Current Terraform provisions:
A GitLab deployer service account.
IAM roles required for Cloud Run deployment and build operations.
A proxy service account with Cloud Run invoker permissions.
Required Google APIs:
Cloud Build API
Cloud Run API
Artifact Registry API
Cloud Storage API
Local Terraform Commands
Run from infra/:
terraform init
terraform validate
terraform plan
terraform applyRequired GitLab CI/CD Variables
Set these variables in GitLab project settings:
GCP_PROJECT_ID: Target Google Cloud project ID.GCP_SERVICE_ACCOUNT_KEY: Base64-encoded JSON key used by the deploy job.TERRAFORM_SERVICE_ACCOUNT_KEY: Base64-encoded JSON key used by Terraform jobs.
Variables used internally by the Terraform pipeline include:
TF_STATE_ADRESS(as defined in pipeline file): GitLab Terraform state endpoint.TF_HTTP_USERNAME:gitlab-ci-token.TF_HTTP_PASSWORD:$CI_JOB_TOKEN.
End-to-End Flow
Commit changes on
main(or open a merge request for test stage evaluation).Tests run when application code or Python dependencies change.
Terraform jobs run when files in
infra/change.Terraform apply publishes the deployer service account email as pipeline artifact.
Cloud Run deployment runs when app-related files change and uses the Terraform output service account.
Notes
Workload Identity Federation resources are present in
infra/main.tfbut currently commented out.Current pipeline uses service account keys from GitLab CI variables.
This server cannot be deployed
Maintenance
Related MCP Connectors
Live & historical FX rates and currency conversion for AI agents. No API keys.
Live & historical FX rates and currency conversion for AI agents. No API keys.
Free, keyless real-time currency conversion and exchange rates for any currency pair.
Convert currencies, get FX rates, and query historical ECB exchange rate data.
Related MCP Servers
- FlicenseBqualityDmaintenanceEnables currency conversion between 161+ currencies using real-time exchange rates from ExchangeRate-API. Provides a simple tool to convert amounts between different currencies with error handling for invalid inputs and API issues.1-
- AlicenseAqualityDmaintenanceProvides access to currency exchange rates and conversion tools using the Frankfurter API, including latest rates, historical data, and time series from sources like the European Central Bank.5MIT
- FlicenseNot gradedqualityDmaintenanceProvides real-time and historical foreign exchange rates for 31+ currencies, enabling currency conversion, historical rate lookups, and time series analysis using data from the Frankfurter API.-
- FlicenseCqualityDmaintenanceEnables real-time currency exchange rate queries between any two currencies using ExchangeRate API, with automatic triggering by AI models through the MCP protocol.11-