mftool-mcp
🇮🇳 mftool-mcp
公開されているインドの投資信託データのためのMCPサーバー mftool を活用 · Claude、Cursor、およびMCP互換のLLMクライアントで動作します
これは何ですか?
mftool-mcp は、あらゆるLLMクライアントがインドの投資信託データにアクセスできるようにする Model Context Protocol (MCP) サーバーです。
AIアシスタントに次のような質問ができます:
「SBI Bluechip Direct Growthの現在のNAV(基準価額)は?」
「HDFC Midcap Opportunities Fundの3年間のリターンを表示して」
「Mirae Asset AMCのすべてのスキームをリストアップして」
「すべてのフレキシキャップファンドを見つけて、5年間のリターンを比較して」
Related MCP server: Daito
利用可能なツール
ツール | 説明 |
| AMFIスキームコードによる任意のスキームのライブNAV |
| 複数のスキームのライブNAVを一度に取得(同時実行) |
| スキームの全NAV履歴(利用可能なすべての日付) |
| 特定の日付範囲(DD-MM-YYYY)でフィルタリングされたNAV履歴 |
| 期間または日付範囲を指定したBSE/YFinanceコードによるNAV履歴 |
| すべてのAMFIスキームコードと名称 |
| 特定のAMC(資産運用会社)配下のすべてのスキーム |
| ファンドハウス、タイプ、カテゴリー、開始日(AMFIコード) |
| 詳細なスキーム情報 — AUM、リターン、格付け(BSE/YFinanceコード) |
| AMFI数値スキームコードの検証 |
| BSE/新形式スキームコードの検証 |
| キーワードによるスキーム検索(関連度順) |
| 特定のAMC内のスキーム検索 |
| タイプ/カテゴリー(株式、債券、ELSSなど)によるスキーム検索 |
| 四半期ごとの全AMCの平均AUM(国内および海外) |
| 全株式ファンドのパフォーマンス(1年/3年/5年リターン) |
| 全債券ファンドのパフォーマンス(1年/3年/5年リターン) |
| 全ハイブリッドファンドのパフォーマンス(1年/3年/5年リターン) |
| ソリューション指向ファンド(退職、子供向け)のパフォーマンス |
| インデックスファンドおよびファンド・オブ・ファンズのパフォーマンス |
| SIPリターンの計算 — 絶対リターン%および年換算IRR |
| NAVおよびスキームコードキャッシュのヒット/ミス統計の表示 |
| キャッシュされたすべてのデータをクリアして強制的に再取得 |
| mftoolキャッシュのグローバルな有効化/無効化 |
クイックスタート
uvx を使用する場合(推奨 — インストール不要)
uvx mftool-mcppip を使用する場合
pip install mftool-mcp
mftool-mcpClaude Desktopの設定
claude_desktop_config.json に以下を追加してください:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"mftool-mcp": {
"command": "uvx",
"args": ["mftool-mcp"]
}
}
}Claude Desktopを再起動します。接続されたツールの中に mftool-mcp が表示されます。
Cursor / その他のMCPクライアント
MCPクライアントの設定に以下を追加してください:
{
"mftool-mcp": {
"command": "uvx",
"args": ["mftool-mcp"]
}
}会話例
ファンドの検索:
ユーザー: 「SBIのミッドキャップ投資信託のスキームコードをすべて見つけて」 Claude:
search_schemes_by_amc(amc_name='sbi', query='midcap')を呼び出す Claude: 「SBIのミッドキャップスキームは以下の通りです:SBI Magnum Midcap Fund - Direct Growth (コード: 125497)...」
ライブNAV:
ユーザー: 「スキーム125497の現在のNAVは?」 Claude:
get_scheme_quote(scheme_code='125497')を呼び出す Claude: 「SBI Magnum Midcap Fund - Direct Growth: NAV ₹234.56 (2025年4月5日時点)」
パフォーマンス比較:
ユーザー: 「ラージキャップ株式ファンドの5年間のリターンを比較して」 Claude:
get_equity_scheme_performance()を呼び出す Claude: 「ラージキャップファンドの5年間のリターン比較は以下の通りです:...」
データソース
すべてのデータは mftool ライブラリを通じて取得されます。データの正確性は公開されている数値に依存します。このツールは情報提供のみを目的としており、財務上の助言を構成するものではありません。
開発
git clone https://github.com/NayakwadiS/mftool-mcp
cd mftool-mcp
pip install -e ".[dev]"
# Run the server locally
python -m mftool_mcp.server謝辞
mftool — 基盤となるデータライブラリ
関連イニシアチブ
NSE株価予測 NSE-Neuron
Available Tools
12 toolsget_available_schemesA
Get all mutual fund schemes available under a specific AMC (Asset Management Company).
Args: amc_name: Partial or full name of the AMC (case-insensitive). Examples: 'hdfc', 'sbi', 'axis', 'icici', 'mirae', 'parag', 'dsp'.
Returns: Dictionary mapping scheme codes (str) to scheme names (str) for the given AMC.
| Name | Required | Description | Default |
|---|---|---|---|
| amc_name | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so the description carries the burden. It details the input (partial/full AMC name, case-insensitive) and output format (dictionary mapping codes to names). However, it does not mention idempotency, error handling, or potential response size for broad inputs.
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 concise (two sentences) and well-structured: purpose, parameter explanation with examples, and return description. No superfluous words.
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 simplicity (single parameter, no output schema, no nested objects), the description provides sufficient information for correct usage. It could optionally mention behavior for unknown AMC names, but this is not a critical gap.
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 coverage is 0% (only name and type), but the description adds essential semantics: it explains the parameter accepts partial/full AMC names, is case-insensitive, and provides concrete examples. This fully compensates for the schema gap.
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 it retrieves mutual fund schemes for a specific AMC, using a specific verb ('Get') and resource. It distinguishes from sibling tools like get_scheme_codes which are not AMC-specific.
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 provides clear context for when to use (when querying schemes by AMC) but does not explicitly contrast with alternatives like get_scheme_codes or search_scheme_by_name. It remains effective for its purpose.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_debt_scheme_performanceA
Get daily performance data for all open-ended DEBT mutual fund schemes. Includes Liquid, Overnight, Short Duration, Corporate Bond, Gilt funds, etc. Shows latest NAV (Regular & Direct plans) and 1Y/3Y/5Y returns.
Returns: Dictionary categorized by debt fund type with performance metrics.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are absent, so the description bears the full burden. It discloses that the tool shows daily performance, latest NAV, and returns, but omits details like data freshness, authentication needs, or rate limits. It is moderately transparent but leaves gaps.
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 concise with a single sentence for purpose and a bullet list for details. All information is relevant and front-loaded, with no fluff.
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?
Without an output schema, the description explains the return value as a dictionary categorized by debt fund type with performance metrics. While not exhaustive, it provides enough context for basic usage. More detail on return structure would improve completeness.
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?
There are no parameters (input schema is empty with 100% coverage). The description does not need to explain parameters, and the absence of input is clearly conveyed.
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 it retrieves daily performance data for open-ended DEBT mutual fund schemes, listing specific fund types (Liquid, Overnight, etc.). This distinguishes it from sibling tools like get_equity_scheme_performance or get_hybrid_scheme_performance.
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 debt fund queries by naming the fund category and examples. However, it does not explicitly state when to avoid using this tool (e.g., for equity or hybrid funds) or direct users to alternatives among siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_elss_scheme_performanceA
Get daily performance data for ELSS (Equity Linked Savings Scheme) mutual funds. ELSS funds offer tax benefits under Section 80C with a 3-year lock-in period. Shows latest NAV (Regular & Direct plans) and 1Y/3Y/5Y returns.
Returns: Dictionary with ELSS fund performance metrics.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must carry the full burden. It describes the output (NAV, returns) but does not disclose any side effects, authentication needs, or rate limits. As a read-only get tool, the lack of explicit safety disclosure reduces 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 concise: three sentences plus a return type line. It front-loads the core purpose and includes relevant background (tax benefits, lock-in) without unnecessary detail.
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 parameterless tool with no output schema, the description sufficiently covers what the tool does and what it returns (NAV, returns). No additional context is needed.
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 input schema has no parameters, and schema description coverage is 100% (trivially). Per guidelines, baseline for zero parameters is 4. The description adds no extra parameter information because none exist.
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?
Clearly states it retrieves daily performance data specifically for ELSS mutual funds, distinguishing it from sibling tools like get_equity_scheme_performance which cover broader categories.
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 explains what the tool returns but does not explicitly state when to use it over alternatives or provide any exclusion criteria. There is no clear guidance on preferring this over sibling tools like get_equity_scheme_performance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_equity_scheme_performanceA
Get daily performance data for all open-ended EQUITY mutual fund schemes. Includes Large Cap, Mid Cap, Small Cap, Flexi Cap, ELSS, Sectoral, etc. Shows latest NAV (Regular & Direct plans) and 1Y/3Y/5Y returns.
Returns: Dictionary categorized by equity fund type with performance metrics.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Without annotations, the description carries full burden. It discloses that the tool returns daily data, covers all open-ended equity schemes, and provides latest NAV and returns. However, it does not mention rate limits or authentication needs, but these are likely minimal.
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 concise, front-loaded with the main purpose, and uses bullet points for categories and metrics without unnecessary words. Every sentence adds value.
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 no parameters and no output schema, the description explains the return format (dictionary by equity fund type) and the data included (NAV, returns). It is complete enough for an agent to understand the tool's output.
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?
Input schema has zero parameters with 100% coverage, so the baseline is 4. The description adds no parameter info, which is appropriate since there are none.
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 retrieves daily performance data for open-ended EQUITY mutual fund schemes, listing specific categories and metrics (NAV, returns). It effectively distinguishes itself from siblings that target debt, hybrid, or ELSS schemes.
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 use for equity mutual funds but does not explicitly state when to use this tool versus alternatives like get_elss_scheme_performance or get_hybrid_scheme_performance. No guidance on when not to use it is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_hybrid_scheme_performanceA
Get daily performance data for all open-ended HYBRID mutual fund schemes. Includes Balanced Advantage, Aggressive Hybrid, Conservative Hybrid, Arbitrage, etc. Shows latest NAV (Regular & Direct plans) and 1Y/3Y/5Y returns.
Returns: Dictionary categorized by hybrid fund type with performance metrics.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, so the description carries full burden. The verb 'Get' and the description of returning data strongly imply a read-only operation. However, it could explicitly state that no modifications occur. The return format is described.
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?
Description is short (two paragraphs), front-loaded with purpose, lists included types, details output metrics, and describes return format. No wasted words.
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 zero parameters and no output schema, the description fully specifies the tool's scope (open-ended hybrid schemes), examples, metrics (NAV, returns), and return structure (dictionary categorized by fund type). Complete for its simplicity.
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?
Input schema has zero parameters with 100% coverage, so description does not need to add parameter info. The description adds no parameter semantics beyond schema, meeting the baseline for high coverage.
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?
Description clearly states it retrieves daily performance data for hybrid mutual fund schemes, with explicit examples of hybrid types. This distinguishes it from siblings like get_equity_scheme_performance and get_debt_scheme_performance.
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 tool is clearly intended for hybrid funds, as indicated by the name and description. However, no explicit when-to-use or when-not-to-use guidance is given, though context from sibling tools implies the distinction.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_scheme_codesA
Get a dictionary of ALL mutual fund scheme codes and names available on AMFI. Returns a large dataset with scheme_code -> scheme_name mappings. Use this to discover scheme codes for funds you want to query.
Returns: Dictionary mapping scheme codes (str) to scheme names (str).
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must carry behavioral information. It mentions 'large dataset' hinting at size but lacks details on performance, limits, or whether the data is cached. More transparency would improve this score.
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 concise with four sentences, front-loading the purpose. Every sentence adds value, and there is no redundant or extraneous 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?
Given zero parameters and no output schema, the description adequately explains the return format and usage. However, it does not reference sibling tools or provide context about when to use alternatives, which could be improved.
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 input schema has zero parameters, so schema description coverage is 100%. The description does not need to add parameter semantics; the baseline of 4 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 uses a specific verb 'Get' and identifies the resource as a dictionary of ALL mutual fund scheme codes and names. It clearly distinguishes from siblings like search_scheme_by_name and is_valid_scheme_code, which have different purposes.
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 explicitly states to use this tool to discover scheme codes for funds to query. It does not explicitly mention when not to use it or compare to siblings, but the usage context is clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_scheme_detailsA
Get detailed metadata for a mutual fund scheme including fund house, type, category, and scheme start date.
Args: scheme_code: AMFI numeric scheme code (e.g., '119597').
Returns: Dictionary with fund_house, scheme_type, scheme_category, scheme_code, scheme_name, scheme_start_date.
| Name | Required | Description | Default |
|---|---|---|---|
| scheme_code | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It only describes the return format but does not disclose that it is a read-only operation, nor does it address error handling, required permissions, or rate limits.
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 concise with a clear structure: purpose, Args, and Returns. Every sentence adds value without unnecessary 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 tool with one parameter and no output schema, the description covers the main functionality and return fields. However, it lacks information on behavior when the scheme code is invalid or not found, which is important for a complete understanding.
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 description provides a clear semantic explanation of the scheme_code parameter, specifying it as an AMFI numeric code with an example ('119597'). This adds meaning beyond the input schema, which lacks parameter descriptions.
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 retrieves detailed metadata for a mutual fund scheme, listing specific fields like fund house, type, category, and start date. It distinguishes from sibling tools that focus on quotes, historical NAV, or available schemes.
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 use when you have a scheme_code and want metadata, but it does not explicitly state when to prefer this tool over alternatives like get_scheme_quote or search_scheme_by_name, nor does it mention when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_scheme_quoteA
Get the latest NAV (Net Asset Value) quote for a mutual fund scheme.
Args: scheme_code: AMFI numeric scheme code (e.g., '119597' for an SBI fund). Use get_scheme_codes or search_scheme_by_name to find codes.
Returns: Dictionary with scheme_code, scheme_name, last_updated, nav.
| Name | Required | Description | Default |
|---|---|---|---|
| scheme_code | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It discloses that the tool returns a dictionary with specific keys (scheme_code, scheme_name, last_updated, nav) but does not mention potential failure modes (e.g., invalid scheme code), rate limits, or update frequency. Adequate given the simple read-only nature.
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 concise, with a clear first sentence stating the purpose followed by Args and Returns sections. Every sentence adds value, and the structure is easily scannable.
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?
The tool is simple (one parameter, no output schema). The description explains the parameter and output sufficiently. Minor gap: does not clarify whether the NAV is real-time or end-of-day, but this is not critical for basic usage.
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 0%, so the description fully compensates. It explains that scheme_code is an AMFI numeric code, provides a concrete example, and directs users to sibling tools for finding codes. This adds meaningful context beyond the schema's title.
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?
Clearly states that the tool retrieves the latest NAV quote for a mutual fund scheme, specifying the return fields. The description uses a specific verb ("Get") and resource ("NAV quote"), distinguishing it from sibling tools like get_scheme_details or get_scheme_historical_nav.
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?
Provides guidance on how to find the required scheme code using sibling tools (get_scheme_codes or search_scheme_by_name). However, it does not explicitly state when to prefer this tool over other quote-related siblings (e.g., get_scheme_details).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
is_valid_scheme_codeA
Check whether a given scheme code is a valid AMFI scheme code.
Args: scheme_code: Numeric scheme code to validate (e.g., '119597').
Returns: Dictionary with 'valid' (bool) and 'scheme_code' fields.
| Name | Required | Description | Default |
|---|---|---|---|
| scheme_code | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Without annotations, the description adds value by disclosing the return structure (dictionary with 'valid' and 'scheme_code' fields). It could further mention that the operation is read-only and idempotent.
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 short and front-loaded with the main purpose. The Args/Returns format is slightly more verbose than needed but still efficient.
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 boolean validation tool, the description covers the return fields. However, it does not explain exactly what constitutes a valid AMFI code, which might be inferred but is not explicit.
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?
With 0% schema description coverage, the description compensates by explaining the parameter 'scheme_code' is numeric as a string and provides an example ('e.g., 119597'), adding meaning beyond the schema.
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 verb 'check', the resource 'scheme code', and specifies it's a valid AMFI scheme code, which distinguishes it from sibling tools that fetch or list schemes.
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 the tool is for validation but provides no explicit guidance on when to use it versus alternatives like get_scheme_codes or search_scheme_by_name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_scheme_by_nameA
Search for mutual fund schemes by name keyword. Optionally filter by AMC. Use this when you know a fund name but not its scheme code.
Args: query: Keyword to search in scheme names (e.g., 'midcap', 'bluechip', 'flexi'). amc_name: Optional AMC filter (e.g., 'hdfc', 'sbi'). Leave empty to search all.
Returns: Dictionary mapping scheme codes to matching scheme names.
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | ||
| amc_name | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, but the description discloses the return format (dictionary mapping scheme codes to names) and implies no side effects (search operation). It is transparent about the tool's behavior, though it could mention that it is read-only.
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 concise with three sentences plus an Args/Returns section. It is front-loaded with the main purpose and contains no unnecessary words. Every sentence earns its place.
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 absence of an output schema, the description provides essential return information ('Dictionary mapping scheme codes to matching scheme names'). For a search tool with two simple parameters, this is complete and sufficient.
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 lacks descriptions, but the description fully compensates by explaining 'query' (keyword to search in scheme names with examples) and 'amc_name' (optional AMC filter with examples). This adds significant meaning beyond the schema.
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's purpose: 'Search for mutual fund schemes by name keyword. Optionally filter by AMC.' It also specifies the use case: 'Use this when you know a fund name but not its scheme code.' This distinguishes it from sibling tools that likely require scheme codes.
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 explicitly guides when to use the tool: 'Use this when you know a fund name but not its scheme code.' It does not explicitly mention when not to use it or provide alternatives, but the context is clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
12 tool updates
v0.2.0- First observed
get_available_schemes - First observed
get_debt_scheme_performance - First observed
get_elss_scheme_performance - First observed
get_equity_scheme_performance - First observed
get_hybrid_scheme_performance - First observed
get_scheme_codes - First observed
get_scheme_details - First observed
get_scheme_historical_nav - First observed
get_scheme_historical_nav_for_dates - First observed
get_scheme_quote - First observed
is_valid_scheme_code - First observed
search_scheme_by_name
TDQS
Scored across 12 tools
Most tools have distinct purposes, but get_available_schemes and get_scheme_codes both return scheme codes and names, causing potential confusion. The rest are clearly differentiated by function.
All tool names follow a consistent snake_case verb_noun pattern (e.g., get_equity_scheme_performance, search_scheme_by_name), making it predictable for an agent.
12 tools cover the essential operations for a mutual fund data server—discovery, details, NAV history, performance categories, and validation—without being excessive.
Covers core CRUD-like operations and performance data by category. Minor gaps include lack of direct scheme comparison or expense ratio details, but overall the surface is sufficient for typical queries.
Maintenance
Related MCP Connectors
MFAPI.in MCP — Indian mutual-fund NAV (net asset value) data.
Open-source MCP server for Zerodha Kite Connect. Portfolio, market data, backtesting, alerts.
MCP server for Product Management
Related MCP Servers
- ISC
- FlicenseNot gradedqualityDmaintenanceMCP server for screening Indian stocks and mutual funds by wrapping screener.in and Morningstar India, enabling fundamental queries from Claude or Cursor.-
- AlicenseAqualityBmaintenanceAn MCP server exposing Indian market and regulatory data from official sources (NSE, NIFTY, AMFI, SEBI), providing tools for end-of-day quotes, index constituents, mutual fund NAVs, and SEBI order searches with a focus on primary sources and no fabricated data.8MIT
- AlicenseAqualityAmaintenanceMCP server that lets AI assistants search and analyze live Indian mutual funds via Groww's API, supporting filters and detailed fund diagnostics.21MIT