OpenAccountants

OpenAccountants

Open-source, accountant-verified tax computation skills for AI agents. 261+ skills across 172+ jurisdictions covering income tax, VAT/GST, payroll, corporate tax, crypto, and cross-border planning. Every skill is verified section-by-section by licensed CPAs and chartered accountants. 3 tools (list_skills, get_skill, get_skill_sections) and 1 prompt (skill-review).

Category
Visit Server

README

MseeP.ai Security Assessment Badge

OpenAccountants

Open-source tax computation skills for AI. 371 skills across 134 countries.

Upload to Claude, ChatGPT, or any LLM with your bank statement — or connect via MCP so your AI loads the right country's tax skills automatically. Get a working paper ready for your accountant and cut your accounting bill by 80%.

Your accountant charges by the hour. Most of that time is classifying transactions and filling forms. These skills do that work before the meeting. Your accountant reviews and signs off in 20 minutes instead of 3 hours.

Website: openaccountants.com

Two ways to use OpenAccountants

Method How it works Best for
Manual upload Download your country's folder, drag .md files into Claude / ChatGPT / any LLM Quick one-off use, any LLM
MCP server Install once, add one line of config — your AI discovers and fetches skills automatically, every conversation Developers, power users, Claude Desktop / Cursor

Both methods use the same skill files. MCP just removes the manual step. See Quick start for uploads or MCP server for the automated path.

Known limitations

Read this before you trust any output.

  • LLMs hallucinate and misread. These files steer the model; they do not guarantee correct numbers, classifications, or filings. Always have a qualified professional review before you act.
  • Tax law changes. Rates, thresholds, and forms go out of date. The repo is a snapshot; openaccountants.com may be ahead of what you cloned.
  • Verification is tiered, not binary. Most skills are not “battle-tested by a practitioner on real client data.” We publish Q1–Q5 tiers: Q1 is the bar for that; Q2 is research-verified to authority sites but not yet proven on real statements; Q3 is AI-drafted with citations but not independently verified. Many skills are Q3 or below — check the tier for the file you use.
  • Coverage is uneven. Only eight countries ship the full guided stack (VAT + income tax + SSC + walkthrough) in this repo; dozens more have multiple skills without that guided path; many jurisdictions are VAT/GST-only or partial. See Coverage below and each country folder’s README.

Honesty is the point: if you know where the gaps are, you can use the project safely. Skeptics welcome.


Quick start (60 seconds)

1. Find your country

Most countries (130+): everything you need is in one place under packages/. Upload every file in that folder.

packages/
├── malta/           ← 9 files (VAT + income tax + SSC + guided intake)
├── uk/              ← 8 files
├── germany/         ← 7 files
├── australia/       ← 9 files
├── canada/          ← 12 files
├── india/           ← 7 files
├── spain/           ← 7 files
├── ... 126 more countries

United States: there is no packages/us/ folder. US tax work is split across modular skills under skills/ (federal forms, orchestrators that sequence them, and per-state sales tax). That matches how US compliance layers (federal vs 50 states) rather than a single “country bundle” like Malta.

What you need Where it lives
Federal workflow base (how the AI should work) skills/foundation/us-tax-workflow-base.md
Federal content (Schedule C/SE, QBI, estimated tax, bookkeeping, etc.) skills/federal/ — upload all .md files here
Orchestration (intake, return assembly, cross-form checks) skills/orchestrator/ — include the us-*.md files that match your situation (e.g. us-federal-return-assembly.md; California freelancers also use us-ca-*.md)
State sales / use tax skills/us-states/ — pick your state folder and add those .md files if sales tax applies
Selected states with extra local files skills/florida/, skills/texas/, skills/newyork/, skills/washington/ when relevant

For a typical US freelance federal return, start with us-tax-workflow-base.md, everything in skills/federal/, and the us-*.md files in skills/orchestrator/ your case needs; add state pieces only if they apply.

Contributors: international packages are generated from skills/international/ via scripts/build-packages.py. US skills are edited directly under skills/ until a single generated US package exists.

2. Upload to your LLM

International: open the folder for your country under packages/. Upload all .md files.

United States: collect the .md files from the paths in the table above (same workflow below).

Upload to:

  • Claude.ai → Create a Project, add files as Project Knowledge
  • ChatGPT → Attach files to a conversation or create a Custom GPT
  • Any other LLM → Attach or paste the files

