Skip to main content
Glama
girishgupta211

sip-advisor-mcp

Market-Aware SIP Timing Advisor — FastMCP (workshop)

A ~180-line Python MCP server that turns live NSE index data into an SIP step-up / pause recommendation. Built for the mfAPIs × SunitechAI webinar.

Design: the server owns no data. Raw NIFTY 50 PE and OHLC rows come from the MF Engine REST API; the valuation-percentile, price-trend and SIP-rule logic live here in Python. That split is the teachable part.

Tool

What it does

get_nifty_valuation_context

current PE + percentile + z-score vs 10y history → cheap / fair / expensive

get_nifty_trend

DMA50/200, distance from 52w high/low, 1/3/6m returns → uptrend / sideways / downtrend

recommend_sip_action

band (+ trend) → pause / continue / step_up + suggested new amount

Setup

cd workshop/sip-advisor-mcp
python -m venv .venv && source .venv/bin/activate
pip install -r requirements.txt
cp .env.example .env      # then paste MFAPI_TOKEN

MFAPI_TOKEN is a JWT access-token for a partner / investor / admin user. Get it from the zinni-app browser session (DevTools → Application → Local Storage, or the Network tab) or a login API call. It is not the MCP static token — the REST endpoints use normal user auth.

Related MCP server: Sentimatix

Run

# stdio — for Claude Desktop
python server.py

# HTTP — for ChatGPT developer mode / remote clients  (serves :8000/mcp)
MCP_TRANSPORT=http python server.py

Quick check without an LLM:

pip install fastmcp   # includes the CLI
fastmcp run server.py --transport http &
npx @modelcontextprotocol/inspector   # connect to http://localhost:8000/mcp

Connect to Claude

Claude Desktop — merge claude_desktop_config.example.json into ~/Library/Application Support/Claude/claude_desktop_config.json (fix the absolute path + token), restart Claude Desktop.

Claude Code

claude mcp add sip-advisor -- python /abs/path/workshop/sip-advisor-mcp/server.py
# set MFAPI_TOKEN in the shell that launches claude, or via --env

Connect to ChatGPT

Run in HTTP mode, expose it (cloudflared tunnel --url http://localhost:8000 or ngrok http 8000), then Settings → Connectors → Advanced → Developer mode → Add the https://…/mcp URL. Regular ChatGPT connectors need search/fetch tools; this server works via developer mode or the Responses API only.

Demo script

"I run a ₹10,000/month NIFTY 50 SIP. Given where the market is, should I step it up, hold, or pause?"

The model chains get_nifty_valuation_context → get_nifty_trend → recommend_sip_action(band, trend, 10000) and explains the call with the PE percentile, the trend, and the as_of date.

Note on data freshness

The prod NSE OHLC / valuation tables can lag the live market by weeks. The tools return as_of — always read it out in the demo, and fix the ingestion in the data repo before going live.

Related MCP Connectors

Related MCP Servers

  • F
    license
    Not graded
    quality
    D
    maintenance
    Enables quantitative trading analysis with 12 tools for real-time market data, 28+ technical indicators, FinBERT-powered news sentiment analysis, and automated trading signal generation for stocks and forex.
    1
    -
  • F
    license
    Not graded
    quality
    D
    maintenance
    Real-time Indian stock market sentiment intelligence. Provides NSE/BSE news sentiment, aggregated stock & sector signals, and technical analysis.
    1
    -
  • A
    license
    Not graded
    quality
    D
    maintenance
    Connects AI assistants to real-time Indian stock market data with 34 tools for search, screening, analysis, portfolio tracking, and market insights across all NSE and BSE stocks.
    118 npm
    115
    MIT
  • F
    license
    Not graded
    quality
    C
    maintenance
    Enables NSE stock market research with screening, quotes, peer comparison, watchlists, alerts, and strategies using natural language.
    -