{
  "markdown": "# Exchange Rate MCP\n\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](LICENSE)\n[![MCP](https://img.shields.io/badge/MCP-Server-blue)](https://modelcontextprotocol.io)\n[![Remote](https://img.shields.io/badge/Streamable%20HTTP-hosted%20free-success)](https://mcp.pianam.cn/exchange-mcp/mcp)\n\nLive **currency exchange rates and amount conversion** for 30+ currencies, accepting both ISO codes (USD) and Chinese names (美元), based on ECB daily reference rates.\n\n- **Try it in 30 seconds**: a free public MCP endpoint is already running — just paste the URL into your MCP client (no install, no API key).\n- **Or self-host**: a single Python file, stdlib HTTP + FastMCP, zero paid dependencies.\n\n## ⚡ Use the hosted endpoint (no setup)\n\n```\nhttps://mcp.pianam.cn/exchange-mcp/mcp\n```\n\nTransport: **Streamable HTTP** (MCP 2025-03-26 compatible). No authentication required.\n\n## 🔌 Client configuration\n\nAdd this to your MCP client's `mcpServers` configuration (Claude Desktop `claude_desktop_config.json`, Cursor `mcp.json`, Cline, Cherry Studio, etc.):\n\n```json\n{\n  \"mcpServers\": {\n    \"exchange-rate\": {\n      \"type\": \"http\",\n      \"url\": \"https://mcp.pianam.cn/exchange-mcp/mcp\"\n    }\n  }\n}\n```\n\n> Clients that do not accept `\"type\": \"http\"` (some Cherry Studio / older\n> Cline versions) accept the same entry with just `\"url\"`.\n\n## 🧰 Tools\n\n| Tool | Parameters | Returns |\n|---|---|---|\n| `query_exchange_rate(base=\"USD\", target=\"\", amount=0)` | `base` / `target`: ISO code or Chinese name — `\"USD\"` / `\"美元\"` / `\"美金\"` all work. Empty `target` returns common rates (CNY/EUR/JPY/GBP/HKD/KRW).<br>`amount`: optional, converts N units of base currency. | Rate date, base→target rate, reverse rate, and (when `amount` is given) the converted amount. Reference rates — not live trading prices. |\n\n## 📡 Data sources, caching & limits\n\n- Primary source: **[Frankfurter](https://frankfurter.dev/)** — European Central Bank (ECB) daily reference rates, free, no API key.\n- Automatic fallback: **[open.er-api.com](https://www.exchange-api.com/)** if the primary source fails.\n- 32 currencies with Chinese display names (人民币, 美元, 欧元, 日元, 港币, 韩元, 新台币 …) and Chinese aliases (美金/美刀, 港元, 台币, 澳币 …).\n- Rates cached for **2 hours** (ECB updates on working days); hosted endpoint rate-limited to **200 requests / minute / IP**.\n\n## 🐢 Self-hosting\n\n```bash\ngit clone https://github.com/boy-373/exchange-rate-mcp.git\ncd exchange-rate-mcp\npip install -r requirements.txt\npython exchange_mcp_server.py\n# the server listens on 127.0.0.1:8005 by default; override with:\n#   MCP_HOST=0.0.0.0 MCP_PORT=9000 python exchange_mcp_server.py\n#   MCP_ALLOWED_HOSTS=\"your-domain.com,127.0.0.1:*\"\n#   MCP_ALLOWED_ORIGINS=\"https://your-domain.com\"\n```\n\nThen point your MCP client at `http://127.0.0.1:8005/mcp`.\nNo API keys or accounts are ever required.\n\n\n\n## 🗂️ Files\n\n- `exchange_mcp_server.py` — the MCP server (FastMCP, Streamable HTTP transport).\n- `rate_limit.py` — lightweight per-IP sliding-window rate-limit middleware (200 req/min default).\n- `requirements.txt` — `mcp`, `uvicorn`, `starlette`.\n- `server.json` — official MCP Registry manifest (remote server entry, ready to publish with `mcp-publisher`).\n- `smithery.yaml` / `glama.json` — directory listing metadata.\n\n---\n\n## 🇨🇳 中文使用说明\n\n**一句话**：30+ 常用货币实时参考汇率与金额换算，中文货币名直接问（「100 美元换多少人民币」）。\n\n**在线直连地址（免费、无需 Key、开箱即用）**：`https://mcp.pianam.cn/exchange-mcp/mcp`\n\n在 MCP 客户端（Claude Desktop / Cursor / Cherry Studio / Cline 等）的配置里加入：\n\n```json\n{\n  \"mcpServers\": {\n    \"exchange-rate\": {\n      \"type\": \"http\",\n      \"url\": \"https://mcp.pianam.cn/exchange-mcp/mcp\"\n    }\n  }\n}\n```\n\n**工具**：\n\n- `query_exchange_rate(base, target, amount)`：查汇率并可换算金额。货币可用三字母代码或中文名（USD / 美元 / 美金均可）；`target` 留空返回人民币/欧元/日元/英镑/港币/韩元常用汇率；`amount` 给正数则同时返回换算结果。\n- 主数据源 Frankfurter（欧洲央行 ECB 每日参考汇率，免费无需 Key），故障自动切换 open.er-api.com。\n- 参考汇率每日更新，非实时交易牌价，实际换汇以银行柜台为准。\n\n**服务特性**：数据源全部为公开接口、无需注册/付费；服务端内存缓存、失败自动降级/切换备用通道；单 IP 限流 200 次/分钟。\n\n**本地部署**：\n\n```bash\ngit clone https://github.com/boy-373/exchange-rate-mcp.git\ncd exchange-rate-mcp\npip install -r requirements.txt\npython exchange_mcp_server.py\n# 默认监听 127.0.0.1:8005，可用环境变量 MCP_HOST / MCP_PORT / MCP_ALLOWED_HOSTS / MCP_ALLOWED_ORIGINS 覆盖\n```\n\n## 📄 License\n\n[MIT](LICENSE) © 2026 boy-373\n\n## Install via Smithery\n\nOne-click install for [Smithery](https://smithery.ai)-supported clients (Claude Desktop, Cursor, etc.):\n\n[![Smithery](https://smithery.ai/badge/1561852680/exchange-rate-mcp)](https://smithery.ai/servers/1561852680/exchange-rate-mcp)\n\nOr run:\n\n```bash\nnpx -y @smithery/cli install 1561852680/exchange-rate-mcp --client claude\n```\n\n---\n\n## 🔌 Use with Any AI Client — One-Click MCP Gateway\n\nWe host a free **MCP aggregation gateway**: your AI assistant (Cherry Studio, Claude Desktop, Cursor, Cline — any MCP client) discovers and uses MCP tools through a single URL:\n\n```\nhttps://mcp.pianam.cn/ai/mcp\n```\n\nAdd it once, then talk in plain language — the AI automatically **searches → inspects → calls** the right MCP for you.\n\n- 🔍 Search across **22,000+** indexed MCP servers (Chinese & English)\n- ⚡ **50+ live hosted MCPs** callable directly out of the box (weather, exchange rates, hot trends, IP geo, train tickets…)\n- 📦 GitHub-based MCPs: search finds them with links to install locally\n- ✅ Servers health-checked weekly — alive ones ranked first\n- 🆓 Free to use, no key required\n\n**📖 3-step setup guide / 中文接入教程**: https://mcp.pianam.cn/ai-gateway\n",
  "bytes": 5439,
  "sha": "7c6fa267593eb9af9d583325bd33fbd6a9f7d8f14e959ec977609430c0c76168",
  "repo_slug": "boy-373/exchange-rate-mcp",
  "fonte": "repo",
  "truncated": false,
  "api": "https://agentalog.com/api/listings/mcp_cn_pianam_mcp_exchange_rate_mcp_65ceef30/readme"
}