3. Attach your bank statement and go

Say:

Help me with my 2025 taxes. Here's my bank statement.

The AI will ask a few questions, classify every transaction, and produce a working paper for your accountant.


What's in each package

Every country folder contains:

File What it does Same everywhere?
foundation.md Tells the AI HOW to work — conservative defaults, output format, classification contract Yes
intake.md Onboarding questions, refusal checks, document inference Yes (country name filled in)
[country]-vat.md VAT/GST/sales tax rules, supplier pattern library, form mappings No — country-specific
[country]-income-tax.md Income tax brackets, deductions, transaction patterns No — country-specific
[country]-ssc.md Social security / pension contributions No — country-specific
[country]-guided-intake.md Full guided experience with detailed inference (if available) No — 8 countries have this
[country]-return-assembly.md Cross-checks between VAT, IT, and SSC (if available) No — 8 countries have this

Not every country has every file. Some have only VAT. Some have VAT + income tax + SSC. Eight countries have the full guided experience. Check the README inside each country folder.


Coverage

Full guided experience (8 countries)

Upload all files, say "help me with my taxes," and the AI walks you through everything:

Country What you get
Malta VAT + TA24 income tax + Class 2 SSC + provisional tax
United Kingdom VAT100 + SA103/SA100 + NIC + student loan
Germany UStVA + Einkommensteuer + Sozialversicherung
Australia BAS + ITR + super + Medicare levy
Canada GST/HST + T1/T2125 + CPP/EI
India GST + ITR-3/4 + advance tax
Spain IVA + IRPF + RETA
United States (CA) 1040 + Schedule C/SE + CA 540

Multi-skill countries (27 countries)

VAT + income tax + social contributions. No guided intake, but the AI uses the universal intake flow:

Austria, Belgium, Brazil, Chile, Colombia, Czech Republic, Denmark, France, Greece, Hungary, Ireland, Italy, Japan, Kenya, Mexico, Netherlands, New Zealand, Nigeria, Norway, Poland, Portugal, Romania, Singapore, South Africa, South Korea, Sweden, Switzerland

VAT/GST only (99 countries)

Consumption tax classification with country-specific supplier pattern libraries. From Albania to Zimbabwe.


How the skills work

The supplier pattern library

Every country skill contains a lookup table of local vendors. When the AI sees "BANK OF VALLETTA" or "DEUTSCHE TELEKOM" or "STRIPE PAYMENTS UK LTD" on your bank statement, it already knows the classification — no guessing.

Three outcomes per transaction

Outcome What it means What happens
Classified Documents carry enough info Applied automatically, no flag
Assumed Data missing, conservative default applied Flagged for your reviewer with the assumption disclosed
Needs Input Can't proceed without asking you One targeted question

Conservative defaults

When uncertain, the system always assumes MORE tax, never less. Your accountant can override a conservative position. They can't easily undo an aggressive one.


Quality tiers

Skills are partially verified at best unless you confirm the tier. Q1 means practitioner sign-off on real data; most files are not Q1. Full definitions (including Q4/Q5): docs/QUALITY-TIERS.md.

Tier What it means
Q1 — Battle-tested Run against real bank statements. Multiple iterations. Practitioner signed off.
Q2 — Research-verified Every rate verified against tax authority websites. Not yet tested on real data.
Q3 — AI-drafted Full structure and citations. Not independently verified.

MCP server

Instead of uploading files by hand, connect your AI client to OpenAccountants via the Model Context Protocol. Install once, configure once — every future conversation can pull the right country's skills automatically.

How it works

You:    "Help me with my Malta taxes. Here's my bank statement."
          ↓
Claude: calls list_jurisdictions → sees "malta"
Claude: calls list_files("malta") → foundation.md, malta-vat.md, …
Claude: calls get_file("malta", "foundation.md") → full skill loaded
          ↓
Claude: processes your bank statement with the correct tax rules

Install

git clone https://github.com/openaccountants/openaccountants.git
cd openaccountants
pip install ./mcp          # requires Python 3.10+

Connect

Claude Desktop — add to claude_desktop_config.json:

{
  "mcpServers": {
    "openaccountants": {
      "command": "openaccountants-mcp"
    }
  }
}

