AI2Fin (2Fin) Tax MCP

Free public tax MCP: GST/VAT, income, company & capital-gains tax for 50+ countries, source-cited.

我該用這個嗎

品質與安全性

A
說明品質
100%
結構描述完整度
100%
命名品質
82%
汙染風險
100%
權限相符程度
100%
協定合規性
100%

根據工具定義與協定合規性的自動化分析。

上下文成本

~7,713Token(工具定義)
~8.6 KB典型回應大小
顯著的注意力影響(128k 上下文的 6.03%)

這是每次將伺服器的工具載入模型上下文時所消耗的約略 token 數量。數量越高,可用於其他工作的注意力就越少。

安裝

一鍵安裝

將以下內容加入你的 `claude_desktop_config.json` 檔案:

{
  "mcpServers": {
    "ai2fin-tax-mcp": {
      "url": "https://taxmcp.ai2fin.com"
    }
  }
}

遠端端點

https://taxmcp.ai2fin.comstreamable-http

它能做什麼

工具清單

工具(9)

🟢 唯讀🟡 寫入🔴 刪除⚪ 未知
🟢tax_rate_as_of(country, date)

Look up the GST/VAT standard rate that applied in a country ON A GIVEN DATE, rather than today's rate. Use it when reconciling or amending a past transaction, invoice or return — several countries changed rate recently (Estonia twice since 2024, Finland, Kazakhstan, Russia, Romania, Slovakia, Ghana, Israel, Ecuador), so the rate today is not the rate that applied then. For the current rate use tax_rate_lookup. The answer states plainly whether a real dated change backs it or whether only the present rate is on record.

輸入結構描述

{
  "type": "object",
  "properties": {
    "country": {
      "type": "string",
      "pattern": "^[A-Za-z]{2}$",
      "minLength": 2,
      "maxLength": 2,
      "description": "2-letter ISO country code, e.g. FI, EE, KZ"
    },
    "date": {
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
      "description": "The date to resolve the rate for, as YYYY-MM-DD, e.g. '2024-06-30'",
      "examples": [
        "2024-06-30"
      ]
    }
  },
  "required": [
    "country",
    "date"
  ],
  "additionalProperties": false
}

輸出結構描述

{
  "type": "object",
  "properties": {
    "country": {
      "type": "string",
      "description": "Country the rate applies to"
    },
    "date": {
      "type": "string",
      "description": "The date resolved"
    },
    "standardRate": {
      "type": "number",
      "description": "Standard rate in force on that date, as a fraction (0.24 = 24%)"
    },
    "standardRateDisplay": {
      "type": "string",
      "description": "The same rate formatted for reading"
    },
    "effectiveFrom": {
      "type": "string",
      "description": "ISO date the dated record that answered took effect. A new record can open without the standard rate moving (a reduced-rate change, or a new instrument restating the same rate), so for when THIS rate took effect read rateSince"
    },
    "effectiveTo": {
      "type": [
        "string",
        "null"
      ],
      "description": "ISO date that record closed, or null if it is still open"
    },
    "rateSince": {
      "type": "string",
      "description": "ISO date this standard rate took effect — the start of the unbroken run at this rate, which can be earlier than effectiveFrom"
    },
    "rateUntil": {
      "type": [
        "string",
        "null"
      ],
      "description": "ISO date this standard rate stops applying, or null when no change is on record"
    },
    "isCurrent": {
      "type": "boolean",
      "description": "True when this is also the rate in force today"
    },
    "datedChange": {
      "type": "boolean",
      "description": "True when a real recorded rate change backs this answer. FALSE means only the present rate is on record for this country, so an earlier change would not be visible here."
    },
    "source": {
      "type": "string",
      "description": "The national tax authority the figures were verified against (e.g. 'ATO — ato.gov.au')"
    },
    "dataVerifiedOn": {
      "type": "string",
      "description": "ISO date the rate data was last confirmed against the authority"
    },
    "mayBeStale": {
      "type": "boolean",
      "description": "True once the verification date is over a year old — re-confirm with the authority"
    },
    "disclaimer": {
      "type": "string",
      "description": "General-information note that must accompany any figure shown to a person"
    },
    "sourceUrl": {
      "type": "string",
      "description": "https link to the authority page the rate was verified against. Present only on rate answers backed by a verified ledger row — absent (never empty) otherwise, so its presence is itself the claim"
    }
  },
  "required": [
    "country",
    "date",
    "standardRate",
    "standardRateDisplay",
    "effectiveFrom",
    "effectiveTo",
    "rateSince",
    "rateUntil",
    "isCurrent",
    "datedChange",
    "source",
    "dataVerifiedOn",
    "mayBeStale",
    "disclaimer"
  ],
  "additionalProperties": false
}
🟢tax_rate_lookup(country)

