Skip to main content

Open-source MCP server for Indian (NSE/BSE) + Global financial data with built-in AI analytics

Project description

FinStack MCP

PyPI version License: MIT Python 3.10+ MCP

FinStack MCP is an India-first financial data and research engine for MCP clients. It gives Claude, Cursor, ChatGPT, and other MCP-compatible tools a structured interface for NSE/BSE market data, global market coverage, fundamentals, analytics, and watchlist-ready research workflows.

The repo is public on purpose. It is the open-source engine, trust layer, and distribution channel for the broader FinStack product line.

Demo video: https://drive.google.com/file/d/1sWKAB2K62oUG14YtS5YqEo72Unr9xfq3/view?usp=sharing

Overview

FinStack MCP is designed around a simple product split:

  • finstack-mcp is the open-source MCP engine
  • FinStack Brief is the paid delivery layer built on top of it

That means this repo focuses on the part that should be public and reusable:

  • financial data access for Indian and global markets
  • structured tools that work inside MCP clients
  • reusable analytics for research workflows
  • a base layer for future brief, alert, and dashboard products

Why This Exists

Most finance MCP servers are either too generic, too thin, or too dependent on API-key-heavy setups. FinStack MCP is meant to be more practical:

  • India-first coverage instead of treating NSE/BSE as an afterthought
  • broad enough to be useful on day one
  • simple enough to install with one package
  • compatible with local MCP workflows before any hosted product exists

What You Get

Current package scope:

  • 39 tools in total
  • 33 tools available in the free flow
  • Indian market support for NSE/BSE quotes, indices, corporate actions, quarterly results, FII/DII activity, bulk deals, IPOs, and market status
  • global market support for equities, crypto, forex, news, and SEC filings
  • fundamentals support for income statement, balance sheet, cash flow, key ratios, company profiles, and dividend history
  • analytics support for technical indicators, sector performance, stock comparison, screening, portfolio analysis, support/resistance, options chain, and backtesting

Quick Start

Install from PyPI:

pip install finstack-mcp

Run locally:

python -m finstack.server

Or use the installed entry point:

finstack-mcp

Generate a daily brief from the CLI:

finstack-brief --watchlist RELIANCE,TCS,HDFCBANK

Claude Desktop Setup

Add this to your Claude Desktop MCP configuration:

{
  "mcpServers": {
    "finstack": {
      "command": "python",
      "args": ["-m", "finstack.server"]
    }
  }
}

Restart Claude Desktop and try prompts like:

  • "What's the latest price and day range for Reliance?"
  • "Compare TCS, Infosys, and Wipro on margins and valuation."
  • "Show me upcoming earnings and corporate actions for HDFCBANK."
  • "Generate a quick Indian market brief for my watchlist."

Tool Coverage

Indian Markets

  • NSE quotes
  • BSE quotes
  • market status
  • Nifty, Sensex, and Bank Nifty indices
  • historical OHLCV data
  • top movers
  • mutual fund NAV
  • circuit-breaker scanner
  • Sensex component snapshot
  • 52-week scanner
  • FII/DII activity
  • bulk deals
  • corporate actions
  • quarterly results
  • earnings calendar
  • IPO calendar

Global Markets

  • global stock quotes
  • historical stock data
  • crypto quotes
  • crypto history
  • forex rates
  • market news
  • SEC filings
  • SEC search

Fundamentals And Analytics

  • income statement
  • balance sheet
  • cash flow
  • key ratios
  • company profile
  • dividend history
  • technical indicators
  • stock comparison
  • sector performance
  • stock screener
  • support and resistance
  • options chain
  • portfolio analysis
  • strategy backtesting

Product Role

This repo is not meant to be the whole business by itself.

Its role is:

  • public GitHub presence
  • PyPI distribution
  • MCP ecosystem discovery
  • technical credibility
  • reusable engine for future products

The paid wedge currently being built on top of this engine is the Indian market daily brief.

Reference docs:

Data Sources

Source Coverage API key required
yfinance NSE, BSE, US equities, crypto, forex, earnings No
NSE Direct endpoints FII/DII, bulk deals, market data, IPO context No
SEC EDGAR US filings and company submission data No
CoinGecko Crypto market data No for current free flow

Daily Brief Direction

The first commercial layer on top of FinStack MCP is not "generic pro access." It is a repeatable workflow:

  1. pull Indian market state
  2. enrich it with watchlist context
  3. compose a structured brief
  4. deliver it through email, Telegram, WhatsApp, or a hosted dashboard

That is the bridge from open-source distribution to paid recurring value.

Development

Clone the repo:

git clone https://github.com/finstacklabs/finstack-mcp.git
cd finstack-mcp

Install development dependencies:

pip install -e .[dev]

Run tests:

pytest -q

Build the package:

python -m build

Current Status

This package is live on:

The hosted commercial layer is not public checkout yet. Public pricing should currently be treated as interest capture and positioning, not as a fully self-serve SaaS checkout.

Contributing

PRs are welcome. Keep changes focused, test what you touch, and document new tools or changed behavior clearly.

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

finstack_mcp-0.3.2.tar.gz (62.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

finstack_mcp-0.3.2-py3-none-any.whl (57.4 kB view details)

Uploaded Python 3

File details

Details for the file finstack_mcp-0.3.2.tar.gz.

File metadata

  • Download URL: finstack_mcp-0.3.2.tar.gz
  • Upload date:
  • Size: 62.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.7

File hashes

Hashes for finstack_mcp-0.3.2.tar.gz
Algorithm Hash digest
SHA256 e9f823391a7b015aa43c70f8b6ff7002a3446566d7bb80d5e444e9f35ac76d91
MD5 40eb87868124bc15b3e6961a6f6e3885
BLAKE2b-256 4a8140dc22931bc88d7e6bab2bdafbd7d58e21f6586c162ea26c4253ef6f8ded

See more details on using hashes here.

File details

Details for the file finstack_mcp-0.3.2-py3-none-any.whl.

File metadata

  • Download URL: finstack_mcp-0.3.2-py3-none-any.whl
  • Upload date:
  • Size: 57.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.7

File hashes

Hashes for finstack_mcp-0.3.2-py3-none-any.whl
Algorithm Hash digest
SHA256 61b736094799370ccdeb7e1402df5185ad1eef8d26c36dfeb25da4a8b68ca69e
MD5 29cf9fa6e000fb6f6ac372d4c22ec23b
BLAKE2b-256 012663f524d28359966ddd9c5fdef06f88cb1f36b026775f374bf58f790bd939

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page