关于 bahi-mcp
bahi-mcp 是供分析印度共同基金、NSE/BSE 市场数据及个人财务计算的 MCP 服务。它结合公开数据查询、基金分析和财务计算器;结果仅供参考,不构成投资或税务建议。
主要功能
- 01AMFI 共同基金数据与 NAV 历史
- 02SIP、滚动收益及基金对比分析
- 03NSE/BSE 股票与指数报价和历史数据
- 04XIRR、CAGR、EMI、存款及投资计算器
- 05退休、提款和税费估算
适用场景
- 01按收益、波动率和最大回撤比较基金
- 02根据 NAV 历史估算 SIP 价值与 XIRR
- 03查询印度股票或指数数据
- 04估算退休需求、贷款还款或基金税费
MCP 相关
它向 MCP 客户端提供共同基金数据与分析、NSE/BSE 市场数据及财务计算工具。股票和指数工具使用 Yahoo Finance;共同基金数据通过 `mftool` 获取自 AMFI。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
22收录的工具列表 · 更新于 2 天前
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| limit | integer | 否 | |
| query | string | 是 |
详细介绍
bahi-mcp
MCP 服务,为 AI 助手(Claude、Cursor、VS Code 等)提供访问印度共同基金数据、NSE/BSE 市场数据和金融计算器的能力。
Bahi(बही)是印度传统的账簿。此服务会确保数据准确,让你的助手不必猜测。
免责声明:bahi-mcp 提供来自公开数据源(通过
mftool库获取的 AMFI 数据,以及股票数据的 Yahoo Finance)和你提供的假设条件的信息与计算结果。它不构成投资或税务建议,作者也不是 SEBI 注册顾问。数据可能有所延迟或不准确,税务规则也会变化。做出决定前请务必核实。
你可以询问
- “比较这三只灵活市值基金的 3 年回报率、波动率和最大回撤。”
- “这只基金的滚动 3 年回报率超过 12% 的频率是多少?”
- “如果我从 2020 年 1 月起每月向方案 119551 投资 ₹10,000,如今价值多少?我的 XIRR 是多少?”
- “Nifty 当前点位是多少?RELIANCE 过去一年表现如何?”
- “如果我在持有这只股票型基金 14 个月后卖出,获利 ₹2 lakh,需要缴多少税?”
- “如果我希望 55 岁退休,按今天每月 ₹60,000 的支出计算,需要多少退休金?”
工具
共同基金数据(AMFI)
| 工具 | 功能 |
|---|---|
search_schemes | 按名称搜索方案,返回 AMFI 方案代码 |
get_scheme_quote | 获取指定方案代码对应的最新 NAV 和报价 |
get_scheme_details | 获取基金公司、类型、类别和成立日期 |
get_nav_history | 获取 NAV 历史记录,可选日期范围(限制数据量以缩小响应) |
get_portfolio_value | 计算一组持仓的当前价值(方案代码 + 份额) |
clear_cache | 清除缓存的 AMFI 数据,以便下次调用时获取最新 NAV |
共同基金分析
| 工具 | 功能 |
|---|---|
calculate_sip_returns | 根据基金的真实 NAV 历史数据模拟每月 SIP:投入金额、份额、价值、绝对回报率和 XIRR |
compare_funds | 并排比较 1/3/5 年回报率、波动率、最大回撤和 Sharpe 比率,支持 1 至 5 只基金 |
get_rolling_returns | 滚动回报率分布:最小值、最大值、平均值、中位数,以及回报率为正或超过指定阈值的频率 |
股票和市场数据(NSE/BSE,通过 Yahoo Finance;非官方,仅尽力提供)
| 工具 | 功能 |
|---|---|
get_stock_quote | 获取 NSE/BSE 股票的最新价格、当日区间和 52 周区间 |
get_index_quote | 获取 Nifty 50、Sensex、Bank Nifty、Nifty IT、India VIX 的报价 |
get_stock_history | 获取股票或指数的 OHLCV 历史数据 |
计算器
| 工具 | 功能 |
|---|---|
calculate_xirr | 计算任意日期现金流的 XIRR |
calculate_cagr | 根据日期范围内的两个数值计算 CAGR |
calculate_emi | 计算贷款 EMI、总还款额和总利息 |
calculate_fd / calculate_rd | 计算定期存款和循环存款的到期金额 |
calculate_lumpsum_value | 计算一次性投资的未来价值 |
project_sip | 根据假设回报率预测 SIP,可选逐年提高投资额 |
calculate_swp | 计算一笔资金能否支撑每月提款 |
plan_retirement | 计算所需退休金以及积累这笔资金所需的每月 SIP 金额 |
estimate_mf_tax | 估算基金赎回的资本利得税;如需准确判断 12 个月的持有期分类,请使用买入和卖出日期 |
日期格式可以是 DD-MM-YYYY 或 YYYY-MM-DD。
安装
需要 Python 3.10+。
pip install bahi-mcp # mutual funds + calculators
pip install "bahi-mcp[stocks]" # adds NSE/BSE stock and index data
或者使用 uv 运行,无需安装:
uvx bahi-mcp
uvx --with yfinance bahi-mcp # with stock data
配置 MCP 客户端
Claude Desktop
在 claude_desktop_config.json 中添加:
{
"mcpServers": {
"bahi-mcp": {
"command": "uvx",
"args": ["--with", "yfinance", "bahi-mcp"]
}
}
}
如果不需要股票数据,可移除 "--with", "yfinance"。重启 Claude Desktop。
Cursor 和其他客户端
{
"mcpServers": {
"bahi-mcp": {
"command": "uvx",
"args": ["--with", "yfinance", "bahi-mcp"]
}
}
}
对于 Cursor,请将其保存到 ~/.cursor/mcp.json。如果不需要股票数据,可移除 "--with", "yfinance"。
关于数据和准确性的说明
- 共同基金数据来自 AMFI,通过
mftool(3.4 或更高版本)获取。NAV 通常会在收市后发布,约在 IST 晚上 9 点前后。mftool 会将 NAV 缓存 24 小时,因此晚间更新后请使用clear_cache查看最新数据。 - 股票数据来自 Yahoo Finance,通过
yfinance获取。该数据为非官方数据,可能存在延迟、受到速率限制或在未通知的情况下发生变化。请勿将其用于交易决策。 - 税费估算遵循配置的 FY 2026-27 假设:股票基金 STCG 为 20%,LTCG 超出每年剩余 ₹1.25 lakh 免税额的部分按 12.5% 计税;如需按准确的日历 12 个月分类,请提供买入和卖出日期;如需按近似的 365 天期限计算,请提供持有天数。该免税额由一个财年内符合条件的收益共享。债务基金仅对 2023 年 4 月 1 日或之后买入的份额按税率档次建模。模型未纳入附加税、亏损抵扣和较早的指数化规则;请核实现行法律并咨询税务专业人士。
- 预测(
project_sip、calculate_swp、plan_retirement)假设收益率恒定。现实市场并非如此。
开发
git clone https://github.com/NayakwadiS/bahi-mcp
cd bahi-mcp
python -m venv .venv
source .venv/bin/activate # Windows: .venv\Scripts\activate
pip install -e ".[dev,stocks]"
pytest
python -m bahi_mcp # runs the server over stdio
src/bahi_mcp/ 中的目录结构:
analytics.py、fund_analytics.py、calculators.py:纯 Python,无网络访问,可完全离线测试data.py:通过mftool访问 AMFImarket.py:通过yfinance访问股票和指数数据server.py:MCP 工具定义
路线图
- 投资组合重叠情况和基金间相关性
- 搜索事实说明书和 SEBI/RBI 通函
- 提供带缓存的托管版本
贡献
欢迎提交问题和拉取请求。
许可证
MIT。请参阅 LICENSE。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。