io.github.NayakwadiS/bahi-mcp
Indian mutual fund data and analytics, NSE/BSE market data, and financial calculators.
What can you do with io.github.NayakwadiS/bahi-mcp?
- "Compare these three flexi-cap funds on 3-year return, volatility and max drawdown."
- "How often has this fund beaten 12% on rolling 3-year returns?"
- "If I had invested ₹10,000 a month in scheme 119551 since January 2020, what would it be worth today, and what is my XIRR?"
- "What's the Nifty at, and how has RELIANCE done over the last year?"
- "How much tax would I pay if I sell this equity fund after 14 months with a ₹2 lakh gain?"
- "How much corpus do I need to retire at 55 if I spend ₹60,000 a month today?"
Install
Add this to your client's MCP configuration (Claude Desktop: claude_desktop_config.json; Cursor: .cursor/mcp.json; VS Code and others use the same "mcpServers" shape).
bahi-mcpclaude mcp add bahi-mcp -- uvx bahi-mcp==0.3.1
{
"mcpServers": {
"bahi-mcp": {
"command": "uvx",
"args": [
"bahi-mcp==0.3.1"
]
}
}
}
Documentation
From the project's README on GitHub, refreshed weekly. Links open on GitHub.
Contents
bahi-mcp
MCP server that gives AI assistants (Claude, Cursor, VS Code and others) access to Indian mutual fund data, NSE/BSE market data and financial calculators.
Bahi (बही) is the traditional Indian ledger. This server keeps the numbers straight so your assistant doesn't guess them.
Disclaimer: bahi-mcp provides information and calculations from public data sources (AMFI via the
mftoollibrary, and Yahoo Finance for stocks) and from assumptions you supply. It is not investment or tax advice and the author is not a SEBI-registered adviser. Data may be delayed or inaccurate, and tax rules change. Verify before making decisions.
What you can ask
- "Compare these three flexi-cap funds on 3-year return, volatility and max drawdown."
- "How often has this fund beaten 12% on rolling 3-year returns?"
- "If I had invested ₹10,000 a month in scheme 119551 since January 2020, what would it be worth today, and what is my XIRR?"
- "What's the Nifty at, and how has RELIANCE done over the last year?"
- "How much tax would I pay if I sell this equity fund after 14 months with a ₹2 lakh gain?"
- "How much corpus do I need to retire at 55 if I spend ₹60,000 a month today?"
Tools
Mutual fund data (AMFI)
| Tool | What it does |
|---|---|
search_schemes | Search schemes by name, returns AMFI scheme codes |
get_scheme_quote | Latest NAV and quote for a scheme code |
get_scheme_details | Fund house, type, category, start date |
get_nav_history | NAV history with optional date range (capped to keep responses small) |
get_portfolio_value | Current value of a list of holdings (scheme code + units) |
clear_cache | Drop cached AMFI data so the next call fetches fresh NAVs |
Mutual fund analytics
| Tool | What it does |
|---|---|
calculate_sip_returns | Monthly SIP simulation on a fund's real NAV history: invested, units, value, absolute return, XIRR |
compare_funds | Side-by-side 1/3/5-year returns, volatility, max drawdown and Sharpe ratio for 1 to 5 funds |
get_rolling_returns | Distribution of rolling returns: min, max, mean, median, how often positive or above a threshold |
Stocks and market data (NSE/BSE, via Yahoo Finance; unofficial and best-effort)
| Tool | What it does |
|---|---|
get_stock_quote | Latest price, day and 52-week range for an NSE/BSE stock |
get_index_quote | Nifty 50, Sensex, Bank Nifty, Nifty IT, India VIX |
get_stock_history | OHLCV history for a stock or index |
Calculators
| Tool | What it does |
|---|---|
calculate_xirr | XIRR for any dated cash flows |
calculate_cagr | CAGR between two values over a date range |
calculate_emi | Loan EMI, total payment, total interest |
calculate_fd / calculate_rd | Fixed and recurring deposit maturity |
calculate_lumpsum_value | Future value of a one-time investment |
project_sip | SIP projection at an assumed return, with optional yearly step-up |
calculate_swp | Does a corpus last under a monthly withdrawal? |
plan_retirement | Corpus needed and the monthly SIP to build it |
estimate_mf_tax | Capital gains tax estimate on a fund redemption; use purchase/sale dates for exact 12-month classification |
Dates can be DD-MM-YYYY or YYYY-MM-DD.
Install
Requires Python 3.10+.
pip install bahi-mcp # mutual funds + calculators
pip install "bahi-mcp[stocks]" # adds NSE/BSE stock and index data
Or run without installing, using uv:
uvx bahi-mcp
uvx --with yfinance bahi-mcp # with stock data
Configure your MCP client
Claude Desktop
Add to claude_desktop_config.json:
{
"mcpServers": {
"bahi-mcp": {
"command": "uvx",
"args": ["--with", "yfinance", "bahi-mcp"]
}
}
}
Drop "--with", "yfinance" if you don't need stock data. Restart Claude Desktop.
Cursor and other clients
{
"mcpServers": {
"bahi-mcp": {
"command": "uvx",
"args": ["--with", "yfinance", "bahi-mcp"]
}
}
}
For Cursor, save this in ~/.cursor/mcp.json. Remove "--with", "yfinance" if you don't need stock data.
Notes on data and accuracy
- Mutual fund data comes from AMFI through
mftool(3.4 or newer). NAVs are published after market close, usually by about 9 PM IST. mftool caches NAVs for 24 hours, so useclear_cacheafter the evening update to see the latest. - Stock data comes from Yahoo Finance through
yfinance. It is unofficial, can be delayed, rate-limited or change without notice. Don't use it for trading decisions. - Tax estimates follow the configured FY 2026-27 assumptions for equity funds (STCG 20%, LTCG 12.5% above the remaining ₹1.25 lakh annual exemption); provide purchase and sale dates for exact calendar 12-month classification, or holding days for an approximate 365-day cutoff. The exemption is shared across eligible gains in a financial year. Debt funds are modelled at slab rate only for units bought on/after 1 April 2023. Surcharge, loss set-off and older indexation rules are not modelled; verify current law and consult a tax professional.
- Projections (
project_sip,calculate_swp,plan_retirement) assume constant returns. Real markets don't behave that way.
Development
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
Layout in src/bahi_mcp/:
analytics.py,fund_analytics.py,calculators.py: pure Python, no network, fully tested offlinedata.py: AMFI access throughmftoolmarket.py: stock and index access throughyfinanceserver.py: the MCP tool definitions
Roadmap
- Portfolio overlap and fund-to-fund correlation
- Document search over factsheets and SEBI/RBI circulars
- Hosted version with caching
Contributing
Issues and pull requests are welcome.
License
MIT. See LICENSE.
Frequently asked questions
What is io.github.NayakwadiS/bahi-mcp?
Indian mutual fund data and analytics, NSE/BSE market data, and financial calculators.
How do I install io.github.NayakwadiS/bahi-mcp?
It runs on your machine. In Claude Code: claude mcp add bahi-mcp -- uvx bahi-mcp==0.3.1. For other clients, paste the JSON configuration from this page into their MCP settings.
Does io.github.NayakwadiS/bahi-mcp need an API key?
Its registry entry lists no required key or secret. Some features may still need an account with the service it connects to.
Is io.github.NayakwadiS/bahi-mcp open source?
Yes. Its code is on GitHub under the MIT license.
Who maintains io.github.NayakwadiS/bahi-mcp?
It is published by NayakwadiS. AI.tn lists it but does not maintain or endorse it.
From the official MCP Registry. Listing is not an endorsement: review a server's code and permissions before giving it access to your data.