Look up one country's headline tax rates: GST/VAT standard and reduced rates, top personal income tax rate, and company tax rate. Use it for a single country; to see several countries side by side use compare_countries, and to apply GST/VAT to an amount use compute_gst_vat. Rates come from a fixed dataset verified against the national tax authority — every answer names its source and verification date, and an unsupported country returns a clear error rather than a guess.

輸入結構描述

{
  "type": "object",
  "properties": {
    "country": {
      "type": "string",
      "pattern": "^[A-Za-z]{2}$",
      "minLength": 2,
      "maxLength": 2,
      "description": "2-letter ISO 3166-1 code of the country to look up (case-insensitive)",
      "examples": [
        "AU",
        "GB",
        "DE"
      ]
    }
  },
  "required": [
    "country"
  ],
  "additionalProperties": false
}

輸出結構描述

{
  "type": "object",
  "properties": {
    "country": {
      "type": "string",
      "description": "Country name"
    },
    "code": {
      "type": "string",
      "description": "2-letter ISO country code"
    },
    "taxFamily": {
      "type": "string",
      "description": "Consumption-tax family, e.g. 'GST', 'VAT' or a non-VAT system like retail sales tax"
    },
    "taxLocalName": {
      "type": "string",
      "description": "The tax's local name, e.g. 'GST', 'USt'"
    },
    "standardRate": {
      "type": "number",
      "description": "Standard consumption-tax rate as a fraction (0.1 = 10%)"
    },
    "standardRateDisplay": {
      "type": "string",
      "description": "Standard rate formatted for display"
    },
    "reducedRates": {
      "type": "array",
      "items": {
        "type": "number"
      },
      "description": "Reduced rates as fractions; empty when none"
    },
    "incomeTopRate": {
      "type": "string",
      "description": "Top personal income tax rate (display string; may note surcharges)"
    },
    "companyRate": {
      "type": "string",
      "description": "Headline company tax rate (display string)"
    },
    "source": {
      "type": "string",
      "description": "The national tax authority the figures were verified against (e.g. 'ATO — ato.gov.au')"
    },
    "dataVerifiedOn": {
      "type": "string",
      "description": "ISO date the rate data was last confirmed against the authority"
    },
    "mayBeStale": {
      "type": "boolean",
      "description": "True once the verification date is over a year old — re-confirm with the authority"
    },
    "disclaimer": {
      "type": "string",
      "description": "General-information note that must accompany any figure shown to a person"
    },
    "sourceUrl": {
      "type": "string",
      "description": "https link to the authority page the rate was verified against. Present only on rate answers backed by a verified ledger row — absent (never empty) otherwise, so its presence is itself the claim"
    }
  },
  "required": [
    "country",
    "code",
    "taxFamily",
    "taxLocalName",
    "standardRate",
    "standardRateDisplay",
    "reducedRates",
    "incomeTopRate",
    "companyRate",
    "source",
    "dataVerifiedOn",
    "mayBeStale",
    "disclaimer"
  ],
  "additionalProperties": false
}
🟢compute_gst_vat(country, amount, mode)

Add or remove a country's GST/VAT on a monetary amount, returning the net / tax / gross split. Use it to convert between tax-exclusive and tax-inclusive prices (invoices, quotes, receipts); for the rates themselves use tax_rate_lookup. Pure arithmetic on the country's current standard rate, rounded to 2 decimals, in the country's local currency. Countries without a single national GST/VAT (e.g. the US) return an explanatory error instead of a wrong number.

輸入結構描述

{
  "type": "object",
  "properties": {
    "country": {
      "type": "string",
      "pattern": "^[A-Za-z]{2}$",
      "minLength": 2,
      "maxLength": 2,
      "description": "2-letter ISO 3166-1 code of the country whose GST/VAT rate applies (case-insensitive)",
      "examples": [
        "AU",
        "GB"
      ]
    },
    "amount": {
      "type": "number",
      "minimum": 0,
      "description": "The monetary amount in the local currency — tax-exclusive when mode=add, tax-inclusive when mode=remove"
    },
    "mode": {
      "type": "string",
      "enum": [
        "add",
        "remove"
      ],
      "default": "add",
      "description": "'add' puts tax on top of a net amount; 'remove' extracts the tax already inside a gross amount"
    }
  },
  "required": [
    "country",
    "amount"
  ],
  "additionalProperties": false
}

輸出結構描述

