MCP Server — AllRatesToday Documentation
Connect Claude Code, Cursor, Claude Desktop, Windsurf, and any MCP-compatible client to live and historical currency exchange rate data via the AllRatesToday MCP server.
MCP Server
The @allratestoday/mcp-server
package gives any Model Context Protocol
client direct access to the AllRatesToday currency API. Once installed, your AI assistant
can fetch live mid-market rates, query historical time-series, list supported currencies,
and pull authenticated multi-target rates — without you writing any glue code.
The server is published on the
official MCP registry
as io.github.cahthuranag/mcp-server and on
npm. The free tier
(300 requests/month) is enough to evaluate it; two of the four tools work without an
API key at all.
Adding MCP Servers
The server runs locally on your machine via npx — there is nothing to host
and your API key never leaves your computer. Pick your client below:
Installation
Claude Code
Run two commands in any terminal:
claude mcp add allratestoday -- npx -y @allratestoday/mcp-server
claude mcp env allratestoday ALLRATES_API_KEY=art_live_xxxxx The server is registered globally and available in every Claude Code session. Run
claude mcp list to verify.
Cursor
Edit ~/.cursor/mcp.json (global) or .cursor/mcp.json in your
project root, and add an entry under mcpServers:
{
"mcpServers": {
"allratestoday": {
"command": "npx",
"args": ["-y", "@allratestoday/mcp-server"],
"env": {
"ALLRATES_API_KEY": "art_live_xxxxx"
}
}
}
} Restart Cursor. The four tools appear under the MCP icon in chat.
Claude Desktop
Edit your Claude Desktop config file:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json - Linux:
~/.config/Claude/claude_desktop_config.json
{
"mcpServers": {
"allratestoday": {
"command": "npx",
"args": ["-y", "@allratestoday/mcp-server"],
"env": {
"ALLRATES_API_KEY": "art_live_xxxxx"
}
}
}
} Fully quit and reopen Claude Desktop after editing — closing the window leaves it running and the new config will not load.
ChatGPT Desktop
ChatGPT Desktop reads the same JSON format. Add the block above to its MCP config and restart the app.
Windsurf
Open Windsurf settings → MCP → Add custom server. Use the same configuration block as Cursor.
Other MCP clients
Any client that supports the MCP stdio transport will work. Point it at the command:
npx -y @allratestoday/mcp-server Pass ALLRATES_API_KEY through the environment.
Configuration
The server reads two environment variables:
| Variable | Required? | Purpose |
|---|---|---|
ALLRATES_API_KEY | For authenticated tools only | Bearer token from your dashboard. Looks like
art_live_xxxxx. |
ALLRATES_BASE_URL | No | Override the API host (default https://allratestoday.com/api).
Useful for staging or self-hosted deployments. |
Tools
The server exposes four typed tools. The MCP client introspects each tool's schema automatically and passes it to the model — you do not need to register them yourself.
Currency / Exchange Rate
get_exchange_rate— current mid-market rate between any two of 160+ supported currencies. No API key required.get_rates_authenticated— fetch one base currency against multiple targets in a single call. Higher rate limits. API key required.
Historical
get_historical_rates— time-series data over1d,7d,30d, or1ywindows for any currency pair. API key required.
Discovery
list_currencies— every supported currency code with its name, symbol, and decimal precision. Useful as a one-shot reference for the model. No API key required.
Authentication
- Sign up at allratestoday.com/register — about thirty seconds.
- Verify your email.
- Copy the key from your dashboard. It begins with
art_live_. - Set it as
ALLRATES_API_KEYin your MCP client'senvblock (see Installation).
The free plan includes 300 requests/month. Public tools
(get_exchange_rate and list_currencies) work without a key —
test connectivity with those first if you run into auth issues.
Example prompts
Once installed, try:
- "What's the USD to EUR rate right now?"
- "Show me GBP/JPY over the last 30 days as a sparkline."
- "If I had 1,000 EUR and converted half to GBP and half to JPY, what would
I have in USD?" — the model chains
get_exchange_ratecalls itself. - "List every currency you support, sorted alphabetically."
- "Give me a 1-year time series for AUD/USD."
Troubleshooting
| Symptom | Fix |
|---|---|
| Client doesn't see any AllRatesToday tools. | Fully quit and restart the client. Claude Desktop and Cursor cache the server list and will not reload it on a soft window close. |
command not found: npx | Install Node.js 18+ — npx ships with it.
nodejs.org. |
| Authenticated tools return 401. | Confirm ALLRATES_API_KEY is set on the right server entry and
starts with art_live_. Public tools should still work — test those
to isolate the problem. |
| Authenticated tools return 429. | You've exceeded the free-tier quota (300 req/mo). Upgrade at allratestoday.com/pricing or wait until the monthly reset. |
| Server starts but model never calls it. | Re-prompt with an explicit instruction like "use the AllRatesToday MCP tool". Some models are reluctant to call tools when they think they already know the answer. |
Resources
- Source code & issues: github.com/cahthuranag/mcp-server
- npm package:
@allratestoday/mcp-server - Official MCP registry entry:
io.github.cahthuranag/mcp-server - Feature overview: /mcp/
- Full API reference: /docs/
- Python alternative for DeepSeek: /deepseek/
Ready to plug live FX data into your AI?
One npx install. Free tier. No credit card.