Skip to main content

🇮🇳 MCP India Stack

A high-performance, offline-first Model Context Protocol (MCP) server equipping AI agents with Indian financial, tax, and government APIs. Zero authentication required.

PyPI version License: MIT MCP Compatible CI Verified on MseeP MseeP.ai Security Assessment Badge

📑 Table of Contents


📌 Problem Statement

  • Fragmented Access: Indian fintech, identity, and tax APIs are heavily siloed, requiring multiple disjointed integrations.
  • High Barriers to Entry: Existing solutions are plagued by paid subscriptions, strict rate limits, and complex API key management.
  • No Native AI Integration: There is no MCP-native standard designed specifically for autonomous AI agents to validate GSTIN, PAN, IFSC, or compute tax data.
  • Latency & Reliability Issues: Depending on remote third-party APIs for static/slow-moving datasets introduces unnecessary network delays and potential points of failure for AI workflows.

🛠️ Tech Stack

Layer Technology
Protocol MCP (FastMCP)
Runtime Python
Distribution PyPI / Smithery
Hosting Render
Datasets Offline-bundled (jsDelivr CDN sync)

🏗️ Architecture Diagram

+-----------------------------------------------------------+
|                        MCP Clients                        |
|       (Claude Desktop, Cursor, Custom Agent Frameworks)   |
+-----------------------------+-----------------------------+
                              |
                     STDIO / SSE Protocol
                              |
+-----------------------------v-----------------------------+
|                      MCP India Stack                      |
|                     (FastMCP Server)                      |
+-----------------------------+-----------------------------+
                              |
      +-----------------------+-----------------------+
      |                       |                       |
+-----v-------------+  +------v------------+  +-------v-----+
| Pure Offline (71) |  |   Offline + CDN   |  |   Market    |
| Format Validators |  |   Refresh (5)     |  |  Data (2)   |
| Tax Calculators   |  | IFSC, HSN, Pin    |  |  yfinance   |
| Legal Reference   |  | Bundled Datasets  |  |  Delayed    |
+-------------------+  +-------------------+  +-------------+

MCP Client ↔ FastMCP Server ↔ 78 modular tool endpoints


✨ Key Features

  • Offline-First Architecture: Bundles compressed datasets for zero-latency lookups (IFSC, Pincodes, HSN/SAC). No API rate limits.
  • Zero Authentication: No API keys, secrets, or subscriptions required. All logic runs locally.
  • Background Auto-Updates: Non-blocking CDN fetching ensures your datasets never go stale without impacting request latency.
  • Comprehensive Coverage: 80 dedicated tools for identity validation (PAN, Aadhaar, GSTIN, TAN, PRAN), tax calculation (Income Tax, TDS, GST), savings calculators (EPF, PPF, SIP), and master data lookups.
  • Enterprise-Ready: Thread-pool accelerated bulk validation tools for processing large batches of vendor or customer data.

🛡️ Authenticity System

Every verifying tool states how strongly an identifier is attested through standard levels (A0 to A4) instead of a simplistic binary flag:

  • A0 (Format & Checksum): Structural syntax and checksum algorithms pass offline (e.g. Luhn mod-36 for GSTIN, Verhoeff for Aadhaar).
  • A1 (Cross-Field Consistency): Cross-field rules pass offline (e.g. embedded PAN in GSTIN, ROC jurisdiction in CIN, RTO code in DL).
  • A2 (Authoritative Dataset Match): Record matched in a bundled authoritative dataset (e.g. RBI IFSC directory, India Post pincode list, NSDL ISIN list).
  • A3 (Cryptographic Artifact Verification): Digital signature on a supplied artifact verified offline (e.g. NIC e-invoice QR code, UIDAI offline XML).
  • A4 (Live Registry Attestation): Confirmed via an opt-in live registry provider.

Every response includes an additive authenticity object with verified checks, authority source, evaluation date, and explicit limitations (e.g. "active registration status not verified"). See docs/authenticity.md and docs/writing_a_provider.md for complete details.


🚀 Quick Start

Installation

pip install mcp-india-stack

Claude Desktop Configuration

Add the following to your claude_desktop_config.json file to enable the India Stack in Claude Desktop:

Windows (%APPDATA%\Claude\claude_desktop_config.json):

{
  "mcpServers": {
    "mcp-india-stack": {
      "command": "python",
      "args": ["-m", "mcp_india_stack"]
    }
  }
}

macOS/Linux (~/Library/Application Support/Claude/claude_desktop_config.json or ~/.config/Claude/claude_desktop_config.json):

{
  "mcpServers": {
    "mcp-india-stack": {
      "command": "python3",
      "args": ["-m", "mcp_india_stack"]
    }
  }
}

🛠️ Tool Catalog