{
  "type": "object",
  "properties": {
    "country": {
      "type": "string",
      "description": "Country name"
    },
    "code": {
      "type": "string",
      "description": "2-letter ISO country code"
    },
    "taxLocalName": {
      "type": "string",
      "description": "The tax's local name, e.g. 'GST', 'VAT'"
    },
    "rate": {
      "type": "number",
      "description": "Standard rate applied, as a fraction"
    },
    "mode": {
      "type": "string",
      "enum": [
        "add",
        "remove"
      ],
      "description": "Which conversion was performed"
    },
    "net": {
      "type": "number",
      "description": "Amount before tax (local currency, 2 dp)"
    },
    "tax": {
      "type": "number",
      "description": "The GST/VAT portion (local currency, 2 dp)"
    },
    "gross": {
      "type": "number",
      "description": "Amount including tax (local currency, 2 dp)"
    },
    "source": {
      "type": "string",
      "description": "The national tax authority the figures were verified against (e.g. 'ATO — ato.gov.au')"
    },
    "dataVerifiedOn": {
      "type": "string",
      "description": "ISO date the rate data was last confirmed against the authority"
    },
    "mayBeStale": {
      "type": "boolean",
      "description": "True once the verification date is over a year old — re-confirm with the authority"
    },
    "disclaimer": {
      "type": "string",
      "description": "General-information note that must accompany any figure shown to a person"
    },
    "sourceUrl": {
      "type": "string",
      "description": "https link to the authority page the rate was verified against. Present only on rate answers backed by a verified ledger row — absent (never empty) otherwise, so its presence is itself the claim"
    }
  },
  "required": [
    "country",
    "code",
    "taxLocalName",
    "rate",
    "mode",
    "net",
    "tax",
    "gross",
    "source",
    "dataVerifiedOn",
    "mayBeStale",
    "disclaimer"
  ],
  "additionalProperties": false
}
🟢compare_countries(countries)

Compare headline tax rates — GST/VAT, top personal income tax and company tax — across several countries at once. Use it to shortlist or contrast jurisdictions (relocation, expansion, pricing); for one country's full detail use tax_rate_lookup, and to apply a rate to an amount use compute_gst_vat. Codes the dataset does not cover are reported back in unmatchedCodes rather than silently dropped; every matched row cites its national tax authority.

輸入結構描述

{
  "type": "object",
  "properties": {
    "countries": {
      "type": "array",
      "items": {
        "type": "string",
        "pattern": "^[A-Za-z]{2}$",
        "minLength": 2,
        "maxLength": 2,
        "description": "2-letter ISO 3166-1 country code (case-insensitive)"
      },
      "minItems": 1,
      "maxItems": 60,
      "description": "Countries to compare — two or more makes a meaningful comparison",
      "examples": [
        [
          "AU",
          "GB",
          "SG"
        ]
      ]
    }
  },
  "required": [
    "countries"
  ],
  "additionalProperties": false
}

輸出結構描述

{
  "type": "object",
  "properties": {
    "rows": {
      "type": "array",
      "description": "One row per matched country",
      "items": {
        "type": "object",
        "properties": {
          "country": {
            "type": "string",
            "description": "Country name"
          },
          "code": {
            "type": "string",
            "description": "2-letter ISO country code"
          },
          "taxLocalName": {
            "type": "string",
            "description": "Local consumption-tax name"
          },
          "standardRateDisplay": {
            "type": "string",
            "description": "GST/VAT standard rate (display string)"
          },
          "incomeTopRate": {
            "type": "string",
            "description": "Top personal income tax rate (display string)"
          },
          "companyRate": {
            "type": "string",
            "description": "Headline company tax rate (display string)"
          },
          "source": {
            "type": "string",
            "description": "Authority this country's GST/VAT rate was verified against — says 'citation pending — not verified' when it was not"
          },
          "dataVerifiedOn": {
            "type": "string",
            "description": "ISO date this country's rate was last confirmed against the authority"
          },
          "mayBeStale": {
            "type": "boolean",
            "description": "True when that date is over a year old, or the row is unverified"
          },
          "sourceUrl": {
            "type": "string",
            "description": "https link to the authority page for the GST/VAT rate — present only for verified rows"
          }
        },
        "required": [
          "country",
          "code",
          "taxLocalName",
          "standardRateDisplay",
          "incomeTopRate",
          "companyRate",
          "source"
        ],
        "additionalProperties": false
      }
    },
    "unmatchedCodes": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Requested codes with no data — nothing was guessed for these"
    },
    "source": {
      "type": "string",
      "description": "The national tax authority the figures were verified against (e.g. 'ATO — ato.gov.au')"
    },
    "dataVerifiedOn": {
      "type": "string",
      "description": "ISO date the rate data was last confirmed against the authority"
    },
    "mayBeStale": {
      "type": "boolean",
      "description": "True once the verification date is over a year old — re-confirm with the authority"
    },
    "disclaimer": {
      "type": "string",
      "description": "General-information note that must accompany any figure shown to a person"
    },
    "sourceUrl": {
      "type": "string",
      "description": "https link to the authority page the rate was verified against. Present only on rate answers backed by a verified ledger row — absent (never empty) otherwise, so its presence is itself the claim"
    }
  },
  "required": [
    "rows",
    "unmatchedCodes",
    "source",
    "dataVerifiedOn",
    "mayBeStale",
    "disclaimer"
  ],
  "additionalProperties": false
}
🟢income_tax_estimate(country, income, taxYear, municipality, church, ...)

