CurrencyFreaks

io.github.CurrencyFreaks由 GitHub 帳號 CurrencyFreaks 發布v1.0.1更新於 Oct 29, 2026

Real-time and historical exchange rates and currency conversion for 1000+ currencies.

已驗證STDIO僅桌面金融資料與分析

概覽

AI 產生的概覽

CurrencyFreaks 官方 MCP 伺服器,讓助理查詢 1000 多種貨幣的即時與歷史匯率、換算金額並檢視匯率變動。

可以做什麼
  • 依代碼、名稱或國家查詢支援的貨幣,可選擇回傳資料區間等詳細資訊
  • 取得指定貨幣對某一基準貨幣的最新匯率
  • 在兩種貨幣之間換算金額,可用最新匯率或指定歷史日期
  • 查詢某一歷史日期的匯率,或某段日期內的每日匯率
  • 計算兩種貨幣在兩個日期之間的漲跌幅度與百分比變化
  • 依 IP 位址判斷當地貨幣並換算金額
適用情境
適合讓助理以自然語言回答匯率問題:目前或歷史匯率、貨幣換算、跨時間價格比較,或確認某國家使用的貨幣代碼。除基礎最新匯率外,多數工具需要付費的 CurrencyFreaks 方案。
執行需求
透過 npx 以 stdio 在本機執行,需要 Node.js 18 以上版本與 npx。必須在 CURRENCYFREAKS_API_KEY 環境變數中提供 CurrencyFreaks API 金鑰;免費 Developer 方案每月 1000 次請求。可選 CURRENCYFREAKS_REQUEST_TIMEOUT_MS 設定請求逾時(預設 15000 毫秒)。需要能連線至 CurrencyFreaks API 的網路。
安裝前請注意
API 金鑰會在每次呼叫時以查詢參數送往 CurrencyFreaks,等於與該第三方分享,請勿寫入共用設定。換算、歷史匯率、時間序列、漲跌幅、IP 轉貨幣及自訂基準貨幣等工具需要付費方案,否則回傳 402 錯誤;額度用盡會回傳 429。IP 轉貨幣工具會把 IP 位址傳送給服務商。所有工具皆為唯讀。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 CurrencyFreaks,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

README

CurrencyFreaks MCP Server

[npm version] [GitHub] [Node.js] [License]

Official MCP server for CurrencyFreaks. Exposes 7 MCP tools for real-time and historical exchange rates and currency conversion across 1000+ fiat currencies, cryptocurrencies, and precious metals. Your AI assistant asks for rates in plain English; the MCP server handles the API calls.

Works with Claude Desktop, Claude Code, Cursor, Windsurf, VS Code, Cline, Codex, and any other MCP-compatible client.

ItemValue
Package@currencyfreaks/mcp
Transportstdio
Node.js>=18

Quick Start

  1. Get a free CurrencyFreaks API key — 1,000 requests a month, no card required.

  2. Cursor users can install in one click:

    [Add to Cursor]

  3. Everyone else: add this to your MCP client config (see Install by Client for the exact file path):

json
{  "mcpServers": {    "currencyfreaks": {      "command": "npx",      "args": ["-y", "@currencyfreaks/mcp"],      "env": {        "CURRENCYFREAKS_API_KEY": "<YOUR_API_KEY>"      }    }  }}
  1. Restart your client.

  2. Test it: ask "What's the current EUR to USD exchange rate?"

Table of Contents

Install by Client

Requirements

  • Node.js 18 or later
  • npx available in your terminal
  • A CurrencyFreaks API key — sign up free

Claude Desktop

Add to claude_desktop_config.json (Settings → Developer → Edit Config):

json
{  "mcpServers": {    "currencyfreaks": {      "command": "npx",      "args": ["-y", "@currencyfreaks/mcp"],      "env": {        "CURRENCYFREAKS_API_KEY": "<YOUR_API_KEY>"      }    }  }}

Restart Claude Desktop after saving.

Claude Code

bash
claude mcp add currencyfreaks --env CURRENCYFREAKS_API_KEY=<YOUR_API_KEY> -- npx -y @currencyfreaks/mcp

Start a new Claude Code session after adding the server.

Cursor

One-click install:

[Add to Cursor]

Or add to .cursor/mcp.json manually:

