taxbrainai-mcp
A standalone MCP server for Indian personal income-tax work (ITR-1/2/3/4 + post-filing notices) with 8 deterministic tools, running fully offline with no API keys.
README
taxbrainai-mcp
A standalone MCP server exposing 8 tools for
Indian personal income-tax work (ITR-1/2/3/4 + post-filing notices). It is built on
FastMCP as a thin wrapper over the deterministic
taxbrainai-compute engine plus a
small statute graph that ships inside the package.
It runs fully offline with no API keys — every tool here is deterministic or an optional bring-your-own-index lookup. There is no LLM call anywhere in this package.
This is the extracted, self-contained MCP surface of the larger TaxBrainAI project. In the full product, three of these tools are backed by an LLM / vision model and a hosted case-law corpus; here those halves are replaced by deterministic equivalents (or made optional), so the package installs and starts with no private backend, no secrets, and no redistributed third-party data. See "Honesty about each tool" below.
The 8 tools
| # | Tool | Kind | What it does |
|---|---|---|---|
| 1 | compute_tax |
Deterministic — Decimal compute | Income-tax liability for a structured input (salary, capital gains, deductions, age, residency, regime). No LLM in the math path. |
| 2 | regime_compare |
Deterministic — Decimal compute | Old vs new regime for the same inputs; recommends the cheaper, with savings delta + statutory citations. |
| 3 | simulate_scenario |
Deterministic — Decimal compute | What-if: apply changes to a base input and compare tax before/after. |
| 4 | cite_section |
Deterministic — statute graph | Resolves a section number to its title + a formatted citation, incl. the equivalent section in the other Act. |
| 5 | compare_acts |
Deterministic — statute graph | Maps a section across IT Act 1961 ↔ IT Act 2025 via the equivalence graph. |
| 6 | classify_notice |
Deterministic — table + pattern-match | Detects the notice section by pattern-matching the text, then returns curated section/type/deadline/guidance facts (not model-generated). Honest found: false when no known section is present. |
| 7 | reconcile_documents |
Deterministic — diff | Flags cross-document mismatches across Form 16 / 26AS / AIS pre-extracted fields (PAN redacted in output). OCR/vision extraction is out of scope — bring your own extractor. |
| 8 | find_case_law |
Optional — lexical BM25 retrieval | Lexical search over an optional case-law metadata index. No corpus ships with this package; set an env var to enable it (below), otherwise it returns an empty result set with a note. |
Honesty about each tool
- Deterministic Decimal compute (1–3): all math flows through the
property-tested
taxbrainai-computelibrary (Hypothesis-verified, cross-checked against the official Income-Tax Dept ITR utilities). The server never authors a number. - Deterministic statute graph (4–5): answered from a vendored snapshot of the
1961↔2025 statute graph (
nodes.csv+edges.csv, shipped inside the package). - Deterministic table / diff (6–7): in the full TaxBrainAI product these are LLM/vision-backed (a model reads the notice / extracts document fields). This standalone server keeps only the deterministic halves — a section/keyword matcher and a field-level reconciliation diff — so no model or key is required.
- Optional retrieval (8):
find_case_lawneeds a case-law index, which is not bundled (third-party data is not redistributed here). It degrades gracefully to an empty result set unless you point it at your own index.
Install
pip install "taxbrainai-mcp[mcp]" # server + FastMCP SDK
pip install taxbrainai-mcp # tool library only (no SDK; importable + testable)
taxbrainai-compute is a hard dependency and is installed automatically.
Run
# installed console script
taxbrainai-mcp
# or the module form
python -m taxbrainai_mcp.server
FastMCP's run() serves stdio by default and also supports Streamable HTTP
(build_mcp_server().run(transport="streamable-http")). No API keys are needed.
Optional: enable case-law search
export TAXBRAIN_MCP_CASELAW_INDEX=/path/to/caselaw.jsonl # JSONL of {"title","court",...}
If your index is derived from Indian Kanoon (indiankanoon.org), attribute it accordingly.
Connect a client (Claude Desktop)
Add to claude_desktop_config.json (mcpServers block):
{
"mcpServers": {
"taxbrain": {
"command": "taxbrainai-mcp"
}
}
}
If the console script is not on PATH, use "command": "python", "args": ["-m", "taxbrainai_mcp.server"].
Use the tools directly (no MCP SDK)
The tool logic is a plain class — handy for tests or embedding:
from taxbrainai_mcp import TaxBrainTools
t = TaxBrainTools()
print(t.compute_tax({"salary_income": 1275000, "regime": "new"})["total_tax"]) # 0 (rebated under Section 87A)
print(t.compare_acts("147")["equivalence"])
Registry manifest
server.json is the MCP-registry manifest (schema 2025-12-11), authored as a
draft for submission. Its _meta block lists the exact pre-publish checklist
(claim/publish the PyPI name, validate against the schema, authenticate the
io.github.harshil-projects namespace). The package runs locally over stdio — there is
no hosted remote endpoint.
Scope & disclaimer
Covers AY 2026-27 / FY 2025-26 for resident individuals / HUF (ITR-1/2/3/4). This is software for estimation, not tax, legal, or financial advice; verify against the official e-filing utility and a qualified professional before relying on any figure.
License
MIT — see LICENSE. Bundled statute graph data is derived from the text of
the Income-tax Act (official statutory text). taxbrainai-compute is MIT-licensed.
mcp-name: io.github.harshil-projects/taxbrainai-mcp
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.