Mutual-Funds-Groww-MCP
This MCP server integrates with Groww's live API to enable AI assistants to search, screen, and analyze mutual funds in real time. Key capabilities include:
Search & Screen Mutual Funds (
search_mutual_funds): Filter by Groww verdict (TOP_BUY, BUY, HOLD, SELL), asset category (Equity, Debt, Hybrid, Commodities), sub-category (38+ options e.g. Flexi Cap, Large Cap, Liquid, Gold), risk level (Low to Very High), fund house (50+ AMCs), and sort by popularity, verdict, 1Y/3Y/5Y returns. Additional options: keyword text search, index funds only toggle, and pagination.Deep Fund Analysis (
fetch_mutual_fund_details): Retrieve comprehensive details for a specific scheme using itssearch_id, including top 10 holdings with sector allocation, fund manager profiles (name, education, experience), risk metrics (Sharpe, Sortino, Alpha, Beta, Std Dev), CAGR (1Y/3Y/5Y/since launch) vs. benchmark and category, SIP returns (1Y/2Y/3Y), and key stats like NAV, AUM, expense ratio, and exit load.Natural Language Queries: Claude interprets plain-language requests and automatically applies appropriate filters.
Token-Efficient Responses: API data is pruned of UI clutter, delivering clean, LLM-optimized output while retaining all critical analytical information.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Mutual-Funds-Groww-MCPFind top-rated equity funds sorted by 3-year returns"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
An intelligent, professional-grade Model Context Protocol (MCP) server that connects Claude (and other MCP-enabled AI assistants) directly to Groww's live API.
When you ask your AI assistant for mutual fund recommendations or analysis (e.g., "Show me the best Flexi Cap funds with high returns and moderate risk"), the AI intelligently selects and applies multi-dimensional filters, queries Groww's backend in real time, and performs deep portfolio analysis to pick the best mutual funds for your needs.
π€ How the AI Uses This MCP Server
Rather than manually browsing financial portals, your AI assistant autonomously handles fund discovery and analysis for you:
Intelligent Query Interpretation: You talk to Claude in plain natural language (e.g., "Find top-rated equity mutual funds managed by Quant or PPFAS sorted by 3-year returns").
Autonomous Filter Application: Claude automatically translates your request into exact filter criteria defined in filters.py and invokes the
search_mutual_fundstool.Live Groww API Execution: The MCP server connects directly to Groww's live production endpoints (
groww.in/v1/api), fetching real-time data.Deep-Dive Fund Diagnostics: To pick and analyze the best funds, Claude invokes
fetch_mutual_fund_detailsto examine the fund's top 10 holding companies, fund managers' experience & education, Sharpe/Sortino/Alpha/Beta risk metrics, CAGR vs category average, NAV, AUM, Expense Ratio, and Exit Load.
Related MCP server: mftool-mcp
π½οΈ Demo Video
https://github.com/user-attachments/assets/9c28dd77-0fd1-4947-a0bf-f7c50a4e5248
πΈ Screenshots
Real-Time Search & Deep-Dive Analysis
Claude executing real-time screener queries and analyzing detailed metrics, portfolio holdings, risk parameters, and CAGR.
π₯ Key Capabilities
Direct Live Groww API Data: Always returns real-time, production-grade financial data directly from Growwβno stale datasets or mock data.
Top 10 Portfolio Company Holdings: Extracts the exact top companies invested in by the fund, along with sector allocation and corpus percentage (
corpus_percent).Fund Manager Profiling: Fetches fund managers' full names, educational background, and total career experience.
Advanced Volatility & Risk Metrics: Evaluates Sharpe Ratio, Sortino Ratio, Alpha, Beta, and Standard Deviation alongside scheme risk levels (
LowtoVery High).CAGR & Benchmark Comparison: Compares 1Y, 3Y, 5Y, and since-launch CAGR against the benchmark index and category average, plus 1Y/2Y/3Y SIP return calculations.
Clean LLM Optimization: Raw API JSON responses are automatically pruned to remove UI clutter, saving token context while preserving essential analytical data.
βοΈ Filter Capabilities Available to AI
The AI dynamically applies these filter enums from filters.py according to your prompt requirements:
Groww Verdict (
GrowwVerdict):TOP_BUY,BUY,HOLD,SELLAsset Categories (
AssetCategory):Equity,Debt,Hybrid,CommoditiesSub-Categories (
SubCategory):Equity:
Flexi Cap,Large Cap,Mid Cap,Small Cap,Large & MidCap,Multi Cap,ELSS,Sectoral,Thematic,Value Oriented,InternationalDebt:
Liquid,Corporate Bond,Banking and PSU,Credit Risk,Dynamic Bond,Gilt,Money Market,Overnight,Short Duration,Ultra Short Duration, etc.Hybrid:
Aggressive Hybrid,Arbitrage,Balanced Hybrid,Conservative Hybrid,Dynamic Asset Allocation,Equity Savings,Multi Asset AllocationCommodities:
Gold,Silver
Risk Profile (
RiskLevel):Low,Moderately Low,Moderate,Moderately High,High,Very HighSorting Options (
SortOption): Popularity (3), Prime Verdict (10), 1Y Returns (4), 3Y Returns (0), 5Y Returns (5)AMC / Fund Houses (
FundHouse): 50+ fund houses supported (e.g.,Axis Mutual Fund,HDFC Mutual Fund,SBI Mutual Fund,Quant Mutual Fund,PPFAS Mutual Fund,Mirae Asset Mutual Fund, etc.)Index Only: Option to narrow results strictly to Index Funds.
π Installation & Authentication
1. Clone the Repository
git clone https://github.com/codeterrayt/Mutual-Funds-Groww-MCP.git
cd Mutual-Funds-Groww-MCP2. Configure Authentication in auth.py
Because live data is fetched directly from Groww's authenticated backend endpoints, you need to fill in your session credentials in auth.py.
Log into your account on groww.in.
Open Developer Tools in your browser (
F12orCtrl + Shift + I) and switch to the Network tab.Search for any fund or refresh the page.
Select any network request to
groww.in/v1/apiand check the Headers section:Copy the
authorizationheader value (e.g.,Bearer eyJ...).Copy the
cookieheader value.
Open auth.py and fill in your credentials:
# auth.py
AUTHORIZATION_TOKEN = "Bearer eyJ....."
COOKIE = "dso.....;"π Registering with Claude Desktop
Register this MCP server in Claude Desktop's process configuration file so Claude can execute these tools.
Claude Desktop Configuration Location
Windows:
%APPDATA%\Claude\claude_desktop_config.jsonmacOS:
~/Library/Application Support/Claude/claude_desktop_config.json
claude_desktop_config.json Snippet
Option 1: Using uv (Recommended)
uv will automatically manage dependencies using pyproject.toml and run the server.
{
"mcpServers": {
"groww-mcp": {
"command": "uv",
"args": [
"--directory",
"d:/Projects/GROWW MCP",
"run",
"main.py"
]
}
}
}Option 2: Using standard Python executable
If you prefer running using your python environment:
{
"mcpServers": {
"groww-mcp": {
"command": "d:/Projects/GROWW MCP/.venv/Scripts/python.exe",
"args": [
"d:/Projects/GROWW MCP/main.py"
]
}
}
}(Note: Replace d:/Projects/GROWW MCP with your local repository path, ensuring path slashes are written as /).
After editing the config, stop Claude From System Tray and restart Claude Desktop. You will see the tools active in Claude Desktop.
π οΈ MCP Tools Overview
1. search_mutual_funds
Searches and screens live mutual fund schemes from Groww based on criteria provided by the AI.
Parameters:
groww_verdict,categories,sub_categories,index_only,fund_houses,risk_levels,sort_by,search_query,page,size.
2. fetch_mutual_fund_details
Retrieves in-depth holdings, risk metrics, returns CAGR, and fund manager profiles using the fund's search_id.
Parameters:
search_id(e.g.,quant-small-cap-fund-direct-growth).
βοΈ Disclaimer
This project is an open-source tool for personal research and analysis. It is not affiliated, associated, authorized, endorsed by, or in any way officially connected with Groww (groww.in).
π License
This project is open-source software licensed under the MIT License.
Available Tools
2 toolsfetch_mutual_fund_detailsA
Fetch in-depth details of a specific mutual fund scheme using its search_id.
| Name | Required | Description | Default |
|---|---|---|---|
| search_id | Yes | Unique search identifier for the mutual fund scheme (e.g., 'axis-silver-fof-regular-growth'). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the transparency burden. It indicates a read-only fetch operation and the required search_id, but it does not disclose what 'in-depth details' includes, potential errors, or any behavior beyond the basic retrieval.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, focused sentence that front-loads the action ('Fetch in-depth details') and specifies the required input. Every word earns its place; no filler or redundant information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple one-parameter retrieval tool, the description is minimally adequate. It does not explain what 'in-depth details' means or how the output relates to the sibling search tool, but the schema covers the parameter and the operation is clear enough for basic use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema fully describes the single parameter with a clear description and example (e.g., 'axis-silver-fof-regular-growth'). The description's mention of 'search_id' adds no additional semantic value beyond what the schema already provides, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool fetches in-depth details for a specific mutual fund scheme using a search_id. This distinguishes it from the sibling search_mutual_funds, which presumably returns a list of funds, by focusing on retrieving details for one identified fund.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied: one would first search mutual funds to obtain a search_id, then call this tool for details. However, the description does not explicitly mention when to prefer this over search_mutual_funds or provide any usage exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_mutual_fundsA
Search and filter mutual funds in real-time using Groww's live API endpoint.
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number for pagination. | |
| size | No | Number of schemes to fetch per page. | |
| sort_by | No | Sort funds by Popularity ('3'), Prime Verdict ('10'), 1Y ('4'), 3Y ('0'), or 5Y Returns ('5'). | 3 |
| categories | No | Broad asset category (Equity, Debt, Hybrid, Commodities). | |
| index_only | No | Toggle True to filter exclusively for Index Funds. | |
| fund_houses | No | Filter by one or more AMC Fund Houses. | |
| risk_levels | No | Filter by scheme risk levels (Low to Very High). | |
| search_query | No | Optional text query to match specific fund names. | |
| groww_verdict | No | Filter by Prime/Groww verdict ratings (TOP_BUY, BUY, HOLD, SELL). | |
| sub_categories | No | Specific sub-categories (Flexi Cap, Large Cap, Liquid, Gold, etc.). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the burden of behavioral disclosure. It adds 'real-time' and 'live API endpoint' as useful context, but it does not mention rate limits, pagination behavior, or explicitly state that it is a read-only operation. The non-mutating nature of 'search' is implied, but additional details would strengthen transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that front-loads the core purpose. It contains no fluff and earns its place by conveying both the resource and the live-data characteristic.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (10 parameters) and lack of an output schema, the description is somewhat minimal. It does not explain the return format or pagination behavior, though these are partially evident from the schema. For a search tool, the response is likely a list of funds, but this is not explicitly stated. Overall, the description is adequate but not fully comprehensive.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all 10 parameters with clear descriptions and defaults. The tool description adds no additional parameter-specific meaning, which is acceptable since the schema fully covers semantics. Baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Search and filter mutual funds in real-time using Groww's live API endpoint' clearly states the action (search and filter), the resource (mutual funds), and the specific context (real-time via Groww's live API). This distinguishes it from the sibling tool 'fetch_mutual_fund_details' by emphasizing search/filter over detail retrieval.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for finding and filtering mutual funds but does not explicitly state when to use this tool versus 'fetch_mutual_fund_details'. It lacks direct guidance on alternatives or exclusions, though the purpose is inferable.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
TDQS
The two tools have clearly distinct purposes: one for searching/filtering funds and the other for fetching details of a specific fund. There is no overlap or ambiguity in their intended use.
Both tool names follow the consistent verb_noun pattern in snake_case (search_mutual_funds, fetch_mutual_fund_details). The minor pluralization difference is not enough to break the overall consistent style.
With only two tools, the server feels quite thin for a mutual funds domain. While the two tools are essential, the low count suggests a limited scope that may not cover broader investor needs.
Search and details cover the core discovery and lookup workflow for mutual funds. However, there are minor gaps such as no explicit tool for historical performance or fund comparison, though these could potentially be accessed through search and details.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
MCP server for Gainium β manage trading bots, deals, and balances via AI assistants
MCP server for building and testing AI agents with multi-model experimentation and insights.
Hosted MCP server for live public-data APIs and Skills for AI agents.
MCP server exposing the Backtest360 engine API as tools for AI agents.
Related MCP Servers
- AlicenseAqualityDmaintenanceAn MCP server that enables users to manage equity holdings, execute trades, and track market data on Groww using natural language. It supports mutual fund investments and SIP management, including a mock mode for risk-free testing.2314MIT
- AlicenseAqualityCmaintenanceMCP Server for publicly available real-time Indian Mutual Funds data127MIT
- FlicenseNot gradedqualityCmaintenanceAn MCP server for the Groww trading platform. This enables LLM applications to interact with your Groww trading account.4
- FlicenseNot gradedqualityDmaintenanceMCP server for screening Indian stocks and mutual funds by wrapping screener.in and Morningstar India, enabling fundamental queries from Claude or Cursor.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/codeterrayt/Mutual-Funds-Groww-MCP'
If you have feedback or need assistance with the MCP directory API, please join our Discord server