
Tijori Finance
- 10 repo stars
- Updated July 14, 2026
- LaZZy0v0/tijori-finance-mcp
Tijori Finance MCP is an MIT-licensed stdio server with 19 tools for Indian equity research across 5,000+ NSE/BSE stocks, including financials, shareholding, KPIs, concalls and a ~1,500-metric screener.
About
Tijori Finance MCP gives Claude structured access to Indian equity research: 19 stdio tools covering 5,000+ NSE/BSE listings, from P&L, balance sheet, and cash flow history to 10-quarter shareholding breakdowns, revenue mix, operational KPIs, concall transcripts, and a screener that runs Tijori's full query language across roughly 1,500 metrics (ROCE > 20%, capex/Net Block > 0.5, revenue from Defence > 50). Unlike US-centric finance servers built on Yahoo Finance or SEC filings, it targets Indian markets exclusively. Its mechanism is a Playwright-maintained authenticated browser session against your own Tijori Finance account (free tier works with data limits, Pro recommended), with results cached in-memory for 6 hours (financials) or 30 minutes (metrics). Software engineers building India-focused research copilots or screening workflows get repeatable structured JSON instead of PDF hunting; skip it for US/EU tickers, live trading execution, or compliance-grade research - the author states it is not affiliated with Tijori Finance and the data is for personal research only.
- Provides 19 tools: 16 data tools plus list_popular_screens, screen_companies and search_screener_fields.
- Covers 5,000+ NSE/BSE stocks with financials, shareholding, revenue mix, KPIs and concall transcripts.
- Runs Tijori's query language across ~1,500 metrics, including percentages, comparisons and arithmetic.
- Uses a Playwright browser session with your Tijori Finance login; no API key is needed.
- In-memory caching keeps repeat calls fast: 6 hours for financials, 30 minutes for metrics
Tijori Finance by the numbers
- Data as of Jul 27, 2026 (Skillselion catalog sync)
claude mcp add tijori-finance-mcp -- npx -y tijori-finance-mcpAdd your badge
Show developers this MCP server is listed on Skillselion. Paste this into your README.
| repo stars | ★ 10 |
|---|---|
| Package | tijori-finance-mcp |
| Transport | STDIO |
| Auth | None |
| Last updated | July 14, 2026 |
| Repository | LaZZy0v0/tijori-finance-mcp ↗ |
What it does
Query Indian company fundamentals, shareholding, concall transcripts, and macro data from an agent, and screen 5,000+ NSE/BSE stocks while researching India-focused fintech or investment theses.
Who is it for?
Developers building India-focused equity research agents, stock-screening workflows, or fintech prototypes who want structured NSE/BSE company data inside Claude instead of scraping portals and PDFs.
Skip if: Not for US/EU tickers, real-time quotes or trade execution, or compliance-grade investment research; the author is not affiliated with Tijori Finance and states the data is for personal research only, not redistribution.
What you get
Agents can pull P&L history, 10-quarter shareholding, revenue mix, KPIs and concall transcripts for 5,000+ Indian listings, then screen the market with Tijori's query language.
- Structured JSON financials per company: P&L, balance sheet, cash flow, ratios, quarterly results
- 10-quarter promoter/FII/DII/public shareholding breakdowns
- Concall transcripts and investor-document text via get_knowledge_base plus fetch_document PDF extraction
By the numbers
- 19 MCP tools (16 v1 data tools + 3 v2 screener tools)
- 5,000+ NSE/BSE listed stocks covered
- ~1,500 screener metrics counting time-period variants
README.md

Tijori Finance MCP
India's first MCP server for Indian equity research.
Talk to 5,000+ NSE/BSE listed companies directly from Claude.
What you can do
"Pull Zomato's last 6 quarters of revenue and EBITDA margin, then read their
latest concall transcript — are they hitting the targets management guided for?"
"Bajaj Finance's FII stake dropped 400bps last year while promoters held flat —
pull their latest investor presentation to figure out if this is distribution or passive rotation."
"Crude is up — check the raw materials data for chemical spreads, then pull
revenue mix and operational metrics for Deepak Nitrite to see if margins are at risk."
"The goal is to turn data into information, and information into insight." — Carly Fiorina
In Action
1 — Cross-tool deep dive: Titan
Revenue mix pulled first, then cross-referenced against P&L data to explain trends

2 — IndiGo: P&L history
Full income statement history retrieved in one call — revenue, EBITDA, PAT across years

3 — Concall → Financial projection
Knowledge base fetched the latest earnings call transcript, Claude read it and built a forward projection model

