bse-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| MCP_TOKEN | No | Optional token set on the Cloudflare Worker to restrict access; the server then requires 'Authorization: Bearer <token>'. Leave unset for claude.ai custom connectors. |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| search_scripsA | Find BSE scrip codes by company name, symbol, ISIN or code fragment (e.g. 'reliance', 'ABB', 'INE117A01022'). Returns up to 20 matches: scripcode, symbol, name, isin, market. Use the scripcode in the other tools. |
| get_quoteA | Live price and key facts for one BSE scrip: LTP, change, day/52-week range, volume, delivery %, market cap, EPS/PE/PB/ROE/margins (standalone and consolidated), group, sector/industry, ISIN, flags (ASM/GSM etc.). scripcode: the 5-6 digit BSE code. |
| get_market_depthB | Top-5 bids and asks (price and quantity) with totals for one BSE scrip. |
| get_peersC | BSE's peer group for a scrip: each peer's code, LTP, change %, PE, PB, EPS, revenue and PAT (Rs Cr), OPM, NPM, 52-week range and the quarter those results are from. |
| get_financialsA | Quarterly P&L from BSE's results filings, newest first, with derived EBITDA, margins and tax rate. quarters: how many to return (1-16). upto: the newest quarter to include, like 'Q1 FY27'; by default the latest quarter BSE has results for is detected. Values are as originally filed; expenses are negative; BSE labels the amounts Rs million for most companies. |
| get_announcementsA | Corporate announcements and filings for a scrip from BSE's announcements feed, newest first, with PDF links. months: look back 1-12 months (BSE returns nothing for longer spans). category: 'all' or 'results' (financial results only). page: 1-based, about 50 rows per page; 'total' says how many exist. |
| download_announcement_pdfA | Save an announcement's PDF (the 'attachment' from get_announcements) into save_dir, optionally under filename, and return the file path. |
| list_scripsA | List BSE securities from the List of Securities page, filtered by segment (Equity, EQT0, MF, HS, MB, 'Preference Shares', 'Debentures and Bonds', 'Equity - Institutional Series', 'Commercial Papers', 'Government Securities', 'Certificate of Deposit', 'Treasury Bills'), status (Active/Suspended/Delisted/''), group code (A, B, T, ...), a name fragment, or one exact code. Returns up to |
| call_bse_apiB | Call any documented BSE endpoint and return its raw decoded JSON. endpoint is one of: getScripHeaderData, ComHeadernew_par, MarketDepth, StockTrading, HighLow, PriceBand, SecurityPosition, StockReachGraphCas, EQPeerGp, TabResults_PAR_NEWS, TabResults_PAR_RESULTS, ScripwiseCautionaryMsg, LeftMenunew, Corp_detailedResult_Transpose_ng, Corp_BSEDnBResults_SEBI_Consolidated_Res_ng, Corp_SEGMENTS_QUART_COMP_ng, Corp_Segments_Total_p_ng, Corp_GET_BSEDnBResultNotes_ng, AnnSubCategoryGetData, GetQuoteAllSearchDatabeta, ListofScripData_new, ddlGroup, Mkt_GetTicker_ng. Default params are filled from scripcode and quarter (a BSE quarter id like '130.00', or 'Q1 FY27'); anything in params overrides them. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 9 tools
Most tools target distinct resources and actions (quote, depth, peers, financials, announcements, PDF download, raw API). The only real overlap is between search_scrips and list_scrips, both of which can filter by name/code, but their descriptions clarify search is for finding a scripcode while list is for browsing/filtering segment listings. call_bse_api is a deliberate catch-all that could overlap with everything, but it is clearly framed as an escape hatch.
All nine tools use a consistent snake_case verb_noun pattern: get_peers, search_scrips, get_market_depth, get_quote, get_financials, get_announcements, download_announcement_pdf, list_scrips, call_bse_api. The verbs are standard and predictable, with no mixing of camelCase or inconsistent conventions.
Nine tools is well-scoped for a read-only BSE market-data server. Each tool covers a meaningful, non-redundant slice of functionality (search, quote, depth, peers, financials, announcements, PDF retrieval, listing, raw API access). No tool feels like filler or a trivial wrapper.
The set covers core needs: scrip discovery, live quotes, market depth, peer comparison, quarterly financials, corporate announcements, and PDF downloads. Minor gaps exist, such as a dedicated historical price/time-series tool and explicit index data, but call_bse_api provides a documented raw-endpoint escape hatch for those cases. The surface is nearly complete for a read-only BSE data server.