Aus Accounting MCP
Australian accounting tools for Claude, Cursor, Codex and other MCP clients. The server runs on your machine over stdio, needs no API key or account, and makes no network calls once installed.
- ATO small business benchmarks: compare a business's P&L figures with the benchmark ranges for its industry.
- Payday Super: review contribution timing for one payday or a whole employer, and build a 4-file evidence pack for a practitioner's workpaper.
- Division 7A: get the benchmark interest rate and review s 109N loan terms and s 109E minimum yearly repayments for one loan. Matters outside that scope are refused.
- 9 tax and super worksheets: GST, resident basic tax, CGT, FBT, first-year depreciation, quarterly SG, Schedule 1 PAYG withholding, super contribution caps and account-based pension minimums, each within a stated period and scope.
- Cited research: search your own Markdown library, or a local copy of federal tax legislation, with every result cited to its file and line, or its Act, section and compilation.
- Test data: generate synthetic CTR and BAS fixtures for integration testing.
Not tax advice. Payday Super and Division 7A reviews are experimental and need human review before consequential accounting action. Fixtures are not a lodgement. Ryan Duguid is not a registered tax agent or BAS agent. Project support is limited to software issues reproduced with fabricated data. Do not send taxpayer information or request advice, return preparation, tax-treatment confirmation, or lodgement. See DISCLAIMER.md.
Install
Requires Python 3.10+ and uv:
uvx aus-accounting-mcp
The server waits for an MCP client over stdio. Tool calls read bundled data and any folders you configure. They do not contact the ATO or the Federal Register, change records or lodge. Your MCP host still sends tool arguments and results to its model provider, so use fabricated data with a hosted model.
uvx keeps the version it first downloaded. To upgrade, name the release in your
client configuration, for example aus-accounting-mcp==<version>.
Client integration
For Claude Desktop, Cursor, Windsurf and other hosts that run local stdio servers:
{
"mcpServers": {
"aus-accounting": {
"command": "uvx",
"args": ["aus-accounting-mcp"]
}
}
}
Add to Cursor, or from a terminal:
claude mcp add --scope user aus-accounting -- uvx aus-accounting-mcp
codex mcp add aus-accounting -- uvx aus-accounting-mcp
The client setup guide covers Gemini CLI, VS Code, Zed and others. ChatGPT connectors and the Claude.ai web app accept only remote servers, so they cannot run this one.
Example requests
Ask in plain English. Each of these fabricated requests resolves to one tool call:
| Ask | Tool |
|---|---|
| "Compare a hairdresser with $180,000 sales, no other income, $60,000 wages, $30,000 rent and $40,000 other expenses to the ATO benchmarks." | get_ato_benchmarks |
| "Super for a 6 August 2026 payday was $120 and was sent on 14 August. As at 20 August, is it on time?" | calc_payday_super_deadline |
| "What is the Division 7A benchmark interest rate for 2026-27?" | get_div7a_benchmark_rate |
| "An employee who gave a TFN and claims the tax-free threshold (scale 2) is paid a regular $1,000 weekly wage in 2026-27, with no offsets, loans, bonuses or other adjustments. How much PAYG should be withheld?" | calculate_tax_worksheet |
Tools
| Tool | Use |
|---|---|
list_ato_benchmark_industries |
Find a business type in the bundled ATO dataset. |
get_ato_benchmarks |
Compare supplied P&L figures with ATO benchmark ranges. |
calc_payday_super_deadline |
Review timing for one super contribution. |
review_payday_super_contributions |
Review related contributions together for one employer. |
build_payday_super_evidence_pack |
Return 4 review files in memory for a practitioner's workpaper. |
calculate_tax_worksheet |
Calculate one of 9 worksheets with established scope and period. |
get_div7a_benchmark_rate |
Get a reviewed Division 7A benchmark rate, or UNKNOWN. |
review_div7a_loan |
Review s 109N terms and s 109E minimum yearly repayments for one supplied amalgamated loan. |
refuse_div7a |
Explain unsupported Division 7A matters. Call without arguments. |
search_accounting_library |
Search a configured local Markdown library. |
read_accounting_library |
Read cited lines from that library. |
search_tax_legislation |
Find provisions in a configured local legislation corpus, best match first. |
read_tax_legislation_section |
Read one cited provision in full, in parts when it is long. |
define_tax_term |
Find an expression's statutory definitions in that corpus. |
search_tax_rates |
Find legislated rates and thresholds with the provision that sets them. |
generate_synthetic_sbr_fixture |
Generate fabricated CTR/BAS test data. |
Missing figures remain unknown. Preserve UNKNOWN, REFUSED, not_supplied and
null results; ok: true means the tool ran, not that a review passed. Supply an
explicit assessment date and fund-receipt evidence, both the date and the amount
received (received with matched_amount), before reading a Payday Super result
as ON_TIME.
The research tools need a folder you supply: set AUS_ACCOUNTING_LIBRARY_ROOT to an
authorised Markdown folder, or AUS_ACCOUNTING_CORPUS_ROOT to a legislation corpus,
such as one built by au-tax-legislation-corpus.
The package ships neither. A corpus row is a point-in-time copy, not a live lookup.
The reference covers every exclusion, input rule, prompt, resource, the evidence pack format and the evaluation suite. The website guide has further examples.
30-second demonstration
From apps/aus-accounting-mcp/ in a repository checkout, run the fabricated example. It shows the tools running on synthetic data; it is not evidence that a review passed:
uv run --locked aus-accounting-mcp-demo
The checked text transcript and proof and provenance record the expected output, limitations and asset source.
Licence and releases
MIT License. Created by Ryan Duguid. Release notes, v0.2.9 release record, CITATION.cff.
Release files for aus-accounting-mcp 0.2.9
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| aus_accounting_mcp-0.2.9.tar.gz | 304.7 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| aus_accounting_mcp-0.2.9-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 367.4 kB
Release files / aus_accounting_mcp-0.2.9.tar.gz
| Download URL | aus_accounting_mcp-0.2.9.tar.gz |
|---|---|
| Size | 304.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
d8decbd76054377bb46523f037aeafa91f5702ad4f843818d26afbd766bd4314
|
|
BLAKE2b-256 checksum How to use checksums |
5c182202b9f3fcb88e7023069258c6dfa1a1bd22f5a437f988bd397073b02eb1
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
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 Sep 24, 2026.
Transparency logRelease files / aus_accounting_mcp-0.2.9-py3-none-any.whl
| Download URL | aus_accounting_mcp-0.2.9-py3-none-any.whl |
|---|---|
| Size | 62.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
0f8143fe0c46cabc14d05d4aa63e0483a9d67ba149d45c19382d9c55bdcd1aa9
|
|
BLAKE2b-256 checksum How to use checksums |
ebb263c237e5594a434d0920797fbddaf9ac6a7bea8d4ee3791bc24a8dd6fe1a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
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 Sep 24, 2026.
Transparency log