Frankfurter MCP
Convert currencies and look up current or historical exchange rates straight from your AI assistant, through the official Model Context Protocol server.
Add https://mcp.frankfurter.dev/ as a remote HTTP server. No API key or registration required.
Jump to: ChatGPT | Claude | Cursor | Copilot | Codex | Pi | Devin | Antigravity
ChatGPT
Configure within the ChatGPT web or desktop app settings:
- Open Settings → Apps (or Connectors).
- In the upper right, click Advanced settings → enable Developer mode (this unlocks custom app creation).
- Return to the Apps submenu, click Create app (or Create connector).
- Enter the endpoint URL:
https://mcp.frankfurter.dev/. - Under authentication, choose None.
Claude
Anthropic's Claude supports remote MCP servers depending on the tool you use:
Claude Cowork (Web, Mobile, Workspaces)
Configure custom connectors centrally in your Claude account:
- Navigate to Customize → Connectors (or Settings → Connectors).
- Click the "+" button and select Add custom connector.
- Enter the server endpoint URL:
https://mcp.frankfurter.dev/. - Click Add to finish. Once connected, toggle the connector on in your chat interface.
Claude Desktop
Bridge the local desktop app to the remote HTTP server using the mcp-remote utility. Add this to your claude_desktop_config.json:
{
"mcpServers": {
"frankfurter": {
"command": "npx",
"args": ["-y", "mcp-remote", "https://mcp.frankfurter.dev/"]
}
}
}Claude Code (CLI)
Add the remote HTTP server directly in your terminal:
claude mcp add --transport sse frankfurter https://mcp.frankfurter.dev/ Cursor
Configure Cursor by editing ~/.cursor/mcp.json or project-level .cursor/mcp.json:
{
"mcpServers": {
"frankfurter": {
"url": "https://mcp.frankfurter.dev/"
}
}
}Alternatively, open Cursor settings (⌘ + Shift + J), navigate to Features → MCP, click + Add New MCP Server, name it frankfurter, select type SSE, and enter https://mcp.frankfurter.dev/.
GitHub Copilot
Add the server using the GitHub Copilot CLI:
copilot mcp add frankfurter https://mcp.frankfurter.dev/Or add it to your project's .github/mcp.json configuration file:
{
"mcpServers": {
"frankfurter": {
"type": "http",
"url": "https://mcp.frankfurter.dev/"
}
}
} Codex
Add the server using the Codex CLI:
codex mcp add frankfurter --url https://mcp.frankfurter.dev/Or add it manually to your ~/.codex/config.toml configuration file:
[features]
experimental_use_rmcp_client = true
[mcp_servers.frankfurter]
url = "https://mcp.frankfurter.dev/" Pi
Add the server using the Pi CLI:
pi mcp add frankfurter https://mcp.frankfurter.dev/Or add it manually to ~/.pi/agent.json (or project-level .pi/agent.json):
{
"mcpServers": {
"frankfurter": {
"url": "https://mcp.frankfurter.dev/"
}
}
} Devin
Configure custom MCP connectors in your Devin workspace settings:
- Navigate to Settings → Connectors (or workspace integrations).
- Click Add MCP Server.
- Set the endpoint URL to
https://mcp.frankfurter.dev/. - Select authentication mode None.
Antigravity
Configure within the Antigravity CLI overlay by running:
/mcpOr configure manually in ~/.gemini/antigravity-cli/mcp_config.json:
{
"mcpServers": {
"frankfurter": {
"serverUrl": "https://mcp.frankfurter.dev/"
}
}
} Other Agents (OpenCode, Droid, Kimi)
For agents that support standard MCP HTTP/SSE configurations (such as OpenCode, Factory Droid, or Kimi), add Frankfurter to your agent's MCP config file (e.g. ~/.config/opencode/config.json or .factory/mcp.json):
{
"mcpServers": {
"frankfurter": {
"url": "https://mcp.frankfurter.dev/"
}
}
}Tools
Once connected, the following tools become available to your AI assistant:
convert- Convert an amount between two currencies. Returns the converted amount and the rate.
Parameters:amount(number, required): The total value to convert.from(string, required): Three-letter base ISO currency code (e.g.USD).to(string, required): Three-letter target ISO currency code (e.g.EUR).date(string, optional): A specific dateYYYY-MM-DDfor historical conversion.
get_rates- Look up reference exchange rates.
Parameters:date(string, optional): Rate dateYYYY-MM-DD(defaults to latest).base(string, optional): Three-letter base currency (default:EUR).quotes(string, optional): Filter results by comma-separated currency codes.
list_currencies- List all supported ISO 4217 currency codes and names.
If you need a time series, a historical range, provider-specific rates, or bulk data, use the REST API.