Skip to main content
Glama
Exchange-RateAPI

@exchangerateapi/mcp-server

Official
README.md
# @exchangerateapi/mcp-server

[![Powered by Exchange-RateAPI](https://img.shields.io/badge/Powered%20by-Exchange--RateAPI-blueviolet.svg)](https://exchange-rateapi.com)

[![npm](https://img.shields.io/npm/v/@exchangerateapi/mcp-server.svg)](https://www.npmjs.com/package/@exchangerateapi/mcp-server)
[![license](https://img.shields.io/npm/l/@exchangerateapi/mcp-server.svg)](https://github.com/Exchange-RateAPI/mcp-server/blob/main/LICENSE)

MCP server that gives AI coding tools (Claude Code, Cursor, Claude Desktop, Windsurf) access to real-time and historical currency exchange rates from [Exchange Rate API](https://exchange-rateapi.com).

160+ currencies. Mid-market rates updated every 60 seconds. Sourced from institutional interbank market data.

## Quick Setup

### 1. Get a Free API Key

Sign up at [exchange-rateapi.com/register](https://exchange-rateapi.com/register/) — free tier, no credit card.

### 2. Add to Your MCP Client

**Claude Code** (`~/.claude/settings.json`):

```json
{
  "mcpServers": {
    "exchange-rateapi": {
      "command": "npx",
      "args": ["-y", "@exchangerateapi/mcp-server"],
      "env": { "EXCHANGE_RATE_API_KEY": "era_live_..." }
    }
  }
}
```

**Cursor** (`.cursor/mcp.json`):

```json
{
  "mcpServers": {
    "exchange-rateapi": {
      "command": "npx",
      "args": ["-y", "@exchangerateapi/mcp-server"],
      "env": { "EXCHANGE_RATE_API_KEY": "era_live_..." }
    }
  }
}
```

**Claude Desktop** (`claude_desktop_config.json`):

```json
{
  "mcpServers": {
    "exchange-rateapi": {
      "command": "npx",
      "args": ["-y", "@exchangerateapi/mcp-server"],
      "env": { "EXCHANGE_RATE_API_KEY": "era_live_..." }
    }
  }
}
```

**Windsurf** (`~/.windsurf/mcp.json`):

```json
{
  "mcpServers": {
    "exchange-rateapi": {
      "command": "npx",
      "args": ["-y", "@exchangerateapi/mcp-server"],
      "env": { "EXCHANGE_RATE_API_KEY": "era_live_..." }
    }
  }
}
```

## Tools

| Tool | Description |
|------|-------------|
| `get_exchange_rate` | Get the current mid-market rate between two currencies |
| `get_historical_rates` | Get historical data for a pair over 1d, 7d, 30d, or 1y |
| `get_rates` | Multi-target rates with date ranges and grouping (day/week/month) |
| `list_currencies` | List all 160+ supported currencies |

## Example Prompts

Once configured, ask your AI assistant:

- "What's the current USD to EUR exchange rate?"
- "Show me GBP/JPY rates for the last 30 days"
- "Convert 5000 USD to EUR, GBP, and JPY"
- "List all supported currencies"
- "What's the monthly average EUR/USD rate for 2026?"

## Environment Variables

| Variable | Required | Description |
|----------|----------|-------------|
| `EXCHANGE_RATE_API_KEY` | Yes | Your API key from [exchange-rateapi.com](https://exchange-rateapi.com/register/) |
| `EXCHANGE_RATE_BASE_URL` | No | Override API base URL (default: `https://exchange-rateapi.com/api`) |

## Links

- [API Documentation](https://exchange-rateapi.com/docs/)
- [Get Free API Key](https://exchange-rateapi.com/register/)
- [Dashboard](https://exchange-rateapi.com/dashboard/)
- [GitHub](https://github.com/Exchange-RateAPI/mcp-server)

## License

MIT

TDQS

A4.7/5.0

Scored across 4 tools

Disambiguation5/5

Each tool targets a clearly distinct query shape: single live rate, fixed historical windows, multi-target/custom ranges, and currency metadata. The descriptions cross-reference each other to explicitly route potentially ambiguous cases, so an agent should not confuse them.

Naming Consistency5/5

All tool names follow a consistent verb_noun pattern in snake_case: get_exchange_rate, get_historical_rates, get_rates, list_currencies. There are no mixed conventions, vague verbs, or stylistic outliers.

Tool Count5/5

Four tools is well-scoped for an exchange-rate server: currency discovery, a live single rate, historical windows, and flexible multi-target/custom-range queries. Each tool earns its place with no redundancy or bloat.

Completeness5/5

Within the stated fiat-only scope, the surface covers lookup, live rates, historical time series, multi-target requests, and custom date ranges. The list_currencies tool also provides a validation path that prevents dead-end calls to the rate tools.

Maintenance

ActivityMaintained
ResponsivenessNo issues