Estimate personal income tax and take-home pay for Australia, New Zealand, the UK, India, the US or Finland from gross annual income, using effective-dated brackets that roll over automatically each tax year (AU: Medicare levy + LITO; UK: National Insurance + personal-allowance taper; IN: standard deduction + s.87A rebate + surcharge + cess; US: federal FICA; FI: state + municipal + church tax, YLE tax, the health-insurance and employee pension/unemployment contributions and the earned-income credit, with the tax-card rate (veroprosentti) Vero would set). Use it for individual salary and take-home questions in these six countries only — other countries return 'not available' rather than a guess; their headline consumption-tax rates live in tax_rate_lookup. For Finland pass `municipality` (Finnish or Swedish name, e.g. 'Tampere' or 'Helsingfors') for that municipality's own rate — otherwise the national average is used and the answer says so — plus `church` for a parish member and `age` where it changes the contributions. This is a resident-individual estimate, not a filing calculation: it excludes state/regional taxes (UK Scotland, US state tax), non-standard deductions, Åland, and — for AU — HELP/HECS repayments (use student_loan_repayment).

輸入結構描述

{
  "type": "object",
  "properties": {
    "country": {
      "type": "string",
      "enum": [
        "AU",
        "NZ",
        "GB",
        "IN",
        "US",
        "FI"
      ],
      "description": "AU (Australia), NZ (New Zealand), GB (UK), IN (India), US or FI (Finland)"
    },
    "income": {
      "type": "number",
      "minimum": 0,
      "description": "Gross annual income in local currency, before tax"
    },
    "taxYear": {
      "type": "string",
      "description": "Tax-year label, e.g. '2025-26' (AU/NZ/GB/IN) or '2026' (US and FI, calendar year); omit to use the current tax year in that country's timezone"
    },
    "municipality": {
      "type": "string",
      "maxLength": 60,
      "description": "Finland only: the municipality (kunta) of residence on 31 December of the previous year, in Finnish or Swedish, e.g. 'Helsinki', 'Espoo', 'Tampere', 'Åbo'. Sets the municipal and parish tax rates; omit to use the national average municipal rate"
    },
    "church": {
      "type": "string",
      "enum": [
        "none",
        "evangelical-lutheran",
        "orthodox"
      ],
      "default": "none",
      "description": "Finland only: parish membership, for church tax. Needs `municipality`, because each parish sets its own rate"
    },
    "age": {
      "type": "integer",
      "minimum": 15,
      "maximum": 100,
      "description": "Finland only: age at the end of the tax year. Changes the employee pension and unemployment contributions and, from 66, the earned-income credit; omit to assume a working age of 18–52"
    }
  },
  "required": [
    "country",
    "income"
  ],
  "additionalProperties": false
}

輸出結構描述