🔍 Lookup Tools

✅ Validation Tools

📱 Identity & Contact

⚡ Bulk Operations

🧮 Tax & Financial Calculators (FY2025-26)

💰 Savings & Investment Calculators

🏠 Real Estate

💼 HR & Payroll

🏦 Banking & Payments

📈 Stock Market

  • get_stock_quote — Fetch live/delayed Indian stock quotes and summaries (NSE/BSE) using yfinance.
  • get_stock_history — Fetch historical end-of-day data for Indian stocks using yfinance.

📋 RTI Toolkit

🔐 Account Aggregator (Offline)


🔄 Agent Workflows & Resources

Prompt Workflows (Overview)

Built-in prompt templates to guide AI agents through complex multi-step tasks:

  • vendor_kyc — GSTIN, PAN, and IFSC verification sequence.
  • salary_planner — Income, HRA, and optimized take-home salary planning.
  • invoice_audit — Cross-referencing GSTINs, HSN codes, and applicable GST rates.

Server Resources (Overview)

Dynamic JSON resources provided directly to the LLM context:

  • india://status — Version, DB connectivity, and runtime flags
  • india://changelog — Structured changelog resource
  • india://schema/* — JSON schemas for all tool outputs

📡 Data Architecture & Freshness

This package bundles static datasets for offline-first workflows (approx. 10-11MB compressed footprint), covering IFSCs, Pincodes, HSN/SAC masters, and curated UPI handles.

All datasets are bundled directly within the package and checksum-verified at build time:

  • Offline First: Zero runtime network calls for dataset queries. No external CDN dependency or cache shadowing.
  • Deterministic: Data freshness is tied to package releases. To receive updated datasets, upgrade mcp-india-stack.
  • Integrity: Bundled dataset integrity is verified against a build-time SHA-256 manifest.

⚠️ Limitations

  • Stateless Validation: GSTIN, Aadhaar, Voter ID, DL, Passport, CIN, and DIN validators check structural formatting and checksums only. They do not verify active registration status with government issuing authorities.
  • Algorithmic Constraints: PAN validation is structural; the PAN check character logic is not publicly verifiable.
  • Tax Estimates: All tax calculations are algorithmic estimates based on FY2025-26 rules. Actual liability may differ. Always consult a Chartered Accountant.
  • Static Rates: HSN/SAC rates are static references and may vary based on specific conditions or new government notifications.

See NOTICES for detailed dataset attribution, licensing details, and third-party acknowledgments.

See LEGAL_NOTICE.md for important legal disclaimers including:

  • No Government Affiliation — This project is not affiliated with NIC, eCourts, MeitY, or any government body.
  • Not Legal Advice — All outputs (bare-act lookups, limitation calculations, court fee estimates, stamp duty estimates, RTI deadline/penalty calculations) are algorithmic estimates, not legal advice.
  • Data Accuracy — State-subject data (court fees, stamp duty) carries as_of / last_verified fields and is not live-verified against issuing authorities.
  • Personal Data — Identity validation (Aadhaar, PAN, etc.) is structural/checksum only. Users are responsible for DPDP Act compliance.

🚀 Launch Notes

This repository is release-ready for GitHub launch with:

  • 0.8.0 package metadata and changelog coverage.
  • A complete MCP server-card under docs/.well-known/mcp/server-card.json.
  • Local setup and publishing steps in SETUP.md.
  • Contribution guidance and versioning policy in CONTRIBUTING.md.

What's New in v0.8.0 — Authenticity System (A0-A4), Signed Datasets & Cryptographic Verification

  • Multi-Tier Authenticity System (8a): Every verifying tool outputs an additive authenticity envelope (A0 to A4) enforcing rules R1–R6.
  • Signed Dataset Manifests (8b): Detached Ed25519 dataset verification, key ring with rotation/revocation, monotonic anti-rollback checks, and --verify-data CLI command.
  • Cryptographic Artifact Verification (8c): Signed NIC B2B e-invoice QR code verification and UIDAI secure offline XML/ZIP e-KYC attestation with XXE/bomb defense.
  • Opt-In Registry Provider Interface (8d): Pluggable BaseRegistryProvider(ABC) with entry points discovery, FixtureProvider, circuit breaker, rate limiting, and SSRF defense.

Previous Releases

  • v0.6.0: Legal Reference (CNR decoder, court establishment lookup, bare-act section lookups for IPC/BNS/CrPC/BNSS/IEA/BSA, IPC↔BNS crosswalk, limitation period calculator, court fee, stamp duty) and RTI Toolkit (fee calculator, deadline tracker, penalty estimator, templates). Added yfinance-based market data tools.
  • v0.4.x: Deep statutory audit across capital gains thresholds, EPF wage ceilings, metro HRA rules, 7-slab presumptive tax, and GST late fee caps. See CHANGELOG.md for detailed history.

