All servers · Markets & trading
DalalOS: Indian Stock Market Research (NSE/BSE)
in.dalalos/mcp · v1.0.0
New (7 days)Has write/delete toolsTools changed (7 days)
Measured by MCP Station
| Last check | Reachable |
|---|---|
| Checked at | — |
| Check success 7 / 30 days | — |
| First-try success 30 days | — |
| Median response | — |
| Lookups 30 days | — |
| Authentication | No auth |
| MCP version | 2025-06-18 |
| Rank score | — |
| Declared risk | Has destructive tools (destructiveHint) |
| Capabilities declared | experimental, prompts, resources, tools |
| Tool definitions | 61 tools · with description 100% · input schema is an object 100% · read/destructive hints 100% |
Description written by the publisher, not verified
Filing-grounded Indian stock research (NSE/BSE): financials, ratios, screens. Sourced and dated.
Connect
streamable-http · https://mcp.dalalos.in/mcp
claude mcp add --transport http mcp https://mcp.dalalos.in/mcp{
"mcpServers": {
"mcp": {
"url": "https://mcp.dalalos.in/mcp"
}
}
}Tools as reported by the server
pingUse this only to confirm the DalalOS connection is working. DalalOS health check. Returns a success envelope to confirm the server is reachable.get_filing_extractUse this when the user asks for the contents or a summary of one specific BSE filing of an Indian company, using a news_id from get_stock_events. It may queue processing and use a small daily allowance. Get the cached PDF-extraction for one BSE corporate filing. Accepts NSE symbol, ISIN, or BSE codeget_filing_extractsUse this when the user wants summaries of several filings of one Indian company at once (up to 10 news_ids from get_stock_events). It may queue processing and use allowance. Get the cached PDF-extractions for several BSE filings of ONE company in one call. Accepts NSE symbol, ISIN, or BSE code + a lget_market_fii_dii_flowUse this when the user asks what FIIs and DIIs have been buying or selling in Indian equities day by day across the whole market. Not for a company's ownership percentage; use get_shareholding. Market-wide DAILY FII/DII net cash-flow (Rs crore), NSE cash (Capital Market) segment. NOT the shareholdinget_stock_fii_flowUse this when the user asks about daily FII transaction flow in one Indian stock in the historical CDSL data, which stops at March 2025. Per-stock DAILY FII/FPI transaction flow (raw Rs) -- daily series + trailing-30d summary. Accepts NSE symbol, ISIN, or BSE code. `days` (1..1825, default 90) boundget_watchlistUse this when the user asks what is on their DalalOS watchlist, a saved list of stock symbols (not brokerage holdings). Get the caller's DalalOS watchlist: bare stock symbols, no quantity/cost-basis. Use this whenever the user asks what's on their (DalalOS) watchlist, or before adding/ removing symbadd_to_watchlistUse this when the user asks to add, watch or track Indian stocks in their DalalOS watchlist. Changes only the user's own saved list. Add one or more stocks to the caller's DalalOS watchlist, accepting a pasted list. Use this when the user says "watch X", "track X", "add X to my watchlist", or asks tremove_from_watchlistwrite/deleteUse this when the user asks to remove stocks from their DalalOS watchlist. Changes only the user's own saved list. Remove one or more stock symbols from the caller's DalalOS watchlist in a single call. Use this when the user says "stop watching X", "remove X from my watchlist", or "clear my watchlissearch_stocksUse this when the user names an Indian company, NSE symbol, BSE code or ISIN and you need to identify the listed security before calling another tool. Not for US or other non-Indian stocks. Find Indian stocks by company name, NSE symbol, BSE code, or ISIN. Returns matching securities with their ISINget_stock_quoteUse this when the user asks for the price, trading volume, 52-week range, PE or PB of an Indian company listed on NSE or BSE. Prices are end-of-day, not live. Not for non-Indian stocks or live intraday prices. Get the latest end-of-day quote (price, OHLC, volume) for an Indian stock. Accepts an NSEget_batch_quotesUse this when the user wants end-of-day prices or ratios for several Indian stocks at once (up to 20), for example to line up peers. Get EOD quotes for up to 20 Indian stocks in one call (peer benchmarking). Each item carries the same fields as get_stock_quote (currency, vwap, bse_reported, any valuget_financialsUse this when the user asks how an Indian company listed on NSE or BSE has performed financially: revenue, profit, margins, balance sheet, cash flow or growth, quarterly or annual. Not for non-Indian companies; for a period-by-period growth series use get_financial_trends. Get consolidated financialget_company_profileUse this when the user asks what an Indian company listed on NSE or BSE is: its sector, industry, market cap and a headline financial summary. Get a company profile: identity, sector/industry, market snapshot, and TTM summary. Assembled from cached security master + quotes + financials. Accepts NSEget_company_reportUse this when the user wants a sourced overview of an Indian company listed on NSE or BSE: identity, key facts, recent disclosures and calculations in one report, each linked to its source. Get a source-linked, read-only canonical company report for one security. Accepts an NSE symbol, ISIN, BSE codget_peer_comparisonUse this when the user compares an Indian company listed on NSE or BSE with similar companies on valuation, margins, returns or debt (PE, PB, debt-to-equity, ROE). For an explainable peer set rather than a table use get_relevant_peers. Compare a stock against its sector/industry peers on valuation mget_shareholdingUse this when the user asks who owns an Indian company listed on NSE or BSE: promoter, FII, DII, mutual fund and public holding percentages by quarter. Not for daily buying or selling; for daily FII/DII flow use get_market_fii_dii_flow or get_stock_fii_flow. Get the promoter / FII / DII / public shaget_price_historyUse this when the user wants past share prices of an Indian company listed on NSE or BSE over a period, daily, weekly or monthly, for example to chart or compare a move. Get the OHLC + volume price-history series for an Indian stock. Accepts NSE symbol, ISIN, or BSE code. `days` (1..1825) bounds theget_valuation_historyUse this when the user asks how an Indian stock's PE or price-to-sales ratio has changed over time. Get point-in-time P/E and price-to-sales history for an Indian stock. Each point uses only the TTM filing that was public on that trade date. `days` accepts 1..1825; `interval` is daily, weekly, or moget_returnsUse this when the user asks how much an Indian stock has returned over a period (1 week to max), or about its volatility or drawdown. Get mechanical return statistics over standard windows for an Indian stock. Accepts NSE symbol, ISIN, or BSE code. Returns period returns (1W/1M/3M/6M/1Y/YTD/max), CAget_technical_indicatorsUse this when the user asks for moving averages, RSI, MACD, Bollinger Bands, beta or circuit-limit data for an Indian stock. Get moving averages, RSI, MACD, Bollinger Bands, beta, and circuit-filter band/hit-days for an Indian stock. Accepts NSE symbol, ISIN, or BSE code. Moving averages (sma_50/smaget_delivery_trendsUse this when the user asks how much of an Indian stock's traded volume was taken for delivery, and how that has trended. Get the delivery-volume / delivery-percentage trend for an Indian stock. Accepts NSE symbol, ISIN, or BSE code. `days` (1..1825) bounds the lookback window. Returns the raw delivget_dividendsUse this when the user asks whether and when an Indian company paid or declared a dividend, or about its dividend yield. Get the cash-dividend history for an Indian stock. Accepts NSE symbol, ISIN, or BSE code. `years` (1..15, default 5) bounds the window. Returns disclosed dividend amounts per sharget_brsrUse this when the user asks about an Indian company's BRSR (Business Responsibility and Sustainability Report) or ESG disclosures. Get BRSR (Business Responsibility & Sustainability Report) ESG disclosures for a stock. Accepts NSE symbol, ISIN, or BSE code. `years` (1..10, default 3) caps fiscal yeaget_bulk_block_dealsUse this when the user asks about bulk or block trades in an Indian stock on the NSE. Get NSE bulk/block trade disclosures for an Indian stock. Accepts NSE symbol, ISIN, or BSE code. `deal_type` optionally narrows to "bulk" or "block" (omitted returns both); `days` (1..1825, default 90) bounds the tget_derivatives_positioningUse this when the user asks about open interest, put-call ratio or futures and options positioning for an Indian stock or an index such as NIFTY or BANKNIFTY. Get NSE F&O (futures & options) positioning for one underlying. Accepts an NSE symbol, ISIN, or BSE code for a stock, OR a raw F&O underlyingget_fo_participant_activityUse this when the user asks how FIIs, DIIs, proprietary traders or clients are positioned in NSE futures and options across the whole market. Get NSE participant-wise (FII/DII/Pro/Client) F&O open interest & volume — market-wide. `days` (1..366, default 30) bounds the trailing window. Each row is onget_fno_ban_listUse this when the user asks which Indian stocks are in the NSE futures-and-options ban period today. Get the full NSE F&O securities-in-ban list for the most-recently-published trading day. Market-wide, not per-underlying — no `query` argument. This is the whole-list companion to `get_derivatives_poget_corporate_actionsUse this when the user asks about an Indian company's past splits, bonuses, dividends or other corporate actions. For upcoming events across the market use get_market_calendar. Get the disclosed corporate-action timeline for ONE STOCK, HISTORICAL (splits, bonuses, dividends, etc.) — the per-stock, bget_stock_eventsUse this when the user asks what an Indian company has announced or filed on the exchange recently: results, orders, board meetings, fundraising, acquisitions or other disclosures. Get recent BSE corporate announcements (SEBI Reg-30 disclosures) for an Indian stock. Accepts NSE symbol, ISIN, or BSEsearch_company_disclosuresUse this when the user needs historical detail from an Indian company's earlier filings, for example a prior order value or commissioning date. Search this company's already cached official filings, page by page. Use after get_stock_events/get_filing_extract when you need historical context, such asget_event_contextUse this after get_filing_extract when the user wants the earlier state behind an order, capacity or similar event in a filing. Return cached prior-state context for a canonicalized filing event. Use after get_filing_extract for an order, capacity or other supported event. The result retains sourceget_company_operating_metricsUse this when the user asks for an Indian company's disclosed operating figures such as order book, order inflow, capacity or other business KPIs over time. Return cached, source-grounded operating KPI history for one company. Coverage distinguishes company-disclosed values from ``not_disclosed`` figet_company_macro_exposuresUse this when the user asks how an Indian company is exposed to a macro factor such as crude oil, rates or currency, with official context signals. Return cached company macro pathway evidence and eligible official context signals. Signals are emitted only when an active, reviewed, sourced company eget_company_exposuresUse this when the user asks which macro or commodity factors an Indian company depends on, based on reviewed exposure mappings. Return one company's REVIEWED macro-factor exposures, labelled via the factor catalog. Cache-only, read-only: the company's reviewed ``company_exposures`` rows joined to thget_relevant_peersUse this when the user asks who an Indian company's real peers or competitors are and why. For a valuation table of peers use get_peer_comparison. Return an explainable peer set for operating, financial, or valuation comparison. Uses reviewed, provenance-backed business tags and overrides plus cachelist_announcement_bucketsUse this when the user wants to browse market-wide disclosure types, such as order receipts or fundraises, before calling get_announcement_bucket. List the market-wide BSE announcement discovery buckets (id + label). Each bucket groups a real-world disclosure type (e.g. "order-receipts", "fundraise"get_announcement_bucketUse this when the user asks which Indian companies recently announced a given kind of disclosure, for example order wins or fundraises, across the whole market. Get every company that filed a matching BSE announcement in a trailing window, market-wide. `bucket` is one of the ids from list_announcemescreen_stocksUse this when the user asks for Indian stocks matching numeric criteria such as PE, PB, market cap, ROE, margins or debt, optionally within an index such as NIFTY 50. For OR logic or arithmetic between metrics use screen_by_query. Screen the Indian security universe by user-supplied mechanical critescreen_by_queryUse this when the user's screen needs OR logic, arithmetic between two metrics or a Screener.in-style expression that screen_stocks filters cannot express. Screen the Indian security universe with one free-form Screener.in-style expression. Reach for this instead of screen_stocks when the ask needsget_sector_overviewUse this when the user asks how an Indian sector or industry looks in aggregate: number of companies, market cap, valuation and returns. Get an aggregate market overview by sector (or a finer SEBI grain). Omit `sector` to list all groups; pass one to drill in. `grain` is "sector" (default), "igroup"list_index_constituentsUse this when the user asks which stocks are in an Indian index such as NIFTY 50 or NIFTY Bank. List the constituent stocks of an Indian market index (e.g. NIFTY 50, NIFTY 500). `index` is matched exactly to a known index name — get the valid names from list_indices. `limit` (1..500) caps the returnlist_indicesUse this when the user needs the list of Indian market indices DalalOS covers. List the market indices for which constituent membership is cached.get_market_heatmapUse this when the user wants valuation and returns across the stocks in an Indian index at a glance. Not for ranking by return; use get_top_movers. Get valuation + multi-horizon returns for the constituents of an Indian market index. `index` is matched exactly to a known index name (e.g. NIFTY 50, Nget_top_moversUse this when the user asks which Indian stocks gained or lost the most, or traded the most, in the last completed session. Raw ranked gainers/losers/most-active for an index over one completed EOD session. `index` defaults to 'NIFTY 500' — get valid names from list_indices. `metric` picks the raw slist_preset_screensUse this when the user asks what ready-made screens are available, before calling run_preset_screen. List the fixed, nightly-precomputed preset screens (name/description/cache freshness). Presets are FIXED mechanical filter combinations (never live-queried, never ranked or labelled as a recommendatirun_preset_screenUse this when the user wants the latest result of a named ready-made screen from list_preset_screens. Return the last nightly-precomputed result for one registered preset screen. `name` must be one of the names returned by list_preset_screens. A preset that has never been computed yet returns an empget_upcoming_resultsUse this when the user asks which Indian companies report results soon, optionally by sector. For a past window or other event types use get_market_calendar. List companies with an upcoming board-meeting / results date — WHOLE-MARKET, FORWARD-ONLY. This is a forward-only, sector-filterable CONVENIENget_index_valuationUse this when the user asks for an Indian index's PE, PB or dividend yield over time, for example whether NIFTY 50 is expensive relative to its history. NSE's own daily OHLC + P/E + P/B + Div Yield time series for one named index. `index` is matched case-insensitively against NSE's own published indlist_index_valuationsUse this when the user needs the names of Indian indices that have PE, PB and dividend-yield history. List every NSE index name tracked (headline, broad-market, sector/thematic, India VIX). Each entry carries `{index_name, latest_trade_date, latest_close}`. Powers get_index_valuation's `available_inget_india_vixUse this when the user asks about the India VIX, the NSE volatility index, today or over a period. NSE's daily India VIX (volatility index) OHLC time series. `from_date`/`to_date` are optional ISO dates (default: trailing ~30 days; window capped at 1825 days). Each row is `{trade_date, open, high, lget_market_breadthUse this when the user asks how many Indian stocks advanced, declined or were unchanged on a trading day. Whole-market advance/decline/unchanged breadth: how many NSE-listed securities moved up/down/flat on a trading day. `from_date`/`to_date` are optional ISO dates (default: trailing ~30 days; windget_macro_indicatorsUse this when the user asks for official Indian macro data: CPI inflation, WPI, IIP, GDP or the crude-oil basket price. Official macro/sector indicators: MOSPI CPI, WPI, IIP (monthly), GDP (annual), and PPAC's Indian Basket crude-oil price (monthly). `dataset` is required: `"cpi"` (headline Consumerget_fx_reference_ratesUse this when the user asks for official FBIL reference rates of the rupee against USD, GBP, EUR, JPY or AED, for example the USD to INR rate. Daily FBIL INR reference rates (USD/GBP/EUR/JPY/AED/IDR against INR). `currency_pair` optionally filters to one pair (e.g. `"USD/INR"`, case-insensitive). `fget_sector_fii_flowUse this when the user asks about daily FII flow by sector in the historical CDSL data, which stops at March 2025. For current sector flows use get_sector_fpi_investment. Daily FII/FPI net flow (raw Rs), aggregated by sector -- the #74 sector-wise breakdown. Scope-keyed alongside its siblings (issueget_sector_fpi_investmentUse this when the user asks which Indian sectors foreign portfolio investors are buying or selling, using fortnightly NSDL data. Fortnightly FPI net investment and assets under custody by sector, from NSDL's Fortnightly Sector-wise FPI Investment data. Covers every FPI across BOTH depositories (NSDLget_fii_activityDeprecated alias of get_stock_fii_flow; use get_stock_fii_flow for per-stock daily FII transaction flow. DEPRECATED (issue #285) — renamed to `get_stock_fii_flow`; use that instead. Kept as a thin back-compat alias for this release only (no removal date committed yet): delegates to the exact same quget_market_calendarUse this when the user asks what events are scheduled or happened across Indian markets in any date window: results, board meetings, dividends, splits. Get a unified, WHOLE-MARKET calendar of disclosed events across all NSE/BSE securities, over an ARBITRARY window (past or future). Use this insteadget_iposUse this when the user asks about Indian IPOs: upcoming, open, awaiting listing or recently listed. List IPO/public-issue records: upcoming, open, listing pending, or recently listed. `status` optionally filters to `upcoming`, `open`, `listing_pending`, or `listed` (omitted returns all four); an unkget_financial_trendsUse this when the user asks for quarter-on-quarter or year-on-year growth and margin trends of an Indian company period by period. Get multi-period growth and margin trends for an Indian stock. Levels-vs-deltas division: this tool returns a PER-PERIOD time series (QoQ/YoY growth, `net_margin_delta`,get_pledge_trendUse this when the user asks how much of an Indian company's promoter holding is pledged and how that has changed. Get the promoter share-pledge percentage trend for an Indian stock. Accepts NSE symbol, ISIN, or BSE code. `limit` (1..16) caps the most-recent periods. Returns the reported pledged-percget_data_freshnessUse this when the user asks how recent DalalOS data is, or when a figure looks stale. Report cache freshness: last successful refresh per data domain and overall health. Every scraper-backed domain (including fii_dii and the ipos family) carries a staleness threshold matched to its real refresh cade
Tool changes
- 2026-10-27: ping, get_filing_extract, get_filing_extracts, get_market_fii_dii_flow, get_stock_fii_flow, get_watchlist, add_to_watchlist, remove_from_watchlist, search_stocks, get_stock_quote, get_batch_quotes, get_financials
- 2026-10-17: ping, get_filing_extract, get_filing_extracts, get_market_fii_dii_flow, get_stock_fii_flow, get_watchlist, add_to_watchlist, remove_from_watchlist, search_stocks, get_stock_quote, get_batch_quotes, get_financials
- 2026-10-16: ping, get_filing_extract, get_market_fii_dii_flow, get_stock_fii_flow, get_watchlist, add_to_watchlist, remove_from_watchlist, search_stocks, get_stock_quote, get_batch_quotes, get_financials, get_company_profile
Repository · Website · JSON · Text for agents · Registry updated 2026-10-26