Home Documentation Playground Pricing API Status Blog About FAQ Support

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.

Documentation index: see the full API reference for all REST endpoints. For a feature overview, visit the MCP landing page. 📄 Prefer offline? Download the full MCP guideline as PDF (12 sections, 52 KB).

MCP Server — Official Guideline

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 is enough to evaluate it; two of the four tools work without an API key at all.

Why MCP instead of direct REST?

If you are building a single application with one well-defined call pattern, the REST API is simpler. If you want your AI assistant to flexibly use exchange-rate data as part of broader work, MCP is the better choice.

ConcernDirect RESTMCP Server
Code to write HTTP client, error handling, schema parsing None — install once
Tool discovery by the model Manual prompt engineering Automatic via tool schemas
Tool chaining (multi-step queries) Manual orchestration Native — model chains calls itself
API key handling Often pasted into prompts (insecure) Stays in environment, never seen by the model
Reuse across clients Reimplement per client One install per client

Prerequisites

The two public tools (get_exchange_rate, list_currencies) work without an API key — useful for testing connectivity before configuring auth.

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:

{
  "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:

VariableRequired?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

Historical

Discovery

Authentication

  1. Sign up at allratestoday.com/register — about thirty seconds.
  2. Verify your email.
  3. Copy the key from your dashboard. It begins with art_live_.
  4. Set it as ALLRATES_API_KEY in your MCP client's env block (see Installation).

The free plan covers personal/dev use. 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:

Troubleshooting

SymptomFix
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. 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.

Security best practices

  1. Treat your API key like a password. Anyone with it can spend your monthly quota.
  2. Never commit claude_desktop_config.json or .cursor/mcp.json to git. Add them to .gitignore. If you must share configurations, use placeholder strings for the key.
  3. Rotate the key if you suspect exposure. Dashboard → Settings → Regenerate.
  4. Use the public tools first when testing connectivity — get_exchange_rate and list_currencies need no key, so a failure there isolates network issues from auth issues.
  5. Set a quota alert in your dashboard so a runaway agent does not silently exhaust your free tier overnight.
  6. Project-scoped vs. global config. For shared codebases, prefer project-level .cursor/mcp.json over global, so the API key lives in a per-project .env rather than a user-wide config file.

Versioning and updates

The package follows semantic versioning. Because installs use npx -y @allratestoday/mcp-server, every client launch fetches the latest published version automatically — no manual updates needed.

Pin a specific version if you need reproducibility (CI, audit environments):

"args": ["-y", "@allratestoday/mcp-server@0.3.1"]

Release notes are published on GitHub Releases.

Support

Resources

Ready to plug live FX data into your AI?

One npx install. Free tier. No credit card.

Get a free API key View source on GitHub