mcpField
F
fxrates

fxrates

本地服务
github.com/CloudCorpRecords金融数据01 周前更新

关于 fxrates

fxrates 无需 API 密钥,即可通过命令行和 MCP 访问 Frankfurter 外汇数据。它可获取币种及当前或历史汇率,并根据取得的汇率在本地计算货币转换。

主要功能

  1. 01列出支持的币种
  2. 02获取最新汇率
  3. 03获取指定日期或区间的汇率
  4. 04根据获取的汇率转换货币
  5. 05支持命令行和 stdio MCP 服务

适用场景

  1. 01查询所选币种的最新汇率
  2. 02查看过去某日或某时段的汇率
  3. 03按当前或历史汇率转换金额

MCP 相关

stdio MCP 服务提供支持币种、当前和历史汇率及货币转换工具。它连接 Frankfurter,也可使用覆盖设置的 API 基础 URL。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"cloudcorprecords-fxrates": {
"command": "npx",
"args": [
"-y",
"@reneturcios/fxrates"
]
}
}
}
启动命令npx -y @reneturcios/fxrates

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
npm@reneturcios/fxrates0.1.0
ocighcr.io/cloudcorprecords/fxrates:0.1.0

工具

6

收录的工具列表 · 更新于 1 周前

此工具无需参数。

详细介绍

fxrates

fxrates 从 Frankfurter API 读取外汇数据:支持哪些货币、最新汇率、某个过去日期或一段日期范围内的汇率,以及根据获取的汇率在本地计算的货币兑换结果。一个二进制文件同时提供命令行界面和 stdio MCP 服务。

无需 API 密钥。该服务不需要密钥,因此 fxrates 无需任何配置即可运行。可通过 FRANKFURTER_API_URL 覆盖 API 基础 URL;未设置时,调用会发送至 https://api.frankfurter.dev/v1。

安装

npx @reneturcios/fxrates currencies

也可以运行容器镜像:

docker run -i ghcr.io/cloudcorprecords/fxrates

容器默认启动 MCP 服务(见下文)。传入 CLI 参数即可将其用作 CLI。

CLI

fxrates currencies
fxrates latest --base USD --symbols EUR,GBP
fxrates convert 25 EUR USD
fxrates historical 2024-05-01 --base EUR --symbols USD
fxrates range 2024-05-01 2024-05-03 --base EUR
fxrates convert-on 2020-01-02 100 USD EUR
fxrates greet Ada

fxrates --version

汇率命令会输出上游 JSON 负载。兑换命令会输出一个 JSON 对象,其中包含 amount、from、to、rate、converted,以及 API 提供时的 date。退出代码:成功时为 0,调用失败(包括上游 API 错误)时为 1,用法错误时为 2。

兑换在本地计算:工具会获取所需的单个汇率并进行乘法计算。结果会四舍五入到小数点后第六位,最多保留六位小数;不收取费用、不计入价差,也不进行额外舍入。

MCP 服务

一个二进制文件提供两种接口。mcp 子命令会启动 stdio MCP 服务:

npx -y @reneturcios/fxrates mcp

MCP 客户端配置:

{
  "mcpServers": {
    "fxrates": {
      "command": "npx",
      "args": ["-y", "@reneturcios/fxrates", "mcp"]
    }
  }
}

若要让服务连接到其他兼容 Frankfurter 的主机,请在客户端为此服务配置的 env 中添加 FRANKFURTER_API_URL。

工具
工具输入返回内容
get_supported_currencies(无)支持的货币代码及其名称组成的映射。
get_latest_exchange_ratesbase、symbols(均可选)最新汇率负载。
convert_currency_latestamount、from、to(均为必填)按最新汇率计算的兑换结果:金额、货币对、汇率、兑换后的值和日期。
get_historical_exchange_ratesdate 或 start_date/end_date,以及可选的 base、symbols单个日期或一段日期范围内的汇率。
convert_currency_specific_datedate、amount、from、to(均为必填)按该日期的汇率计算的兑换结果。
greetname(可选)问候语字符串。供内部测试使用。

日期格式为 YYYY-MM-DD。symbols 是逗号分隔的列表,例如 USD,GBP。货币参数使用代码,例如 EUR 和 USD。

开发

npm install
npm run build   # tsc -> dist/
npm test        # node test runner over test/*.test.ts, no network (fake fetch fixtures)
npm run dev     # run the CLI from source via tsx

许可证

MIT — 参见 LICENSE。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。