json
{  "mcpServers": {    "currencyfreaks": {      "command": "npx",      "args": ["-y", "@currencyfreaks/mcp"],      "env": {        "CURRENCYFREAKS_API_KEY": "<YOUR_API_KEY>"      }    }  }}

Restart Cursor after saving.

Windsurf

Add to ~/.codeium/windsurf/mcp_config.json:

json
{  "mcpServers": {    "currencyfreaks": {      "command": "npx",      "args": ["-y", "@currencyfreaks/mcp"],      "env": {        "CURRENCYFREAKS_API_KEY": "<YOUR_API_KEY>"      }    }  }}

Restart Windsurf after saving.

VS Code / GitHub Copilot

Add to your VS Code settings.json:

json
{  "mcp": {    "servers": {      "currencyfreaks": {        "command": "npx",        "args": ["-y", "@currencyfreaks/mcp"],        "env": {          "CURRENCYFREAKS_API_KEY": "<YOUR_API_KEY>"        }      }    }  }}

Restart VS Code after saving.

Cline

Open MCP Servers panel → Configure → Advanced MCP Settings. Add to cline_mcp_settings.json:

json
{  "mcpServers": {    "currencyfreaks": {      "command": "npx",      "args": ["-y", "@currencyfreaks/mcp"],      "env": {        "CURRENCYFREAKS_API_KEY": "<YOUR_API_KEY>"      }    }  }}

Restart Cline after saving.

Codex CLI

bash
codex mcp add currencyfreaks --env CURRENCYFREAKS_API_KEY=<YOUR_API_KEY> -- npx -y @currencyfreaks/mcpcodex mcp list

Start a new Codex session after adding the server.

Any Other MCP Client

Use this config:

json
{  "command": "npx",  "args": ["-y", "@currencyfreaks/mcp"],  "env": {    "CURRENCYFREAKS_API_KEY": "<YOUR_API_KEY>"  }}

Verify It Works

Try these after setup:

PromptExpected tool
What's the current EUR to USD exchange rate?get_latest_rates with symbols=EUR
Convert 500 USD to PKR.convert_currency
What was 1,000 GBP worth in JPY on 2026-01-15?convert_currency with date
What was the EUR/USD rate on January 2nd, 2020?get_historical_rates
Show daily USD to INR rates for the first week of August 2026.get_time_series
How much has the yen moved against the dollar since June 1st?get_fluctuation
What's the currency code for the Nepalese rupee?list_currencies with search=nepal
What's 50 USD in the local currency of IP 182.186.18.9?ip_to_currency

Tool Reference

All 7 tools wrap the CurrencyFreaks v2.0 REST API. Tools that take symbols accept a comma-separated list of currency codes (e.g. EUR,GBP,PKR), case-insensitive. Use list_currencies to look up a code — there are 1000+ across fiat, crypto, and metals.

Precious metals use ISO 4217 codes: XAU (gold), XAG (silver), XPT (platinum), XPD (palladium). The API returns all rates and amounts as strings to preserve precision.

list_currencies

GET /v2.0/currency-symbols (compact) or GET /v2.0/supported-currencies (detailed) — the supported currency catalogue. No API key required.

ParameterRequiredDescription
searchNoCase-insensitive substring matched against code, name, or (with detailed) country name, e.g. rupee, PK, bitcoin
detailedNotrue returns country, status (AVAILABLE/DEPRECATED), the availableFrom/availableUntil historical data range, and flag icon per currency. Default false. Combine with search; the full detailed catalogue is ~270 KB.

get_latest_rates

GET /v2.0/rates/latest — latest rates for one or more currencies against a base. Refresh frequency depends on plan: daily on Developer (free), hourly on Starter, every 10 minutes on Growth, every 60 seconds on Professional and above.

ParameterRequiredDescription
symbolsNoComma-separated currency codes. Omit for all 1000+ currencies.
baseNoBase currency code. Default USD. Paid plans only.

convert_currency

GET /v2.0/convert/latest, or GET /v2.0/convert/historical when date is given — convert an amount between two currencies. Paid plans only.

ParameterRequiredDescription
fromYesCurrency code to convert from
toYesCurrency code to convert to
amountNoAmount to convert, greater than 0. Default 1.0.
dateNoYYYY-MM-DD. Converts at that day's rate instead of the latest.

