{
  "markdown": "# Tax MCP\n\nThe [Model Context Protocol](https://modelcontextprotocol.io) server behind the free tax tools at **[ai2fin.com/tools/compare](https://ai2fin.com/tools/compare)** — so assistants (Claude, ChatGPT, agents) can call them directly.\n\n> **Stateless and no-auth.** It computes over public rate data only and stores nothing. (This is separate from the authenticated app MCP at `app.ai2fin.com/mcp`, which works on your real financial data behind OAuth.)\n\n## Tools\n\n| Tool | What it does |\n|---|---|\n| `tax_rate_lookup` | A country's GST/VAT, income and company tax rates |\n| `compute_gst_vat` | Add or remove a country's GST/VAT on an amount |\n| `compare_countries` | Compare tax across countries — [ai2fin.com/tools/compare](https://ai2fin.com/tools/compare) as a callable |\n| `income_tax_estimate` | Income tax estimate over effective-dated brackets (AU, NZ) |\n| `company_tax_estimate` | Company tax estimate with small-business thresholds (AU, US, GB, IN, CA) |\n| `cgt_estimate` | Capital-gains tax estimate — losses, discount, marginal stacking (AU resident individuals) |\n\nThe estimate tools answer only for countries with verified data and degrade to \"not available\" elsewhere. Every result carries a \"general information, not tax advice\" note and cites its source authority.\n\n## Data = single source\n\n`data/rates.json` is produced by the website's `gen:tax` pipeline — the same source behind the [calculator and comparison pages](https://ai2fin.com/tools/compare) — so the MCP, the widgets and the pages never disagree. Don't hand-edit it.\n\n## Run / deploy\n\n```bash\ncd tax-mcp\nnpm install\nnpm run dev      # local: POST JSON-RPC to http://localhost:8787\nnpm run deploy   # to Cloudflare; then map a route e.g. taxmcp.ai2fin.com\nnpm run bundle   # writes dist/worker.js — a single paste-ready file for the\n                 # Cloudflare dashboard editor when the CLI isn't available\n```\n\nFull deploy steps (dashboard copy-paste **or** CLI): **[DEPLOY.md](DEPLOY.md)**.\n\nAbuse protection is via the Cloudflare dashboard (rate limiting + WAF) — not auth.\n\n## Connect\n\nAdd the deployed URL as a custom MCP connector in Claude (Settings → Connectors) or ChatGPT (developer mode). A `GET` to the root returns server info; the MCP handshake is `POST` JSON-RPC (`initialize` → `tools/list` → `tools/call`). It pairs with the live comparison tool at [ai2fin.com/tools/compare](https://ai2fin.com/tools/compare).\n\n## Quick check\n\n```bash\ncurl -s https://taxmcp.ai2fin.com -X POST -H 'content-type: application/json' \\\n  -d '{\"jsonrpc\":\"2.0\",\"id\":1,\"method\":\"tools/call\",\"params\":{\"name\":\"compute_gst_vat\",\"arguments\":{\"country\":\"AU\",\"amount\":100,\"mode\":\"add\"}}}'\n```\n",
  "bytes": 2667,
  "sha": "c6cdb7ba4932796d14a43ed95dbfe24e904a0309dfb6795171b28d29117dca4f",
  "repo_slug": "embracingearth-space/ai2fin-tax-mcp",
  "fonte": "repo",
  "truncated": false,
  "api": "https://agentalog.com/api/listings/mcp_com_ai2fin_ai2fin_tax_mcp_17b8ab80/readme"
}