bharat-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| BHARAT_MCP_IFSC_API | No | Base URL for the IFSC API; self-host the IFSC API if you like. | https://ifsc.razorpay.com |
| BHARAT_MCP_OUTPUT_DIR | No | Where invoice PDFs are saved. | ~/bharat-mcp/invoices |
| BHARAT_MCP_PINCODE_API | No | PIN code API base URL. | https://api.postalpincode.in |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
| prompts | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| validate_gstinA | Check whether an Indian GSTIN is valid (format, state code and checksum) and decode its state, PAN and entity type. Works offline; it does not confirm the registration is active on the GST portal. |
| calculate_gstA | Calculate GST for one or more line items. Works out intra-state (CGST+SGST, or CGST+UTGST in UTs) vs inter-state (IGST) from the supplier state and place of supply, handles GST-inclusive prices, cess and round-off, and gives the total in words. |
| create_gst_invoiceA | Generate a GST-compliant tax invoice as a PDF on the user's computer (supplier and buyer details, HSN/SAC, tax split, place of supply, reverse charge, amount in words, bank/UPI details). Returns the file path and the tax breakdown. Ask the user for any missing supplier or buyer details instead of inventing them. |
| search_hsn_sacA | Find HSN codes (goods) or SAC codes (services) from the GST portal's official HSN/SAC master list, by everyday description ("laptop", "ghee", "CA services") or by code prefix. Works offline. Returns official descriptions with their chapter and heading. For the GST rate of goods, pass the code to find_gst_rate. Choosing the right classification is the user's responsibility: show the candidates, explain the differences, and suggest confirming with their CA when it is unclear. |
| lookup_hsn_sacA | Check whether an HSN or SAC code exists in the GST portal's official list, and get its description, the chapter and heading it sits in, and its sub-codes. For a code that isn't listed, returns the nearest valid parent code and its sub-codes. Works offline. For the GST rate, use find_gst_rate. |
| find_gst_rateA | Official GST rates for goods, from the Gazette of India: Notification 09/2025-Central Tax (Rate) (rate schedules) and 10/2025-Central Tax (Rate) (exemptions), with every amendment up to the latest checked date applied (e.g. tobacco to 40% from 1 Feb 2026, psyllium exempt from 1 Nov 2026). Give an HSN code (4-8 digits) to get every entry that covers it, with the rate, CGST/SGST/IGST split, the notification and serial number, and the entry's exact wording; or give a product description to search the notifications' own wording. Several entries can cover one code with different rates: explain the conditions to the user rather than picking silently. Services (SAC 99xxxx) are not covered yet. Works offline. |
| amount_in_wordsA | Convert a rupee amount to words in the Indian numbering system (lakh, crore), as used on invoices and cheques. |
| parse_upi_narrationA | Decode bank-statement UPI narrations (e.g. 'UPI/DR/412345678901/SWIGGY/YESB/swiggy@ybl/Payment') into payee, VPA, app/bank, UTR/RRN reference and direction. Accepts up to 500 lines at once. |
| analyze_bank_statementA | Analyse an Indian bank statement locally: spending by category (food delivery, groceries, travel, bills, EMI, investments...), month-by-month in/out, top payees, largest spends, recurring payments and subscriptions, and UPI usage. Provide |
| convert_bank_statementA | Convert a PDF (or CSV) bank statement into a clean CSV that opens in Excel or Google Sheets: one row per transaction with date, narration, reference, debit, credit, balance, plus category, payee and decoded UPI details. Rows are checked against the running balance, and the result reports any that don't agree. Runs locally. |
| lookup_ifscA | Find the bank, branch, address, MICR and supported payment modes (UPI/IMPS/NEFT/RTGS) for an IFSC code. |
| lookup_pincodeA | Find the district, state and post offices for an Indian 6-digit PIN code. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
| monthly_money_review | Review a bank statement and suggest where to save |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 12 tools
Most tools target a clearly distinct resource or action (pincode, GSTIN, IFSC, invoice, statement), and descriptions explicitly route between near-neighbours (lookup_hsn_sac says 'for the GST rate, use find_gst_rate'). The main soft overlaps are lookup_hsn_sac vs search_hsn_sac (code vs description lookup) and parse_upi_narration vs analyze/convert_bank_statement, but each description draws the boundary well enough for an agent to choose correctly.
Names are consistently snake_case and almost all follow verb_noun (lookup_pincode, validate_gstin, calculate_gst, analyze_bank_statement, convert_bank_statement). Minor deviations: amount_in_words is a noun phrase with no verb, and retrieval is split across three verbs (lookup_/search_/find_) rather than one, which slightly weakens predictability.
Twelve tools is well within the sweet spot and each one maps to a distinct step in the Indian GST/invoicing/bank-statement workflow. No tool looks like filler or a redundant variant of another.
The GST lifecycle is well covered end-to-end: classify (search/lookup HSN-SAC), rate lookup, calculate, and generate a PDF invoice, plus supporting utilities (pincode, IFSC, amount in words, UPI narration, statement parse/convert). Gaps remain: find_gst_rate does not cover SAC/service rates even though search_hsn_sac returns SAC codes, there is no invoice retrieval/listing or bulk GSTIN validation, and validation is explicitly offline-only, but agents can work around these.