get_historical_rates

GET /v2.0/rates/historical — rates on a specific past date. Major fiat currencies go back to 1984-11-28; newer currencies and crypto start from their own listing date. Paid plans only.

ParameterRequiredDescription
dateYesYYYY-MM-DD
symbolsNoComma-separated currency codes. Omit for all.
baseNoBase currency code. Default USD.

get_time_series

GET /v2.0/timeseries — daily rates between two dates, one entry per day. Professional plan and above.

ParameterRequiredDescription
startDateYesYYYY-MM-DD
endDateYesYYYY-MM-DD
symbolsNoComma-separated currency codes
baseNoBase currency code. Default USD.

get_fluctuation

GET /v2.0/fluctuation — how each currency moved between two dates: start rate, end rate, absolute change, and percent change. Professional plan and above.

Sign convention: change is startRate - endRate. A positive change means the rate fell (the symbol currency strengthened against the base); a negative change means the rate rose (the symbol currency weakened).

ParameterRequiredDescription
startDateYesYYYY-MM-DD
endDateNoYYYY-MM-DD. Defaults to the day before today.
symbolsNoComma-separated currency codes
baseNoBase currency code. Default USD.

ip_to_currency

GET /v2.0/iptocurrency — resolves the local currency from an IP address's geolocation and converts an amount into it. The target currency comes back in the to field. Growth plan and above.

ParameterRequiredDescription
fromYesCurrency code to convert from
ipNoIPv4 or IPv6 address. Omit to use the caller's own IP.
amountNoAmount to convert. Default 1.0.

Plan Requirements

FeatureMinimum plan
list_currenciesNone (no API key needed)
get_latest_rates with default USD baseDeveloper (free)
base parameter on any toolStarter
convert_currencyStarter
get_historical_ratesStarter
ip_to_currencyGrowth
get_time_seriesProfessional
get_fluctuationProfessional

Calls that exceed the plan return a 402 error with guidance (see Error Codes).

Prompt Examples

Live rates

  • What's the current EUR to USD exchange rate?
  • Give me the latest rates for GBP, JPY, and CHF against the euro.
  • What's bitcoin worth in USD right now?
  • What's the gold price in euros?

Conversion

  • Convert 250 USD to Indian rupees.
  • How many yen is 1,200 euros?
  • What was 500 GBP worth in USD on 2025-12-31?

Historical data

  • What was the USD to PKR rate on January 2nd, 2020?
  • Show me daily EUR/USD rates for Q1 2026.
  • Compare the pound and the euro against the dollar over the last 30 days.

Price changes

  • How much has the Turkish lira dropped against the dollar since January 1st?
  • Did ETH go up or down versus USD this month, and by how much?

Discovery

  • What's the currency code for the Kazakhstani tenge?
  • Which currencies does CurrencyFreaks support for Africa?
  • How far back does historical data go for the Nigerian naira?

Example Answers and Tool Output

The text answers show what a client might say; exact wording depends on the model. JSON blocks are raw tool output.

Latest rates

Prompt: What are the latest EUR, GBP, and PKR rates against the dollar?

Example answer: As of 2026-08-25 13:26 UTC, 1 USD buys 0.9279 EUR, 0.8173 GBP, or 281.62 PKR.

json
{  "date": "2026-08-25 13:26:00+00",  "base": "USD",  "rates": {    "EUR": "0.9278605451274349",    "GBP": "0.8172754173817152",    "PKR": "281.6212943333344",    "USD": "1.0"  }}

Conversion

Prompt: Convert 500 USD to PKR.

Example answer: 500 USD is 140,841.48 PKR at a rate of 281.683.

json
{  "date": "2026-08-25 15:22:00+00",  "from": "USD",  "to": "PKR",  "rate": "281.683",  "givenAmount": "500.0",  "convertedAmount": "140841.475"}

Fluctuation

Prompt: How did the Pakistani rupee move against the pound between June 1st and June 15th, 2026?

Example answer: PKR strengthened against the pound, going from 254.331 to 243.874 per GBP, a move of 10.457 (4.11%).

json
{  "startDate": "2026-06-01",  "endDate": "2026-06-15",  "base": "GBP",  "rateFluctuations": {    "PKR": {      "startRate": "254.331",      "endRate": "243.874",      "change": "10.457",      "percentChange": "4.11"    }  }}

