AllRatesToday について
AllRatesToday MCP Serverは、MCP対応のAIアシスタントに外国為替レート、過去の推移、中央銀行の公表レートを提供します。一部の公式データはAPIキーなしで利用でき、キーを設定するとライブレートや追加機能を使えます。
主な機能
- 01160以上の通貨レートを照会
- 02期間指定の過去レートを取得
- 03公式レートと参照レートを取得
- 04通貨と中央銀行の情報を一覧
- 05APIキーなしで一部データを照会
- 06stdioとホスト型HTTPに対応
活用シーン
- 01USDとEURの現在レートを確認
- 02GBP/JPYの30日間の推移を確認
- 03USDからCADへの金額換算
- 04複数の対象通貨のレートを比較
MCP 対応
互換クライアントに為替レート、過去データ、通貨一覧、中央銀行データのツールをstdioまたはホスト型Streamable HTTPで提供するMCPサーバーです。一部の公式データはキーなしで利用でき、ライブのミッドマーケットレートなどにはAPIキーが必要です。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
npx -y @allratestoday/mcp-serverALLRATES_API_KEYシークレットOptional. Without it the server runs keyless: get_exchange_rate answers from the official ECB daily reference table (~30 majors) and list_currencies works. A free key (https://allratestoday.com/register) unlocks real-time mid-market rates for 160+ currencies, historical series, and multi-target/point-in-time lookups.ALLRATES_BASE_URLOverride API base URL (default: https://allratestoday.com/api).ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。
ツール
4掲載時のツール一覧 · 2 週間前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| source | string | はい | ISO 4217 通貨コード。3文字で、大文字と小文字を区別しません(例:'USD'、'EUR'、'GBP'、'JPY')。source/target の通貨ペアでは、source 1単位が target でいくらになるかを返します。法定通貨のみ対応し、暗号資産や商品には対応していません。コードがサポートされているか不明な場合は list_currencies を呼び出してください。 |
| target | string | はい | ISO 4217 通貨コード。3文字で、大文字と小文字を区別しません(例:'USD'、'EUR'、'GBP'、'JPY')。source/target の通貨ペアでは、source 1単位が target でいくらになるかを返します。法定通貨のみ対応し、暗号資産や商品には対応していません。コードがサポートされているか不明な場合は list_currencies を呼び出してください。 |
詳細
AllRatesToday MCP Server — @allratestoday/mcp-server
Webサイト:https://allratestoday.com · ホスト型エンドポイント(インストール不要):https://allratestoday.com/api/mcp · ドキュメント:https://allratestoday.com/mcp/
英語 | 簡体字中国語
AI アシスタントに外国為替市場のライブ情報を提供します。Claude Code、Cursor、Claude Desktop、Windsurf、およびMCP互換のあらゆるクライアントが、AllRatesToday APIからリアルタイムの為替レート、過去の時系列データ、複数通貨のレートを取得できるModel Context Protocolサーバーです。
インストールすると、アシスタントは次のような質問に回答できます。
- 「現在のUSDからEURへの為替レートはいくらですか?」
- 「過去30日間のGBP/JPYの推移を見せてください。」
- 「実際のレートで250 USDをCADに換算してください。」
- 「USDとEUR、GBP、JPYを同時に比較してください。」
🚀 このサーバーを選ぶ理由
- 📡 リアルタイムのミッドマーケットレート — 160以上のISO 4217通貨に対応し、約60秒ごとに更新
- 📈 過去の時系列データを標準搭載 —
1d/7d/30d/1yの期間に対応し、各期間に適した粒度で表示 - 🧰 用途を絞った8つのツール —
get_exchange_rate、get_historical_rates、get_rates_authenticated、list_currencies、list_central_banks、get_official_rates、get_reference_rate、request_trial_key。機能を絞ったシンプルな構成で、モデルが正しく使いやすい設計です - 🔌 MCP対応環境ならどこでも動作 — stdioトランスポート、MCP 1.xに対応。Claude Code、Cursor、Claude Desktop、Windsurf、または汎用ホストで利用できます
- 🔓 APIキーなしで利用可能 — インストール後すぐに、公開されている中央銀行の公式レート表から回答します(まずECBを使用し、ECBがない場合は通貨のいずれかを発行する銀行を使用)。無料のキーを使えば、160以上の通貨のリアルタイムレートを利用できます
- 🛡️ 返した情報を正確に伝えます — APIキーなしでの回答では、どのレートをいつ公開したかを必ず示します。APIエラーも、明確で対処可能なメッセージに変換されます
- 🔒 情報が漏れることはありません — allratestoday.comに送信されるのはリクエストパラメーターとAPIキーだけで、会話の内容は送信されません
⚖️ ミッドマーケットレートと中央銀行の公式レート
APIキーを使用すると、get_exchange_rate、get_historical_rates、get_rates_authenticatedは、約60秒ごとに更新されるミッドマーケットレートを返します。価格表示や換算など、市場の動向を反映すべき用途に適したレートです。税務当局や監査人が求める公式レートとは異なります。公式レートが必要な場合は、**get_official_rates**を呼び出してください。122の中央銀行と4つの税務当局(ECB、Fed、HMRC、US Treasury、Swiss BAZGなど)が公表した最新のレート表を取得できます。レートは公表後に固定され、機関独自のrate_dateが付与されます。APIキーは不要です。list_central_banksでコードを確認できます。過去の日付を指定した公式レート表(過去のdate)の取得には、有料プランのAPIキーが必要です。無料のキーでは403 Historical central bank rates require a paid planが返されます。ミッドマーケットレートの履歴(get_historical_ratesおよびget_rates_authenticatedのtime)も有料プラン限定です。無料キーとトライアルキーでは403が返されます。中央銀行REST APIと銀行別npm SDKをご覧ください。両者のレートには数パーセントの差が生じる場合があるため、利便性ではなく用途に応じて選択してください。
🔑 API キーを取得する(無料)
API キーを使うと、160 以上の通貨のミッドマーケットレートをリアルタイムで取得でき、複数の対象通貨を指定した照会も利用できます。開発やお試しには無料プランで十分です。クレジットカードは不要です。 過去の時系列データ、特定日時のレート照会、日付指定の公式レートおよび参照レートの表には、月額 4.99 ユーロからの有料プランが必要です。
- allratestoday.com/register で登録します(30 秒)
- メールアドレスを確認します
- ダッシュボードからキーをコピーします(形式:
art_live_xxxxx) - 以下の設定で
ALLRATES_API_KEYとして使用します
キーがない場合、サーバーはキーなしモードの概要(以下)を stderr に短く出力して稼働を続けます。MCP サーバーが終了するとホストクライアントの設定全体が機能しなくなるため、終了することはありません。
🔓 キーなしモード — 設定なしで利用できる機能
設定なしでインストールするだけで起動し、接続して応答します。
| ツール | キーなし | 利用できる内容 |
|---|---|---|
get_exchange_rate | ✅ | 中央銀行の公式レートです。まず ECB の参照レート表を使用し、該当しない場合は対象通貨または基準通貨を発行する中央銀行のレートを使用します(USD/GBP → イングランド銀行、USD/INR → インド準備銀行)。応答には bank、rate_date、derived とその旨を示す注記が含まれるため、アシスタントがリアルタイムのレートとして誤って伝えることはありません。キーなしで利用できるのは、銀行が公表している通貨ペアとその逆のペア(derived: true のフラグ付き)のみです。それ以外のクロスレートは、キー取得先への案内とともに拒否されます。 |
list_currencies | ✅ | サポートされている ISO 4217 コードをすべて(160 以上)取得します。 |
list_central_banks | ✅ | 122 の中央銀行と 4 つの税務当局のコード、名称、最新の公表日を取得します。 |
get_official_rates | ✅ | それらの機関が公表した最新の公式レート表(または 1 通貨ペア)を取得します。日付指定の表には有料プランのキーが必要です。 |
get_reference_rate | ✅ | 日次参照レートを取得します。営業日ごとに 1 つの表が作成され、後から改訂されることはありません。ロンドン時間 16:00 に確定します。過去の日付を指定するには有料プランのキーが必要です。 |
request_trial_key | ✅ | アカウント登録なしで、100 回の呼び出しが可能な 7 日間有効のキーを発行し、セッションで使用します。 |
get_historical_rates | 🔑 | キーの取得方法を説明する一文を返します。有料プランが必要です。 |
get_rates_authenticated | 🔑 | 同上です。 |
キーなしの経路では、公開され、エッジキャッシュされた /api/open/central-bank/{bank} エンドポイントを読み込みます。上流コストは発生せず、レート制限にかかることも、登録が必要になることもありません。
クレジット表記。 キーなしで利用する場合、レートを表示する場所(フッター、概要ページ、README など)に、AllRatesToday への表示可能でクリックできるリンクを掲載する必要があります。API キーを使用する場合は、歓迎されますが必須ではありません。
<a href="https://allratestoday.com">Exchange rates by AllRatesToday</a>
Markdown:Exchange rates by [AllRatesToday](https://allratestoday.com)。正式な表記:https://allratestoday.com/terms/#attribution。
🧩 最も簡単なインストール方法:Claude Code プラグイン
Claude Code を使用している場合は、このサーバーを手動で設定する代わりにプラグインをインストールしてください。AllRatesToday の MCP サーバー 2 つ、スキル 2 つ、スラッシュコマンド 5 つ(/rate、/convert、/official-rate、/fx-history、/add-currency-support)が含まれています。
/plugin marketplace add AllRates-Today/claude-code-plugin
/plugin install allratestoday@allratestoday
以下の内容は、他の MCP クライアントにも引き続き適用されます。
☁️ ホステッドエンドポイント — インストール不要
同じツールは、Streamable HTTP MCP サーバーとしてもホストされており、11 個のツールを提供します。この stdio パッケージの 8 個に加え、姉妹の中央銀行サーバーから get_official_rate_history、compare_official_rates、get_publication_calendar を利用できます。URL をリモート MCP に対応した任意のクライアントに貼り付けてください。Claude.ai と Claude Desktop のコネクター、ChatGPT、Cursor、VS Code、Codex、Gemini CLI で利用できます。
https://allratestoday.com/api/mcp
claude mcp add --transport http allratestoday https://allratestoday.com/api/mcp
キーなしで利用できます。キーを使う場合は、Authorization: Bearer art_live_… を送信するか、クライアントで URL しか指定できない場合は https://allratestoday.com/api/mcp?api_key=art_live_… に接続してください。これによりキーが URL に含まれるため、クライアント設定、ログ、スクリーンショットから漏れる可能性があります。クライアントが対応している場合はヘッダーを優先し、この URL を共有したりコミットしたりしないでください。漏洩した場合は https://allratestoday.com/profile でキーをローテーションしてください。レジストリ名:com.allratestoday/mcp。Cursor / VS Code のワンクリックボタン:https://allratestoday.com/mcp/#hosted
📦 インストール
最も簡単なのは、npx を使ったインストール不要の方法です。以下の設定例はすべてこの方法を使用しています。
# Run without installing (recommended)
npx -y @allratestoday/mcp-server
# Or install globally
npm install -g @allratestoday/mcp-server
allratestoday-mcp
どちらのコマンドも stdio MCP サーバーを起動し、クライアントからの接続を待ちます。シェルから対話的に実行するものではありません。MCP クライアントがサブプロセスとして起動します。
🏁 クライアントごとのクイックセットアップ
クライアントごとに、MCP サーバーを読み込む設定ファイルが異なります。以下から該当するものを選んでください。
Claude Code
最も手早い方法は、組み込み CLI を使うことです。
claude mcp add allratestoday -- npx -y @allratestoday/mcp-server
claude mcp env allratestoday ALLRATES_API_KEY=art_live_xxxxx
Claude Code を再起動します。「現在の USD から EUR へのレートはいくらですか?」 と尋ねて、動作を確認してください。
Cursor
~/.cursor/mcp.json を編集します(プロジェクト単位のサーバーの場合は、プロジェクト内の .cursor/mcp.json を編集します)。
{
"mcpServers": {
"allratestoday": {
"command": "npx",
"args": ["-y", "@allratestoday/mcp-server"],
"env": {
"ALLRATES_API_KEY": "art_live_xxxxx"
}
}
}
}
Cursor を再起動します。8 個のツールが MCP ツールピッカーに表示されます。
Claude Desktop
設定ファイルを編集します(パスは OS によって異なります)。
| OS | パス |
|---|---|
| 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"
}
}
}
}
Claude Desktop を完全に終了して再起動してください(macOS では Cmd+Q、Windows ではトレイアイコンを右クリックして[終了])。ウィンドウを閉じるだけでは、古い設定が読み込まれたままになります。
Windsurf
~/.codeium/windsurf/mcp_config.json を編集し、上記と同じ mcpServers ブロックを設定してから、Windsurf を再起動します。
汎用 stdio MCP クライアント
stdio トランスポートに対応した MCP ホストであれば動作します。起動コマンドは次のとおりです。
npx -y @allratestoday/mcp-server
…環境変数 ALLRATES_API_KEY を設定して実行してください。プロトコルのバージョンは MCP 1.x です。
✅ 動作確認
クライアントの設定後、次の順番でテストしてください。
- サーバーが起動する — クライアントを開きます。サーバーはキーの有無にかかわらず起動するため(キーなしの場合はキーなしモード)、赤い点や「接続に失敗しました」という表示が出る場合は、クライアントがサーバーを起動できていません。通常は
npxまたは Node ≥18 が原因です(下記の「トラブルシューティング」を参照)。誤ったキーでも起動は妨げられませんが、呼び出し時にInvalid AllRatesToday API keyが返されます。 - ツールが一覧表示される — ほとんどのクライアントには、8 個のツールを表示する「ツール」または「MCP」パネルがあります。
- ライブ呼び出しで数値が返る — 「現在の USD から EUR へのレートはいくらですか?」 と尋ねます。アシスタントは
get_exchange_rate(source: "USD", target: "EUR")を呼び出し、実際のレートを返すはずです。ツールを呼び出さずに数値を作り出す場合、サーバーは接続されていません。
ほかのツールを試すプロンプト:
- 「最新の公表表にある ECB の公式 USD レートはいくらでしたか?」 →
get_official_rates - 「EUR、GBP、JPY の本日 16:00 のロンドン基準レートを教えてください。」 →
get_reference_rate - 「公式レートを取得できる中央銀行を教えてください。」 →
list_central_banks - 「250 USD を CAD に換算してください。」 →
get_exchange_rate
🧪 MCP Inspector でテストする
AI クライアントを介さずにサーバー単体を確認するには、公式の MCP Inspector で実行します。
npx @modelcontextprotocol/inspector npx -y @allratestoday/mcp-server
- 表示された URL を開き、Connect をクリックします。Tools タブに 8 つのツールが表示されます。
get_exchange_rateをsource: USD、target: EURで呼び出します。公式レートをキーなしで返します。- Inspector の環境パネルで
ALLRATES_API_KEYを設定し、再接続して、もう一度呼び出します。今度はライブのミッドマーケットレートを返します。
これが機能するのにクライアントでは機能しない場合、問題はサーバーではなく、クライアントの設定(npx のパス、Node のバージョン、JSON の構文)にあります。
📚 ツールのリファレンス
get_exchange_rate— 1 組の通貨の現在のレートget_historical_rates— あらかじめ設定された期間の時系列データget_rates_authenticated— 1 回の呼び出しで複数の対象通貨を指定。特定時点の指定も可能list_currencies— サポートされているすべての通貨コード、名称、記号list_central_banks— 対象となるすべての中央銀行/税務当局と、そのコードおよび最新の公開日get_official_rates— 指定した機関が公開した公式レート表(または 1 組の通貨)get_reference_rate— 日次参照レート。営業日ごとに固定されたミッドマーケットレート表(ロンドン時間 16:00)request_trial_key— アカウント不要で、100 回呼び出し可能な 7 日間のトライアルキーを発行
get_historical_rates と get_rates_authenticated には ALLRATES_API_KEY が必要です。残り 6 つのツールはキーなしで動作します。履歴データ(get_historical_rates および get_rates_authenticated の time)には有料プランが必要です。
get_exchange_rate
2 つの通貨間の現在のミッドマーケットレートです。
入力
| フィールド | 型 | 必須 | 説明 |
|---|---|---|---|
source | string | はい | 3 文字の ISO 4217 コード(例:USD) |
target | string | はい | 3 文字の ISO 4217 コード(例:EUR) |
呼び出し例
{ "source": "USD", "target": "EUR" }
レスポンス(キーあり):
{ "rate": 0.888889, "source": "mid-market" }
レスポンス(キーなし — USD → GBP は ECB の表にないため、イングランド銀行の表が回答します):
{
"rate": 0.7598784195,
"source": "Bank of England official rate (keyless mode)",
"bank": "boe",
"rate_date": "2026-10-14",
"derived": true,
"note": "Keyless mode: this is the Bank of England official rate published on 2026-10-14, not a live mid-market quote. For real-time rates across 160+ currencies set ALLRATES_API_KEY — free tier at https://allratestoday.com/register."
}
derived: true は、銀行が逆方向のレート(GBP→USD)を公開しており、レートが反転されたことを意味します。単一の銀行が公開していない通貨ペアをキーなしでリクエストすると、No keyless official source covers … とキーへの案内が返され、リクエストは拒否されます。
get_historical_rates
固定期間における通貨ペアの時系列データポイントです。有料プランの API キーが必要です(無料キーおよびトライアルキーでは 403 が返されます)。
入力
| フィールド | 型 | 必須 | 説明 |
|---|---|---|---|
source | string | はい | 変換元の通貨コード |
target | string | はい | 変換先の通貨コード |
period | string | いいえ(デフォルトは 7d) | 1d、7d、30d、1y のいずれか |
期間ごとの粒度
period | データポイント |
|---|---|
1d | 1 時間ごと(24 ポイント) |
7d | 1 日ごと(7 ポイント) |
30d | 1 日ごと(30 ポイント) |
1y | 1 週間ごと(52 ポイント) |
呼び出し例
{ "source": "USD", "target": "INR", "period": "30d" }
レスポンス(一部省略):
{
"source": "USD",
"target": "INR",
"period": "30d",
"data": [
{ "date": "2026-09-17", "rate": 96.1006, "timestamp": 1789603200000 },
{ "date": "2026-09-18", "rate": 95.8142, "timestamp": 1789689600000 },
"...",
{ "date": "2026-10-16", "rate": 94.9643, "timestamp": 1792108800000 }
]
}
get_rates_authenticated
1 回の呼び出しで複数の対象通貨を指定できます。過去のタイムスタンプや集計期間も任意で指定できます。
入力
| フィールド | 型 | 必須 | 説明 |
|---|---|---|---|
source | string | はい | 変換元の通貨コード |
target | string | はい | 1 つ以上の通貨コード。カンマ区切り(EUR,GBP,JPY) |
time | string (ISO 8601) | いいえ | 過去の時点(有料プラン) |
group | string | いいえ | hour、day、week、month のいずれか |
呼び出し例
{ "source": "USD", "target": "EUR,GBP,JPY" }
レスポンス:
{
"rates": [
{ "rate": 0.888889, "source": "USD", "target": "EUR", "time": "2026-10-16T12:16:01+0000" },
{ "rate": 0.749766, "source": "USD", "target": "GBP", "time": "2026-10-16T12:16:01+0000" },
{ "rate": 157.985, "source": "USD", "target": "JPY", "time": "2026-10-16T12:16:01+0000" }
]
}
list_currencies
サポートされているすべての通貨のコード、名称、記号を返します。上流から取得した結果は 24 時間キャッシュされるため、他のツールを呼び出す前にユーザー入力を検証する用途にも手軽に利用できます。
入力 — なし。
レスポンス(一部省略):
{
"currencies": [
{ "code": "USD", "name": "US Dollar", "symbol": "$" },
{ "code": "EUR", "name": "Euro", "symbol": "€" },
{ "code": "GBP", "name": "British Pound", "symbol": "£" },
"..."
],
"count": 163
}
list_central_banks
サーバーが引用できるすべての公式ソースです。122 の中央銀行に加え、HMRC、米国財務省、スイスのBAZG、インドのCBICが含まれます。get_official_rates で bank として指定する code、機関名、最新の公開日、age_days、公開頻度を示す cadence、公開スケジュールに遅れがある場合の stale フラグを確認できます。APIキーは不要です。
入力 — なし。
レスポンス(一部省略):
{
"sources": [
{ "code": "ecb", "name": "European Central Bank", "latest": "2026-10-15", "age_days": 1, "stale": false, "cadence": "daily" },
{ "code": "fed", "name": "US Federal Reserve (H.10)", "latest": "2026-10-09", "age_days": 7, "stale": false, "cadence": "weekly" },
"..."
],
"stale_count": 3,
"checked_at": "2026-10-16T12:16:46.232Z"
}
get_official_rates
機関が公開した、確定済みで引用可能なレートです。請求書、VATおよび税務申告、通関、移転価格、監査に使用できます。リアルタイムの市場レートではありません。
入力:
| フィールド | 型 | 必須 | 説明 |
|---|---|---|---|
bank | string | はい | list_central_banks のソースコード。例:ecb、fed、boe、rbi、hmrc |
date | string | いいえ | YYYY-MM-DD。最新のテーブルを取得する場合は省略します(APIキー不要)。過去のレートには、有料プランのAPIキーが必要です。無料のAPIキーでは 403 Historical central bank rates require a paid plan が返されます。週末や祝日の場合は、直近の公開日にさかのぼります。 |
source | string | いいえ | target と併用すると、1つの通貨ペアに絞り込みます |
target | string | いいえ | source と併用すると、1つの通貨ペアに絞り込みます |
レスポンス(1つの通貨ペア):
{
"bank": "ecb",
"rate_date": "2026-10-15",
"source": "EUR",
"target": "USD",
"rate": 1.1208,
"rate_type": "reference",
"derived": false,
"method": "published",
"age_days": 1,
"stale": false,
"cadence": "daily",
"attribution": { "source": "Official rates published by ECB, served by AllRatesToday", "url": "https://allratestoday.com/central-bank-rates-api/ecb/", "terms": "Free to use with visible attribution linking to allratestoday.com" }
}
source/target を省略すると、テーブル全体が rates: [{ base, quote, type, value }] として返されます。APIキー不要で提供されるのは、その銀行が公開している通貨ペアとその逆方向の通貨ペア(derived: true のフラグ付き)のみです。それ以外のクロス通貨ペアは拒否されます。APIキーがある場合、その銀行が直接公開していない通貨ペアは、同じテーブル内のレートを使ってクロス計算され、derived: true のフラグが付きます。必ず rate_date を引用してください。
get_reference_rate
AllRatesToday の日次参照レートです。ロンドン時間16:00を中心とする5分間に取得したサンプルの通貨別中央値で、営業日ごとに1回公開され、改定されることはありません。レポート、指数、調査系列で、1日につき再現可能なレートを1つ必要とする場合に使用します。WM/Refinitivのフィックスでも、登録済みベンチマークでもありません。すべてのレスポンスに免責事項と rate_date が含まれます。
入力
| フィールド | 型 | 必須 | 説明 |
|---|---|---|---|
source | string | いいえ | target と併用すると、1つの通貨ペアに絞り込みます(USD経由でクロス計算され、derived のフラグが付きます) |
target | string | いいえ | 上記を参照 |
date | string | いいえ | 過去の営業日を YYYY-MM-DD 形式で指定します(有料プランのAPIキーが必要)。最新のテーブルを取得する場合は省略します |
出力 — テーブルの場合は { rate_date, base, time, rates }、通貨ペアの場合は { rate_date, source, target, rate, derived } に加え、method と disclaimer が返されます。最新のテーブルはAPIキー不要で取得できます。ドキュメント:https://allratestoday.com/reference-rate/
request_trial_key
有効期間7日、全期間で100回まで利用できるAPIキーを、アカウントやメールアドレスなしでセルフ発行し、残りのセッションでこのサーバーに設定します。再起動後も使えるよう、キーを ALLRATES_API_KEY としてMCP設定にコピーするようユーザーに案内します。1日あたりの発行数はIPごとに最大3個です。
入力 — agent(string、任意)、purpose(string、任意)。
出力 — { key, calls, expires_at, adopted, note }。
⚙️ 環境変数
| 変数 | デフォルト | 必須 | 用途 |
|---|---|---|---|
ALLRATES_API_KEY | — | いいえ | APIキー。Authorization: Bearer として送信されます。未設定の場合はAPIキー不要モード(上記参照)、設定した場合はリアルタイムレートと複数ターゲットの検索が利用できます(過去のレートを扱うツールには有料プランのAPIキーが必要です)。 |
ALLRATES_BASE_URL | https://allratestoday.com/api | いいえ | セルフホストまたはステージング環境に合わせて上書きします。 |
これらはシェルではなく、MCPクライアントの設定にある env ブロックで設定してください。MCPサーバーは、分離された環境でサブプロセスとして起動するためです。
💳 プラン
無料プランと有料プランをご利用いただけます。現在の利用上限については、allratestoday.com/pricingをご覧ください。無料プランでは、リアルタイムレートと複数通貨への換算をご利用いただけます。すべての履歴データと日付指定レート(ミッドマーケットレートの履歴、特定日時点のレート、日付指定の公式レート表と参照レート表)には有料プランが必要です(無料キーとトライアルキーでは403 historical_requires_paid_planが返されます)。Official Ratesプランの対象は、中央銀行と税務当局の公式レートのみです(市場レートは含まれません)。
🛠️ トラブルシューティング
| 症状 | 考えられる原因 | 対処方法 |
|---|---|---|
| クライアントに「MCP server failed to start」と表示される、または赤い点が表示される | キーがないことが原因ではありません。0.5.0以降はキーなしでも正常に起動します。通常はnpxがレジストリに接続できないか、Nodeのバージョンが18未満です | シェルでnpx -y @allratestoday/mcp-serverを実行し、stderrを確認してください |
| レートが昨日のもののように見え、レスポンスに「keyless mode」と記載される | キーが設定されていないため、回答は中央銀行の公式レート表に基づいています(bankとrate_dateを参照) | リアルタイムのミッドマーケットレートを利用するには、ALLRATES_API_KEYを設定してください |
No keyless official source covers X/Y | キーレスモードで、該当する通貨ペアまたはその逆方向のレートを公開している中央銀行がありません | ALLRATES_API_KEY(無料)を設定してください |
HTTP 403 — Historical rates require a paid plan | 無料キーまたはトライアルキーでget_historical_ratesを呼び出した場合、またはget_rates_authenticatedにtimeを指定した場合 | /pricingでプランをアップグレードしてください。履歴データは有料プランのみです |
HTTP 403 — Historical central bank rates require a paid plan | 無料キーでget_official_rates/get_reference_rateにdateを指定した場合 | 最新の表を取得するにはdateを省略するか、プランをアップグレードしてください |
| すべての呼び出しで「Invalid AllRatesToday API key」が返される | キーの形式が正しくありません(プレフィックスがない、途中で切れている、または無効化されている) | ダッシュボードから新しいキーをコピーしてください |
| ツールから「AllRatesToday API quota exceeded」が返される | 利用上限に達しています。無料プランの上限はリセットされません。有料プランの上限は月単位です | /pricingでプランをアップグレードしてください |
| 履歴ツールから「Bad request」が返される | 期間が無効か、通貨コードが不明です | 期間は1d/7d/30d/1yのいずれかである必要があります。コードは3文字で指定してください |
| サーバーは起動するものの、ツールが表示されない | 設定変更後にクライアントを再読み込みしていません | クライアントを完全に終了して(閉じるだけではなく)、再度開いてください |
npxは実行されるものの、いつまでも応答しない | サーバーがMCPクライアントの接続を待っています。シェルから実行した場合は正常な動作です | MCPクライアントから起動してください |
サーバーの動作を確認するには、キーを設定して手動で実行してください。
ALLRATES_API_KEY=art_live_xxxxx npx -y @allratestoday/mcp-server
出力がなければ正常です(stdioはMCPプロトコル用に予約されています)。エラーはstderrに出力されます。
🛡️ エラーリファレンス
サーバーはAPIエラーを、アシスタントがユーザーに伝えやすい、明確で具体的なメッセージに変換します。
| HTTPステータス | 意味 | ツールのエラーメッセージ |
|---|---|---|
| 200 | 成功 | (レートが返されます) |
| 400 | 不正なリクエスト — 通常は不明な通貨コードが原因です | Bad request — possibly an unknown currency code |
| 401 | APIキーが無効です(キーが未設定でも発生しません。サーバーはキーなしで動作します) | Invalid AllRatesToday API key |
| 403 | プランの対象外です(例:無料キーで日付指定の公式レート表を取得する場合) | HTTP 403 — <upstream message> |
| 404(キーレス) | 該当する通貨ペアを対象とするキーレスの公式情報源がありません | No keyless official source covers X/Y. … |
| 429 | 利用上限を超過しました | AllRatesToday API quota exceeded |
| 5xx | allratestoday.com側のサーバーで問題が発生しました | HTTP 5xx — <upstream message> |
❓ よくある質問
無料プランは通常の利用に本当に十分ですか? 試用や軽い開発用途には十分です。月ごとのリセットはありません。継続的な利用や本番環境での利用には有料プランが必要です。キーなしモードは無料で、利用上限もありません。
会話やクエリのデータは保存されますか? いいえ。AllRatesToday API に送信されるのは API キーとリクエストパラメーター(source、target、period、time)のみです。LLM の会話コンテキストが送信されることはありません。
API キーはどのように扱われますか?
AllRatesToday API へのリクエスト時に、Authorization ヘッダー内の Bearer トークンとしてのみ送信されます。ログに記録されたり、他の場所に送信されたりすることはありません。
最初の呼び出しに時間がかかるのはなぜですか?
npx のコールドスタート(初回実行時にパッケージをダウンロード)に加え、最初のキャッシュミスが発生するためです。2 回目以降の呼び出しは通常 <200ms です。
npm/Node なしで実行できますか? 現時点ではできません。Node ≥18 が必要です。スタンドアロンバイナリが必要な場合は、issue を作成してください。
セルフホスト可能なオプションはありますか?
ALLRATES_BASE_URL を独自の AllRatesToday インスタンスに設定してください。セルフホストのライセンスについては [email protected] にお問い合わせください。
ChatGPT で使えますか?
はい。ホスト型エンドポイントを利用できます。ChatGPT のコネクター(カスタム MCP/リモートサーバー)として https://allratestoday.com/api/mcp を追加してください。この npm パッケージは、コマンドを起動するクライアント(Claude Code、Cursor、Claude Desktop、Windsurf)向けのローカル stdio サーバーです。
👩💻 開発
git clone https://github.com/AllRates-Today/mcp-server.git
cd mcp-server
npm install
npm run build
ALLRATES_API_KEY=art_live_xxxxx node dist/index.js
サーバーは stdio で動作し、MCP クライアントの接続を待ちます。終了するには Ctrl+C を押してください。npm run dev はファイルを監視して再ビルドします。ローカルの AllRatesToday インスタンスに対してテストするには、次のようにします。
ALLRATES_BASE_URL=http://localhost:8080/api ALLRATES_API_KEY=test_key node dist/index.js
プロジェクト構成
src/
├── index.ts # MCP server, tool registration, request handlers
├── client.ts # HTTP client for AllRatesToday API + error mapping
└── home-banks.ts # currency → issuing central bank, for the keyless get_exchange_rate fallback
dist/ # Compiled JS (gitignored)
server.json # MCP registry manifest
コントリビューション — github.com/AllRates-Today/mcp-server で issue と PR を歓迎します。PR を作成する前に、npm run build が成功すること、実際の API キーでテストすること、ツールの動作を変更した場合は src/index.ts のツールの説明と、この README のツールリファレンスを更新することを確認してください。
📝 変更履歴
最近の変更です。全履歴は GitHub Releases をご覧ください。
- 0.7.9 — README:変更履歴を 0.7.x 系に絞り込み
- 0.7.8 — README:MCP Inspector のテストガイド、全ツールのプロンプト例、ホスト型
?api_key=のセキュリティに関する注意、ChatGPT の FAQ と 401 の行を修正、履歴の利用条件を有料プランに統一 - 0.7.6 — キーなしの
get_rates_authenticatedでtimeを指定した場合、有料プランが必要であることを明記。README:無料プランで履歴を利用できるとの記載を削除し、sourceの例をmid-marketに変更 - 0.7.4 — キーなしの
get_exchange_rateは、ECB の表から、換算先または換算元の通貨を発行する中央銀行(USD/GBP、GBP/JPY、USD/INR の場合もキーなしで取得可能)にフォールバックするように変更。ホスト型エンドポイントと同じ動作です。レスポンスにbankを追加。日付指定の表に関するエラーで、有料プランが必要であることを明記。README:実際のレスポンス形式、ツール数、生涯無料プランに関する情報を更新 - 0.7.0 —
get_reference_rate(Daily Reference Rate、ロンドン時間 16:00、キーなしで最新の表を取得)とrequest_trial_key(セッション用に採用された、100 回呼び出し可能な自己発行のトライアルキー)を追加
🔗 リンク
- API ドキュメント · インタラクティブリファレンス
- 登録(無料) · 料金プラン
- MCP プロトコルのドキュメント
- GitHub · 不具合の報告
- サポート:[email protected]
- ダッシュボード
- ステータス
- Postman コレクション
📜 ライセンス
MIT — LICENSE をご覧ください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。