{
  "type": "object",
  "properties": {
    "country": {
      "type": "string",
      "enum": [
        "AU",
        "NZ",
        "GB",
        "IN",
        "US",
        "FI"
      ],
      "description": "Country estimated"
    },
    "currency": {
      "type": "string",
      "description": "Currency of every monetary field"
    },
    "taxYear": {
      "type": "string",
      "description": "Tax year the brackets belong to"
    },
    "gross": {
      "type": "number",
      "description": "Gross annual income used"
    },
    "taxable": {
      "type": "number",
      "description": "Income after any pre-band deduction (UK personal allowance, IN standard deduction)"
    },
    "incomeTax": {
      "type": "number",
      "description": "Income tax before levies and offsets"
    },
    "medicareLevy": {
      "type": "number",
      "description": "Kept for compatibility: AU Medicare levy only, 0 for every other country. See `levies` for the general figure (UK National Insurance, IN surcharge + cess, US FICA)."
    },
    "lito": {
      "type": "number",
      "description": "Kept for compatibility: AU Low Income Tax Offset only, 0 for every other country. See `offsets` for the general figure (IN s.87A rebate)."
    },
    "offsets": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string"
          },
          "amount": {
            "type": "number"
          }
        },
        "required": [
          "name",
          "amount"
        ]
      },
      "description": "Credits that reduced the tax, by name — empty array when none apply"
    },
    "levies": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string"
          },
          "amount": {
            "type": "number"
          }
        },
        "required": [
          "name",
          "amount"
        ]
      },
      "description": "Charges on top of the offset tax, by name — empty array when none apply"
    },
    "totalTax": {
      "type": "number",
      "description": "Total tax after levies and offsets"
    },
    "takeHome": {
      "type": "number",
      "description": "Gross minus total tax"
    },
    "municipality": {
      "type": "string",
      "description": "Finland: the municipality whose rates were used, or \"national average\""
    },
    "municipalRate": {
      "type": "number",
      "description": "Finland: municipal income-tax rate applied, as a fraction"
    },
    "churchRate": {
      "type": "number",
      "description": "Finland: church-tax rate applied, as a fraction (0 for a non-member)"
    },
    "taxCardRate": {
      "type": "number",
      "description": "Finland: the withholding percentage (veroprosentti) Vero would put on the tax card — rounded up to the next half point. Employee pension and unemployment contributions are withheld on top of it"
    },
    "taxCardWithheld": {
      "type": "number",
      "description": "Finland: the tax the tax card covers for the year, to the cent (state, municipal, church, health insurance and YLE tax, less the credit)"
    },
    "separatelyWithheld": {
      "type": "number",
      "description": "Finland: employee pension and unemployment contributions for the year, to the cent — withheld by the employer on top of the tax card"
    },
    "assumptions": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Assumptions the figures depend on — relay them with the numbers"
    },
    "source": {
      "type": "string",
      "description": "The national tax authority the figures were verified against (e.g. 'ATO — ato.gov.au')"
    },
    "dataVerifiedOn": {
      "type": "string",
      "description": "ISO date the rate data was last confirmed against the authority"
    },
    "mayBeStale": {
      "type": "boolean",
      "description": "True once the verification date is over a year old — re-confirm with the authority"
    },
    "disclaimer": {
      "type": "string",
      "description": "General-information note that must accompany any figure shown to a person"
    },
    "sourceUrl": {
      "type": "string",
      "description": "https link to the authority page the rate was verified against. Present only on rate answers backed by a verified ledger row — absent (never empty) otherwise, so its presence is itself the claim"
    }
  },
  "required": [
    "country",
    "currency",
    "taxYear",
    "gross",
    "taxable",
    "incomeTax",
    "medicareLevy",
    "lito",
    "offsets",
    "levies",
    "totalTax",
    "takeHome",
    "source",
    "dataVerifiedOn",
    "mayBeStale",
    "disclaimer"
  ],
  "additionalProperties": false
}
🟢company_tax_estimate(country, profit, smallBusiness)

Estimate company/corporate income tax on an annual profit for Australia, the US, the UK, India, Canada or Finland — the six countries with source-verified company rates — applying the small-business/concessional rate where it covers all income. Use it for company profit questions in those countries; individuals belong to income_tax_estimate, and any other country’s headline rate to tax_rate_lookup. Headline-rate arithmetic only: US state tax, Canadian provincial tax, Indian surcharge/cess and UK marginal relief are flagged in the response note but not computed. Finland is a flat 20%; its proposed 18% for 2027 is noted, not applied, until it is law. A negative profit returns an explanation (losses carry forward), never a negative tax.

輸入結構描述

{
  "type": "object",
  "properties": {
    "country": {
      "type": "string",
      "enum": [
        "AU",
        "US",
        "GB",
        "IN",
        "CA",
        "FI"
      ],
      "description": "Country with source-verified company-tax data"
    },
    "profit": {
      "type": "number",
      "description": "Annual taxable profit in local currency; a negative value (a loss) returns an explanatory message instead of tax"
    },
    "smallBusiness": {
      "type": "boolean",
      "default": false,
      "description": "Apply the small-business/concessional rate — only honoured where it covers all income (AU base-rate entity, IN s.115BAA); GB/CA thresholds are noted instead"
    }
  },
  "required": [
    "country",
    "profit"
  ],
  "additionalProperties": false
}

輸出結構描述

{
  "type": "object",
  "properties": {
    "country": {
      "type": "string",
      "enum": [
        "AU",
        "US",
        "GB",
        "IN",
        "CA",
        "FI"
      ],
      "description": "Country estimated"
    },
    "taxLabel": {
      "type": "string",
      "description": "The country's name for the tax, e.g. 'Corporation Tax'"
    },
    "rateApplied": {
      "type": "number",
      "description": "Rate actually applied, as a fraction"
    },
    "tax": {
      "type": "number",
      "description": "Company tax on the profit (local currency, rounded)"
    },
    "afterTax": {
      "type": "number",
      "description": "Profit after tax"
    },
    "note": {
      "type": "string",
      "description": "What the headline calculation excludes (state/provincial tax, surcharge/cess, marginal relief …)"
    },
    "source": {
      "type": "string",
      "description": "The national tax authority the figures were verified against (e.g. 'ATO — ato.gov.au')"
    },
    "dataVerifiedOn": {
      "type": "string",
      "description": "ISO date the rate data was last confirmed against the authority"
    },
    "mayBeStale": {
      "type": "boolean",
      "description": "True once the verification date is over a year old — re-confirm with the authority"
    },
    "disclaimer": {
      "type": "string",
      "description": "General-information note that must accompany any figure shown to a person"
    },
    "sourceUrl": {
      "type": "string",
      "description": "https link to the authority page the rate was verified against. Present only on rate answers backed by a verified ledger row — absent (never empty) otherwise, so its presence is itself the claim"
    }
  },
  "required": [
    "country",
    "taxLabel",
    "rateApplied",
    "tax",
    "afterTax",
    "note",
    "source",
    "dataVerifiedOn",
    "mayBeStale",
    "disclaimer"
  ],
  "additionalProperties": false
}
🟢cgt_estimate(country, income, proceeds, costBase, capitalLosses, ...)