Currency lookup

Prompt: What's the currency code for the Nepalese rupee?

Example answer: The Nepalese rupee is NPR.

json
{  "count": 6,  "currencies": {    "SCR": "Seychellois Rupee",    "MUR": "Mauritius Rupee",    "INR": "Indian Rupee",    "PKR": "Pakistani Rupee",    "LKR": "Sri Lankan Rupee",    "NPR": "Nepalese Rupee"  }}

Error Codes

Tool calls never crash the server. Upstream errors are returned as structured tool results with error, code, message, and a guidance field so the client can explain what went wrong instead of echoing a status code.

CodeMeaning
400Missing API key, or invalid parameters (bad currency code, date format, amount, or IP address)
401API key is invalid or inactive — check CURRENCYFREAKS_API_KEY in your client config
402Feature not included in the current plan — see Plan Requirements
404Rates not found for the requested currency, date, or interval
429Monthly request quota exhausted — upgrade or wait for the reset
499Request to the upstream API timed out (see CURRENCYFREAKS_REQUEST_TIMEOUT_MS)
502Server could not reach the upstream API

Example error result for an invalid key:

json
{  "error": "Invalid Api Access Exception",  "code": 401,  "message": "Provided API key is invalid. [Contact tech. support for assistance at [email protected]]",  "guidance": "The API key is invalid or inactive. Check CURRENCYFREAKS_API_KEY in your MCP client config and confirm the key is active on the CurrencyFreaks dashboard."}

How It Works

This is a stdio MCP server that wraps the CurrencyFreaks v2.0 REST API.

At runtime:

  1. Your MCP client starts the server process via npx.
  2. The client reads the tool list.
  3. When a prompt matches a tool, the client calls it.
  4. The server validates inputs, calls CurrencyFreaks, and returns structured JSON.

The API key is read from the environment on each call and sent as the apikey query parameter. The catalogue endpoints behind list_currencies are public, so that tool works even before a key is configured.

Environment Variables

VariableRequiredDefaultDescription
CURRENCYFREAKS_API_KEYYesYour CurrencyFreaks API key
CURRENCYFREAKS_REQUEST_TIMEOUT_MSNo15000Upstream request timeout in ms

Building from Source

bash
git clone https://github.com/CurrencyFreaks/currencyfreaks-mcp.gitcd currencyfreaks-mcpnpm installnpm run build

Run it directly:

bash
CURRENCYFREAKS_API_KEY=<YOUR_KEY> node dist/cli.js

Inspect with the MCP Inspector:

bash
CURRENCYFREAKS_API_KEY=<YOUR_KEY> npx @modelcontextprotocol/inspector node dist/cli.js

Troubleshooting

Client uses an old tool list after updating: Restart the client and confirm it loaded the latest npm version.

400 "Please provide API Key": CURRENCYFREAKS_API_KEY is not set in your MCP client config's env block.

401 errors: The key is wrong or inactive. Copy it again from the CurrencyFreaks dashboard.

402 errors: The tool needs a higher plan. See Plan Requirements. On the Developer (free) plan only get_latest_rates with the default USD base and list_currencies work.

404 "Rates of provided currency X are available from A to B": The date is outside that currency's data range. Call list_currencies with search=X and detailed=true to see availableFrom and availableUntil.

Huge responses: Always pass symbols to the rate tools and search to list_currencies. Without them the API returns all 1000+ currencies.

499 timeouts: The upstream API did not respond in time. Increase CURRENCYFREAKS_REQUEST_TIMEOUT_MS (default: 15000 ms).

Pricing

Developer plan is free with 1,000 requests a month, no card required. Paid plans add base currency selection, conversion, historical data, time series, fluctuation, and IP-to-currency, with faster refresh rates. See the CurrencyFreaks pricing page.

Links

License

MIT

來源:README.md,提交 a4b66a1

工具

0
SourceWeft 尚未在沙箱中啟動過該軟體包,因此其工具未知。

版本歷史

1
  1. v1.0.1最新Oct 29, 2026

評分

已滿足適用檢查項的 50%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通25 分

    請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。

  • 已宣告認證方式10 分

    請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。

  • 已列出工具15 分

    請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。

  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分