Why this exists
Most financial MCP servers are built for US markets — Yahoo Finance, SEC filings, S&P data.
Nothing existed for India.
Tijori Finance is the most comprehensive source for Indian equity data — operational KPIs, revenue segment breakdowns, market share trends, and curated investor documents that aren't available anywhere else. This MCP server exposes all of it to Claude.
| Feature | Tijori Finance MCP | Traditional Research | Bloomberg / Refinitiv |
|---|---|---|---|
| Setup Time | 5 minutes | Hours (Python, Excel...) | Weeks (Contracts) |
| Cost | Free + Tijori subscription | Variable | $30k+/year |
| Indian Market Coverage | ✅ 5,000+ NSE/BSE stocks | ❌ Fragmented / manual | ✅ |
| Operational KPIs | ✅ Segment data, KPIs, market share | ❌ Manual scraping | ✅ Proprietary |
| Concall Transcripts | ✅ Earnings calls, investor docs | ❌ PDF hunting | Partial |
| AI-Ready Output | ✅ Structured JSON → Claude | ❌ Unstructured pages | ❌ Proprietary only |
| API Keys Required | None | Multiple (OpenAI, etc.) | N/A |
What makes this different from a web search?
A web search gives you unstructured pages. This gives Claude structured, queryable data — historical time series, typed fields, and consistent schemas across all 5,000+ companies. Claude can reason over it, compare across companies, and build analyses — not just summarize a webpage.
Tools
v1 — Stable
| Tool | What it does |
|---|---|
search_company |
Search any company by name, returns slug |
get_company_overview |
Key ratios, forensics score, market cap, PE, ROE, ROCE |
get_financials |
P&L, Balance Sheet, Cash Flow, Ratios, Quarterly results |
get_shareholding |
10-quarter promoter / FII / DII / public breakdown |
get_operational_metrics |
All operational KPIs with full historical time series |
get_fund_flow |
Capital allocation breakdown over 1/3/5/7/10 years |
get_revenue_mix |
Segment breakdown with historical trend per segment |
get_market_share |
Market share % per metric with as-of date |
get_knowledge_base |
Annual reports, earnings releases, investor presentations, conference calls — returns URLs grouped by type |
fetch_document |
Fetch and extract full text from a PDF URL returned by get_knowledge_base. Reads through the authenticated session to bypass CDN access controls |
get_raw_materials |
Commodity price performance — chemicals, spreads, metals |
get_macro_indicators |
India macro — credit, IIP, GST, auto sales, GDP, trade |
get_markets |
Index performance — Nifty, sector indices, conglomerates |
get_sector_constituents |
All stocks inside a TJI niche sector index. Pass tjiid from get_markets("niche"). Returns slug, market-cap weight, and 1D–10Y price returns per stock |
get_conglomerate_constituents |
All companies inside a business group. Pass tjiid from get_markets("conglomerates"). Returns slug and 1D–10Y price returns per stock |
resolve_company_ids |
Resolve slug to numeric company ID |
v2 — Stable
| Tool | What it does |
|---|---|
list_popular_screens |
Browse Tijori's pre-built stock screens, grouped by category, with each screen's description and underlying query |
screen_companies |
Run a popular screen by name (preset) or screen 5,000+ stocks with Tijori's full query language — % values, field-vs-field comparisons, arithmetic like capex/Net Block > 0.5, plus business-data queries (alternate) like market share > 50 or revenue from Defence > 50 |
search_screener_fields |
Search the ~1,500-metric field catalog (with time-period variants like 3yr Avg ROCE, 10Yrs ago PAT) to find exact field names for screen_companies |
What's New
2026-06-12 — Screener overhaul
Alternate data queries. The Advanced Screener's second box now works ad-hoc:
screen_companies({ alternate: "market share > 50" })or{ alternate: "revenue from Defence > 50", filters: "Market Capitalization > 1000" }. Relationships:makes,revenue from,market share,uses,caters to,has plant in, combinable with AND/OR/NOT.The three screener checkboxes.
latest_results_only(only companies that reported the latest quarter),superstar_investors(only companies a whale investor holds, with the holder named per row), andsme(search the SME-listed universe).Popular screens actually run now.
list_popular_screenspreviously returned queries with theANDglued to the next field name (newlines in the page's links were being stripped), and dropped each screen's category, description, market-share query, and superstar-investor flag. It now returns all of those, andscreen_companies { preset: "Monopoly Companies" }runs any of them through the same endpoint the website uses — including the ones advanced queries can't express.The advanced screener exposes Tijori's full query language. Queries support every field in Tijori's catalog,
%values (ROCE > 20%), comparisons between fields (Net Sales > 3Yrs ago Net Sales), and arithmetic (capex/Net Block > 0.5).New
search_screener_fieldstool. Tijori has ~1,500 financial metrics once you count time-period variants (3yr Avg ROCE,5yr Growth Net Sales,10Yrs ago PAT…). Search the catalog to find the exact name, then use it in a query.Result caps + pagination. Screens used to return every matching row (1,000+ for loose queries). Results are now capped at 50 by default (
limitraises it) andoffsetpages through the rest — "show me the next 50" is served instantly from cache without re-querying Tijori.total_resultsalways reports the full count.
2026-06-10 — Reliability & performance
- Long, multi-tool queries no longer time out. Asking for a full workup in one go — e.g. "build a model for MTAR: overview + financials + concall + revenue mix + operational KPIs" — used to overwhelm the browser and fail with
page.goto: Timeouterrors. Page loads are now faster (ads, trackers and images are skipped), capped to a safe number of concurrent loads, and retried once on a transient timeout. Tools also wait for the actual data to render rather than a fixed delay, so you get complete results instead of half-loaded ones. - Fixed a startup browser leak. A burst of parallel tool calls on a cold start could spin up several Chromium instances and leave most of them orphaned. It now launches exactly one and shares it.
get_market_sharereturns cleanly when there's no data. For companies that simply have no market-share metrics (most non-lenders), it now returns an empty result with a note instead of erroring — which previously made the assistant retry the same call in a loop.
Setup
Requirements
- Node.js v18+ — install the LTS version
- A Tijori Finance account — free account works but has data limits; Pro recommended for full access
- Claude Desktop
Option 1 — Wizard (recommended)
The setup script handles everything automatically: installs packages, downloads the browser, authenticates, and writes the Claude Desktop config for you.
Windows
- Download Node.js and install it (choose LTS)
- Download Claude Desktop and install it
- Download this repo and unzip it anywhere
- Double-click
setup.batinside the folder - Follow the prompts — enter your Tijori email/password, then log in through the browser window that opens
- Fully quit and reopen Claude Desktop
Mac
- Download Node.js and install it (choose LTS)
- Download Claude Desktop and install it
- Download this repo and unzip it anywhere
- Double-click
setup.commandinside the folder — if macOS blocks it ("unidentified developer"), right-click the file and choose Open the first time - Follow the prompts — enter your Tijori email/password, then log in through the browser window that opens
- Fully quit and reopen Claude Desktop (Cmd+Q, not just closing the window)
Linux (or any terminal)
git clone https://github.com/LaZZy0v0/tijori-finance-mcp.git
cd tijori-finance-mcp
node setup.js
Follow the prompts, then fully quit and reopen Claude Desktop.
Option 2 — Manual
For those who want to see exactly what each step does.
1. Clone and set credentials
# Mac / Linux
git clone https://github.com/LaZZy0v0/tijori-finance-mcp.git
cd tijori-finance-mcp
cp .env.example .env
# Windows
git clone https://github.com/LaZZy0v0/tijori-finance-mcp.git
cd tijori-finance-mcp
copy .env.example .env
Open .env in any text editor and fill in your Tijori credentials:
TIJORI_EMAIL=your@email.com
TIJORI_PASSWORD=yourpassword
2. Install packages and browser
npm install
npx playwright install chromium
npm install downloads the Node.js dependencies. playwright install chromium downloads a ~150 MB Chromium browser used to maintain your Tijori session — one-time only.
3. Authenticate
node discover.js
A browser window opens at the Tijori Finance sign-in page. Log in as you normally would. Once you're in, the script visits a few pages in the background to capture API endpoints, then the window closes automatically. Your session is saved to output/session.json.
4. Configure Claude Desktop
Find your config file and add the block below. The path to src/index.js must be absolute.
| OS | Config file location |
|---|---|
| Windows | %APPDATA%\Claude\claude_desktop_config.json |
| Mac | ~/Library/Application Support/Claude/claude_desktop_config.json |
{
"mcpServers": {
"tijori-finance": {
"command": "node",
"args": ["C:/Users/yourname/tijori-finance-mcp/src/index.js"]
}
}
}
5. Fully quit and reopen Claude Desktop
Test it
"Search Tata Steel using Tijori MCP"
If Claude returns a result, you're connected.
Session expiry
Tijori sessions expire periodically. When tools stop working:
npm run reauth
A browser window opens — log in manually and you're back.
How it works
The server uses Playwright to maintain an authenticated browser session with Tijori Finance. Each tool navigates to the relevant page or calls the underlying API, parses the response, and returns structured JSON to Claude. Results are cached in-memory (6 hours for financials, 30 minutes for metrics) to keep things fast.

Disclaimer
This project is not affiliated with Tijori Finance. It requires your own paid Tijori Finance subscription. Use for personal research only — do not redistribute the underlying data.
Built with Model Context Protocol · Data from Tijori Finance
Recommended MCP Servers
How it compares
Choose it over US-focused finance MCPs for NSE/BSE research. It uses your Tijori Finance account through a local Playwright session instead of an API key or terminal feed.
FAQ
Does Tijori Finance MCP need an API key?
No API key. It authenticates by driving a Playwright browser session against your own Tijori Finance login (node discover.js opens the sign-in page and saves the session); when the session expires, run npm run reauth and log in again.
What data can it pull for a single Indian company?
Returns overview ratios, financial statements, 10-quarter shareholding, KPIs, revenue mix, market share, fund flows, annual reports and investor presentations.
Is the data free?
The server itself is MIT-licensed and free, but it runs on your own Tijori Finance account: a free account works with data limits and the README recommends a Pro subscription for full access.