Estimate capital gains tax on one asset sale for a resident individual in Australia or Finland. AU (the default): the gain is taxed at the marginal rate on top of other income — pass income and heldMoreThan12Months; capital losses apply before the 50% discount for assets held over 12 months, per ATO ordering. FI: capital income tax of 30%, or 34% above 30 000 € of capital income, on the gain after the better of the actual cost or the deemed acquisition cost (hankintameno-olettama: 20% of the price, 40% after 10 years), with the 1 000 € small-disposals rule — pass yearsHeld, and otherCapitalIncome if there is any. Use it for share, property or crypto sales; for pay without an asset sale use income_tax_estimate. Other countries' CGT is not covered and returns an error. The main-residence exemptions and non-resident rules are out of scope.

輸入結構描述

{
  "type": "object",
  "properties": {
    "country": {
      "type": "string",
      "enum": [
        "AU",
        "FI"
      ],
      "default": "AU",
      "description": "AU (Australia, the default) or FI (Finland)"
    },
    "income": {
      "type": "number",
      "minimum": 0,
      "description": "AU: other taxable income for the year in AUD (salary etc.) — sets the marginal rate the gain stacks on. Required for AU"
    },
    "proceeds": {
      "type": "number",
      "minimum": 0,
      "description": "Sale price of the asset, in local currency"
    },
    "costBase": {
      "type": "number",
      "minimum": 0,
      "description": "What the asset cost, in local currency. AU: the cost base including eligible incidental costs. FI: the acquisition price (pass buying and selling costs as saleExpenses)"
    },
    "capitalLosses": {
      "type": "number",
      "minimum": 0,
      "default": 0,
      "description": "Capital losses to offset — AU: before any discount; FI: from this year or carried forward (five years)"
    },
    "heldMoreThan12Months": {
      "type": "boolean",
      "description": "AU: true when the asset was held over 12 months, which halves the taxable gain (the 50% CGT discount). Required for AU"
    },
    "yearsHeld": {
      "type": "number",
      "minimum": 0,
      "description": "FI: whole years owned — 10 or more raises the deemed acquisition cost from 20% to 40% of the price"
    },
    "saleExpenses": {
      "type": "number",
      "minimum": 0,
      "default": 0,
      "description": "FI: brokerage, fees and other costs of buying and selling"
    },
    "otherCapitalIncome": {
      "type": "number",
      "minimum": 0,
      "default": 0,
      "description": "FI: other capital income this year (dividends, rent, other gains) — decides how much of the gain falls above the 30 000 € threshold"
    },
    "totalProceedsThisYear": {
      "type": "number",
      "minimum": 0,
      "description": "FI: the year's total sale prices, this sale included, for the 1 000 € small-disposals rule; omit when this is the only sale"
    },
    "taxYear": {
      "type": "string",
      "pattern": "^\\d{4}$",
      "description": "FI: calendar tax year like '2026'; omit for the current year"
    }
  },
  "required": [
    "proceeds",
    "costBase"
  ],
  "additionalProperties": false
}

輸出結構描述