Offline-First Guarantee

The package classifies every tool under an authoritative network access attribute (none, optional, or required), surfaced programmatically in the india://status MCP resource (tools_network):

Network Tier Policy Tool Count Tools Included
none (Network: None) Pure offline execution. Zero network calls, zero external endpoints, no sockets opened. Computations, format checks, checksum algorithms, and tax rules execute entirely in-process using local logic. 73 validate_gstin, bulk_validate_gstin, validate_pan, bulk_validate_pan, decode_pan_type, validate_upi_vpa, decode_state_code, validate_aadhaar, bulk_validate_aadhaar, validate_voter_id, validate_driving_license, validate_passport, validate_cin, validate_din, validate_fssai, validate_tan, validate_mobile_number, validate_pran, validate_llpin, decode_isin, lookup_bank, lookup_bbps_biller, validate_epf_code, validate_esic_code, decode_digilocker_uri, verify_einvoice_qr, verify_aadhaar_offline_artifact, build_aa_consent_request, validate_aa_consent_artifact, decode_aa_fi_type, calculate_income_tax, calculate_tds, calculate_surcharge, calculate_hra_exemption, calculate_capital_gains, calculate_advance_tax, calculate_epf_esic, calculate_emi, calculate_gratuity, calculate_ppf_maturity, calculate_fd_maturity, calculate_rd_maturity, calculate_sip_returns, calculate_step_up_sip, calculate_nps_projection, calculate_sukanya_samriddhi, calculate_home_vs_rent, calculate_gst_late_fee, calculate_income_tax_interest, calculate_presumptive_tax, calculate_professional_tax, calculate_leave_encashment_tax, calculate_salary_restructuring, calculate_neft_rtgs_imps_charges, get_regulatory_deadlines, decode_cnr_number, lookup_court_establishment_code, lookup_ipc_section, lookup_bns_section, lookup_crpc_section, lookup_bnss_section, lookup_evidence_act_section, lookup_bsa_section, decode_ipc_bns_crosswalk, calculate_limitation_deadline, calculate_court_fee, calculate_stamp_duty, calculate_rti_fee, calculate_rti_deadline, calculate_rti_penalty_estimate, draft_rti_application, draft_first_appeal, draft_second_appeal
optional (Network: Optional) Datasets are bundled locally offline (IFSC master, postal pincodes, HSN/SAC master). When enabled, background non-blocking CDN refresh or optional live lookup enriches local data. If network is unavailable or blocked, falls back seamlessly to bundled local datasets without blocking or error. 5 lookup_ifsc, bulk_validate_ifsc, lookup_pincode, lookup_hsn_code, calculate_gst
required (Network: Required) Live financial market data feeds. Must reach market upstream endpoints (e.g. Yahoo Finance) to retrieve current quotes or historical prices. If network is blocked or unavailable, returns structured error envelopes without unhandled exceptions. 2 get_stock_quote, get_stock_history

Metadata

Release files for mcp-india-stack 0.8.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for mcp-india-stack 0.8.0
File Size Uploaded Provenance Actions
mcp_india_stack-0.8.0.tar.gz 10.3 MB With provenance Details for mcp_india_stack-0.8.0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for mcp-india-stack 0.8.0
File Interpreter ABI Platform Actions
mcp_india_stack-0.8.0-py3-none-any.whl Python 3 none any Details for mcp_india_stack-0.8.0-py3-none-any.whl

Total release size: 20.6 MB

Release files / mcp_india_stack-0.8.0.tar.gz

Download URL mcp_india_stack-0.8.0.tar.gz
Size 10.3 MB
Tags Source
SHA-256 checksum
How to use checksums
9da4678634871291aa957e1747e8c21da14bc936f9922f3bc10a0b7f0e746e2c
BLAKE2b-256 checksum
How to use checksums
054c3377b20d16c597bbca752129a27cb90be075625bae29522f65a2b5435c8b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Nov 5, 2026.

Transparency log

Release files / mcp_india_stack-0.8.0-py3-none-any.whl

Download URL mcp_india_stack-0.8.0-py3-none-any.whl
Size 10.3 MB
Tags Python 3
SHA-256 checksum
How to use checksums
160875ad7b827c449d6d892fdc1a13bc2637d8ee09b1b8e33b059960793c9dad
BLAKE2b-256 checksum
How to use checksums
9b9f14765f76dc21383e90be0817544ca1c94267a6623f323301b8c92048aff6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Nov 5, 2026.

Transparency log

Security for mcp-india-stack 0.8.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

Both files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for mcp_india_stack-0.8.0.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Nov 5, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page