MyFinanceMCP — Angel One Portfolio Tracker
A multi-user MCP server and web dashboard for tracking your Angel One portfolio, with AI-powered daily briefings, a trading agent, and calibrated ML price predictions.
Features
- MCP Server (SSE transport) — connect from Cursor, Claude Desktop, or any MCP-compatible client
- Web Dashboard — browser-based portfolio viewer with login, holdings, positions, orders, and P&L pages
- Finance ADK Agent — chat with the Google ADK finance assistant (Angel One + research tools) via the Agent tab. Requires
OPENROUTER_API_KEY on the server
- Trading ADK Agent — risk-aware, proposal-based order execution agent. Analyses prices and technicals; proposes trades but never places orders without explicit approval
- Daily Briefing Scheduler — automatically sends a WhatsApp message each day with per-stock signals (green/yellow/red), LightGBM predictions, and an LLM-written summary of your portfolio
- ML Price Prediction — gradient-boosted direction models over 1 day, 1 week and 1 month, trained on daily bars with purged walk-forward validation and isotonic calibration. Features span technicals, cross-sectional ranks, market and industry context, delivery and turnover flow, point-in-time fundamentals and FinBERT news sentiment. Every prediction states which engine produced it; when no model is registered the response is labelled a rule-based score, not a model output
- Local market store — the whole NSE cash market, one call per trading day from the exchange bhavcopy, kept as Parquet (
services/marketstore). Carries delivery percentage, which the broker candle API does not expose
- Peer-relative research — valuation and quality percentiles against NSE industry peers, analyst estimate revision momentum, and ownership/flow signals
- Mandate compliance gate — proposed trades are checked against a dated, versioned ruleset and blocked with the specific rule cited; every decision, including blocked ones, lands in an append-only decision record
- Admin API — REST endpoints (
/api/admin/*) for registering premium users with Fernet-encrypted Angel credentials and managing their schedules
- Multi-user — each session authenticates with its own Angel One credentials; premium users' credentials are stored encrypted in Postgres
- Zero plaintext credential storage — transient sessions live only in RAM; premium user credentials are encrypted at rest with a Fernet key
This is the beginning of the README. Read the rest at the original. Read the full README ↗