{
  "type": "object",
  "properties": {
    "country": {
      "type": "string",
      "enum": [
        "AU",
        "FI"
      ],
      "description": "Country estimated"
    },
    "taxYear": {
      "type": "string",
      "description": "Tax year whose rules were used"
    },
    "grossGain": {
      "type": "number",
      "description": "AU: proceeds minus cost base. FI: proceeds minus the larger of actual or deemed cost. Floored at 0, local currency"
    },
    "lossOffset": {
      "type": "number",
      "description": "Capital losses actually applied"
    },
    "discountApplied": {
      "type": "boolean",
      "description": "AU: whether the 50% discount halved the taxable gain. Always false for FI, which has no discount"
    },
    "taxableGain": {
      "type": "number",
      "description": "Gain the tax was charged on"
    },
    "cgtPayable": {
      "type": "number",
      "description": "Extra tax caused by the gain, in local currency"
    },
    "method": {
      "type": "string",
      "enum": [
        "actual",
        "deemed"
      ],
      "description": "FI: whether the actual cost or the deemed acquisition cost was deducted"
    },
    "costDeducted": {
      "type": "number",
      "description": "FI: the cost deducted from the price"
    },
    "loss": {
      "type": "number",
      "description": "FI: the loss on this sale, if any (only ever from the actual cost)"
    },
    "lossDeductible": {
      "type": "boolean",
      "description": "FI: whether that loss can be deducted"
    },
    "smallDisposalsExempt": {
      "type": "boolean",
      "description": "FI: true when the year's sale prices total 1 000 € or less, making every gain tax-free"
    },
    "notes": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "FI: rules that decided the answer, in plain words"
    },
    "source": {
      "type": "string",
      "description": "The national tax authority the figures were verified against (e.g. 'ATO — ato.gov.au')"
    },
    "dataVerifiedOn": {
      "type": "string",
      "description": "ISO date the rate data was last confirmed against the authority"
    },
    "mayBeStale": {
      "type": "boolean",
      "description": "True once the verification date is over a year old — re-confirm with the authority"
    },
    "disclaimer": {
      "type": "string",
      "description": "General-information note that must accompany any figure shown to a person"
    },
    "sourceUrl": {
      "type": "string",
      "description": "https link to the authority page the rate was verified against. Present only on rate answers backed by a verified ledger row — absent (never empty) otherwise, so its presence is itself the claim"
    }
  },
  "required": [
    "country",
    "taxYear",
    "grossGain",
    "lossOffset",
    "discountApplied",
    "taxableGain",
    "cgtPayable",
    "source",
    "dataVerifiedOn",
    "mayBeStale",
    "disclaimer"
  ],
  "additionalProperties": false
}
🟢student_loan_repayment(repaymentIncome, taxYear)

Estimate the compulsory annual study or training loan repayment (HELP, HECS, VSL, SFSS, SSL, AASL) for an Australian resident from their repayment income, using the marginal system introduced in 2025-26 with effective-dated thresholds that roll over each financial year. Use it for "how much HELP/HECS will I repay" questions in AU; it does not cover the loan balance, indexation or voluntary repayments, and applies to Australia only. Repayment income is broader than taxable income — it adds back reportable super contributions, reportable fringe benefits, net investment loss and exempt foreign income; pass that combined figure.

輸入結構描述

{
  "type": "object",
  "properties": {
    "repaymentIncome": {
      "type": "number",
      "minimum": 0,
      "description": "ATO repayment income in AUD (taxable income + reportable super + reportable fringe benefits + net investment loss + exempt foreign income)"
    },
    "taxYear": {
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}$",
      "description": "Financial-year label like '2025-26'; omit to use the current Australian financial year",
      "examples": [
        "2025-26",
        "2026-27"
      ]
    }
  },
  "required": [
    "repaymentIncome"
  ],
  "additionalProperties": false
}

輸出結構描述

{
  "type": "object",
  "properties": {
    "country": {
      "type": "string",
      "enum": [
        "AU"
      ],
      "description": "Always AU — this tool is Australia-only"
    },
    "taxYear": {
      "type": "string",
      "description": "Financial year whose thresholds were used"
    },
    "repaymentIncome": {
      "type": "number",
      "description": "Repayment income used (AUD)"
    },
    "minThreshold": {
      "type": "number",
      "description": "Income at or below which the repayment is nil (AUD)"
    },
    "repayment": {
      "type": "number",
      "description": "Compulsory repayment for the year (AUD)"
    },
    "effectiveRate": {
      "type": "number",
      "description": "repayment ÷ repayment income, as a fraction"
    },
    "source": {
      "type": "string",
      "description": "The national tax authority the figures were verified against (e.g. 'ATO — ato.gov.au')"
    },
    "dataVerifiedOn": {
      "type": "string",
      "description": "ISO date the rate data was last confirmed against the authority"
    },
    "mayBeStale": {
      "type": "boolean",
      "description": "True once the verification date is over a year old — re-confirm with the authority"
    },
    "disclaimer": {
      "type": "string",
      "description": "General-information note that must accompany any figure shown to a person"
    },
    "sourceUrl": {
      "type": "string",
      "description": "https link to the authority page the rate was verified against. Present only on rate answers backed by a verified ledger row — absent (never empty) otherwise, so its presence is itself the claim"
    }
  },
  "required": [
    "country",
    "taxYear",
    "repaymentIncome",
    "minThreshold",
    "repayment",
    "effectiveRate",
    "source",
    "dataVerifiedOn",
    "mayBeStale",
    "disclaimer"
  ],
  "additionalProperties": false
}
🟢superannuation_estimate(ordinaryEarnings, salarySacrifice, personalDeductible, otherTaxableIncome, taxYear)