Cursor — add to .cursor/mcp.json or via Settings > MCP:

{
  "mcpServers": {
    "openaccountants": {
      "command": "openaccountants-mcp"
    }
  }
}

Full setup details, uv instructions, and environment variables: mcp/README.md.


For developers

Clone the repo

git clone https://github.com/openaccountants/openaccountants.git

Repo structure

openaccountants/
├── packages/              ← Ready-to-use jurisdiction packages (START HERE for non-US)
│   ├── malta/
│   ├── uk/
│   ├── germany/
│   └── ... 130 more
├── skills/                ← Source files (for contributors); START HERE for United States
│   ├── foundation/        ← Universal workflow base + us-tax-workflow-base.md
│   ├── federal/           ← US federal income tax / Schedule C / SE / QBI / etc.
│   ├── international/     ← Country-specific content (feeds build-packages.py)
│   ├── orchestrator/      ← Intake + assembly (incl. us-federal-return-assembly, us-ca-*)
│   ├── us-states/         ← US state sales & use tax skills
│   ├── cross-border/      ← Reverse charge, WHT, PE risk
│   ├── intelligence/      ← Deadlines, thresholds, optimisation
│   └── patterns/          ← Global vendor patterns
├── scripts/               ← Build tools
│   └── build-packages.py  ← Generates packages/ from skills/
└── docs/                  ← Planning docs, architecture, roadmaps

Rebuild packages after editing skills

python3 scripts/build-packages.py

Contribute

Your country needs you

These countries have AI-drafted skills (Q3) waiting for a human to verify the rates. No tax expertise required — if you can check your tax authority's website, you can help. Pick yours:

Country What needs checking Issue
France VAT, income tax, social contributions #4
Italy VAT, income tax, INPS contributions #5
Netherlands VAT, income tax #6
Brazil VAT, income tax, INSS, Simples Nacional #7
Japan Consumption tax #8
Mexico IVA #9
South Korea VAT #10
Ireland VAT, income tax, PRSI #11
Switzerland VAT #12
Singapore GST #13
Nigeria VAT #14
South Africa VAT #15
Poland VAT, ZUS contributions #16
Belgium VAT #17
Sweden VAT #18

Don't see your country? Open an issue and we'll create one.

Think your country's skill is wrong? Prove it.

Use Claude's deep research to verify rates against your tax authority's website. If you find an error — and you will — submit a PR. We've found errors in every single country we've verified. Yours probably has some too.

Prompt for deep research:
"Search [your country] tax authority website for the current VAT/GST rate,
registration threshold, and filing deadline. Compare against this skill file."

Build a skill for your country

Most countries have VAT but no income tax skill. Here's how to add one:

  1. Open any existing income tax skill (e.g., skills/international/malta/malta-income-tax.md)
  2. Follow the same structure — quick reference, transaction pattern library, tier 1/tier 2 rules
  3. Add your country's local bank patterns (how do transactions appear on YOUR bank statement?)
  4. Submit a PR — your name goes on the skill as the author
  5. An accountant verifies it → it goes live on openaccountants.com

Improve the supplier pattern library

Know how your local bank formats statements? Know what "ENERGA SA" or "COUPANG" looks like on a bank CSV? That one line you add saves every user in your country from a misclassification.

Get credited

Every skill you write, verify, or improve — your name is on it publicly. Contributors build a profile at openaccountants.com.

See CONTRIBUTING.md for the full guide.

Pull requests: contributions are accepted under the Contributor License Agreement (CLA.md). You explicitly agree by ticking the CLA box in the pull request template when you open a PR.


Disclaimer

All skills and outputs are for informational and computational purposes only. Not tax advice. Not a replacement for professional judgment. All outputs must be reviewed by a qualified professional before filing.

The most up-to-date, verified version is maintained at openaccountants.com.

Contact

info@openaccountants.com

License

Dual-licensed: AGPL-3.0 for open-source use, commercial license for proprietary products.

Contributions are licensed to the project under the Contributor License Agreement; see CONTRIBUTING.md and the PR template for how you opt in.

Recommended Servers

playwright-mcp

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.

Official
Featured
TypeScript
Magic Component Platform (MCP)

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.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

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.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

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.

Official
Featured
TypeScript
Kagi MCP Server

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.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

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.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured