🚀 墨西哥银行MCP服务器
这是一个模型上下文协议(MCP)服务器,用于访问墨西哥银行(Banxico)的SIE API,以检索美元/墨西哥比索的汇率数据和其他经济指标。

✨ 主要特性
- 实时汇率:从墨西哥银行获取最新的美元/墨西哥比索汇率。
- 历史数据:可自定义范围,检索历史汇率数据。
- 系列元数据:访问经济数据系列的详细信息。
- 日期范围查询:获取特定日期范围内的汇率数据。
- MCP兼容:可与Claude Desktop、Gemini CLI和其他MCP客户端配合使用。
📦 安装指南
前提条件
- 系统中安装有 Python 3.10+。
- 安装 uvx(推荐)或 uv 包管理器。
- 获取 墨西哥银行API令牌:可从 墨西哥银行SIE API 获取。
安装方法
选项1:直接从GitHub安装(自动更新)⭐ 推荐
此方法在重启MCP客户端时会自动获取最新更新:
MCP客户端配置:
"banxico": {
"command": "uvx",
"args": [
"--from",
"git+https://github.com/cfocoder/banxico_mcp",
"banxico-mcp-server"
],
"env": {
"BANXICO_API_TOKEN": "your_token_here"
}
}
无需手动安装! uvx将自动下载并运行最新版本。
选项2:下载单个文件(手动更新)
如果您希望将文件下载到本地:
- 安装uvx(如果尚未安装):
pip install uv
- 下载服务器文件:
curl -O https://raw.githubusercontent.com/cfocoder/banxico_mcp/main/banxico_mcp_server.py
- MCP客户端配置:
"banxico": {
"command": "uvx",
"args": [
"--python", "3.12",
"--from", "fastmcp",
"--with", "httpx",
"--",
"python",
"/absolute/path/to/banxico_mcp_server.py"
],
"env": {
"BANXICO_API_TOKEN": "your_token_here"
}
}
获取更新: 当有新功能添加时,重新下载文件。
选项3:传统安装
- 克隆仓库:
git clone https://github.com/cfocoder/banxico_mcp.git
cd banxico_mcp
- 安装依赖项:
pip install fastmcp httpx
- 运行服务器:
BANXICO_API_TOKEN=your_token_here python banxico_mcp_server.py
🔧 配置说明
获取墨西哥银行API令牌
- 访问 墨西哥银行令牌注册。
- 填写表单以请求API令牌。
- 您将通过电子邮件收到令牌。
配置MCP客户端
Claude Desktop
添加到 ~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": {
"banxico": {
"command": "uvx",
"args": [
"--python", "3.12",
"--from", "fastmcp",
"--with", "httpx",
"--",
"python",
"/absolute/path/to/banxico_mcp_server.py"
],
"env": {
"BANXICO_API_TOKEN": "your_banxico_token_here"
}
}
}
}
Gemini CLI
添加到 ~/.gemini/settings.json:
{
"mcpServers": {
"banxico": {
"command": "uvx",
"args": [
"--python", "3.12",
"--from", "fastmcp",
"--with", "httpx",
"--",
"python",
"/absolute/path/to/banxico_mcp_server.py"
],
"env": {
"BANXICO_API_TOKEN": "your_banxico_token_here"
}
}
}
}
💻 使用示例
配置好MCP客户端后,您可以进行如下提问:
汇率相关
- "当前美元兑墨西哥比索的汇率是多少?"
- "显示过去10天的美元/墨西哥比索汇率。"
- "获取2024年1月1日至2024年1月31日的汇率数据。"
- "美元/墨西哥比索系列的元数据是什么?"
通胀数据相关
- "墨西哥当前的月度通胀率是多少?"
- "显示过去一年的年度通胀数据。"
- "获取过去6个月的累计通胀数据。"
利率相关
- "当前28天期的墨西哥短期国债(CETES)利率是多少?"
- "显示过去一个月的CETES利率。"
金融指标相关
- "当前的投资单位(UDIS)价值是多少?"
- "显示墨西哥银行的储备资产。"
- "获取墨西哥银行的最新金融指标。"
劳动力市场相关
- "墨西哥当前的失业率是多少?"
- "显示过去一年的失业趋势。"
- "过去2年失业率有何变化?"
📚 详细文档
可用工具
| 工具 |
描述 |
参数 |
get_latest_usd_mxn_rate() |
获取最新的美元/墨西哥比索汇率 |
无 |
get_usd_mxn_historical_data(limit) |
获取历史汇率数据 |
limit:最大数据点数(默认:30) |
get_series_metadata(series_id) |
获取数据系列的元数据 |
series_id:系列ID(默认:SF63528) |
get_date_range_data(start_date, end_date, series_id) |
获取特定日期范围内的数据 |
start_date, end_date:YYYY-MM-DD格式 |
get_inflation_data(inflation_type, limit) |
获取通胀数据 |
inflation_type:'monthly'(月度)、'accumulated'(累计)、'annual'(年度)(默认:'monthly')
limit:最大数据点数(默认:12) |
get_udis_data(limit) |
获取投资单位(UDIS)价值 |
limit:最大数据点数(默认:30) |
get_cetes_28_data(limit) |
获取28天期墨西哥短期国债(CETES)利率 |
limit:最大数据点数(默认:30) |
get_banxico_reserves_data(limit) |
获取墨西哥银行储备资产数据 |
limit:最大数据点数(默认:30) |
get_unemployment_data(limit) |
获取失业率数据 |
limit:最大数据点数(默认:24) |
API参考
服务器使用 墨西哥银行SIE API,以下是相关端点:
汇率相关
- 最新数据:
/series/SF63528/datos/oportuno
- 历史数据:
/series/SF63528/datos
- 系列元数据:
/series/SF63528
- 日期范围:
/series/SF63528/datos/{start_date}/{end_date}
通胀数据相关
- 月度通胀:
/series/SP30577/datos
- 累计通胀:
/series/SP30579/datos
- 年度通胀:
/series/SP30578/datos
金融指标相关
- 投资单位(UDIS):
/series/SP68257/datos
- 28天期墨西哥短期国债(CETES):
/series/SF282/datos
- 墨西哥银行储备:
/series/SF308843/datos
劳动力市场相关
🛠️ 开发说明
项目结构
banxico-mcp-server/
├── banxico_mcp_server.py # 主服务器文件
├── README.md # 本文件
├── LICENSE # MIT许可证
├── CONTRIBUTING.md # 开发指南
└── docs/ # 文档和示例
├── EXTENDING.md # 添加新端点的指南
└── examples/ # 配置示例
├── claude-desktop.md
├── continue.md
├── env-template.md
├── gemini-cli.md
└── vscode-cline.md
测试
若要在不使用MCP客户端的情况下测试服务器:
export BANXICO_API_TOKEN=your_token_here
timeout 5s python banxico_mcp_server.py && echo "服务器启动成功"
添加新工具
有关添加新的墨西哥银行API端点的详细说明,请参阅 EXTENDING.md。
🐞 故障排除
常见问题
- “未设置BANXICO_API_TOKEN环境变量”
- 确保您的API令牌已在MCP客户端设置中正确配置。
- “无法检索数据”
- 检查您的互联网连接。
- 验证您的API令牌是否有效。
- 确保墨西哥银行API可访问。
- 服务器无法启动
- 验证是否安装了Python 3.10+。
- 检查uvx或所需依赖项是否可用。
调试模式
使用调试日志运行:
BANXICO_API_TOKEN=your_token PYTHONPATH=. python -c "
import logging
logging.basicConfig(level=logging.DEBUG)
from banxico_mcp_server import mcp
mcp.run()
"
🤝 贡献指南
- Fork仓库。
- 创建功能分支(
git checkout -b feature/amazing-feature)。
- 提交更改(
git commit -m '添加出色的功能')。
- 将更改推送到分支(
git push origin feature/amazing-feature)。
- 打开拉取请求。
📄 许可证
本项目采用MIT许可证 - 有关详细信息,请参阅 LICENSE 文件。
🙏 致谢
🔗 相关项目