Estimate Australian superannuation for an employee: the compulsory Superannuation Guarantee contribution (12% from 2025-26), concessional (before-tax) contributions cap usage, the 15% in-fund contributions tax, and the Division 293 high-earner surcharge — all effective-dated so a future budget year is picked automatically. Use it for "how much super will I get / can I contribute / will I be taxed" questions in AU; it does not model fund fees, insurance, investment returns, non-concessional contributions or carry-forward caps, and applies to Australia only. Salary sacrifice reduces salary; a personal deductible contribution is a deduction against total assessable income. Both add to the concessional total. The Division 293 threshold is tested against taxable income plus LOW-TAX contributions — that is, concessional contributions excluding any excess over the cap, since the excess is already counted inside taxable income. ordinaryEarnings therefore counts toward the threshold; pass otherTaxableIncome only for income beyond salary, such as investment or business income.

輸入結構描述

{
  "type": "object",
  "properties": {
    "ordinaryEarnings": {
      "type": "number",
      "minimum": 0,
      "description": "Ordinary time earnings the Superannuation Guarantee applies to, in AUD (usually salary/wages)"
    },
    "salarySacrifice": {
      "type": "number",
      "minimum": 0,
      "default": 0,
      "description": "Voluntary before-tax (concessional) contributions in AUD"
    },
    "personalDeductible": {
      "type": "number",
      "minimum": 0,
      "default": 0,
      "description": "Personal contributions claimed as a tax deduction in AUD (also concessional)"
    },
    "otherTaxableIncome": {
      "type": "number",
      "minimum": 0,
      "default": 0,
      "description": "Other taxable income in AUD — only used to test the Division 293 high-earner threshold"
    },
    "taxYear": {
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}$",
      "description": "Financial-year label like '2025-26'; omit to use the current Australian financial year",
      "examples": [
        "2025-26",
        "2026-27"
      ]
    }
  },
  "required": [
    "ordinaryEarnings"
  ],
  "additionalProperties": false
}

輸出結構描述

{
  "type": "object",
  "properties": {
    "country": {
      "type": "string",
      "enum": [
        "AU"
      ],
      "description": "Always AU — this tool is Australia-only"
    },
    "taxYear": {
      "type": "string",
      "description": "Financial year whose parameters were used"
    },
    "sgRate": {
      "type": "number",
      "description": "Superannuation Guarantee rate applied, as a fraction"
    },
    "guaranteeableEarnings": {
      "type": "number",
      "description": "Earnings the SG applied to after the maximum contribution base cap (AUD)"
    },
    "guaranteeAmount": {
      "type": "number",
      "description": "Compulsory employer SG contribution for the year (AUD)"
    },
    "concessionalContributions": {
      "type": "number",
      "description": "SG + salary sacrifice + personal deductible, all concessional (AUD)"
    },
    "concessionalCap": {
      "type": "number",
      "description": "Concessional contributions cap for the year (AUD)"
    },
    "excessConcessional": {
      "type": "number",
      "description": "Concessional contributions above the cap (AUD)"
    },
    "contributionsTax": {
      "type": "number",
      "description": "15% contributions tax on concessional contributions within the cap (AUD)"
    },
    "div293Applies": {
      "type": "boolean",
      "description": "Whether the Division 293 high-earner surcharge applies"
    },
    "div293Tax": {
      "type": "number",
      "description": "Division 293 surcharge (extra 15%), 0 when it does not apply (AUD)"
    },
    "assumption": {
      "type": "string",
      "description": "A stated assumption that materially affects the figures, when one applies (e.g. no carried-forward concessional cap)"
    },
    "source": {
      "type": "string",
      "description": "The national tax authority the figures were verified against (e.g. 'ATO — ato.gov.au')"
    },
    "dataVerifiedOn": {
      "type": "string",
      "description": "ISO date the rate data was last confirmed against the authority"
    },
    "mayBeStale": {
      "type": "boolean",
      "description": "True once the verification date is over a year old — re-confirm with the authority"
    },
    "disclaimer": {
      "type": "string",
      "description": "General-information note that must accompany any figure shown to a person"
    },
    "sourceUrl": {
      "type": "string",
      "description": "https link to the authority page the rate was verified against. Present only on rate answers backed by a verified ledger row — absent (never empty) otherwise, so its presence is itself the claim"
    }
  },
  "required": [
    "country",
    "taxYear",
    "sgRate",
    "guaranteeableEarnings",
    "guaranteeAmount",
    "concessionalContributions",
    "concessionalCap",
    "excessConcessional",
    "contributionsTax",
    "div293Applies",
    "div293Tax",
    "source",
    "dataVerifiedOn",
    "mayBeStale",
    "disclaimer"
  ],
  "additionalProperties": false
}

社群

為此伺服器評分

證據

近期觀測

已驗證未記錄版本9 個工具
已驗證未記錄版本9 個工具
已驗證未記錄版本9 個工具