OpenAccountants

io.github.openaccountants由 GitHub 账号 openaccountants 发布v1.0.0更新于 Oct 26, 2026

Open-source AI accounting skills verified by licensed accountants (tax, VAT, payroll).

已验证Streamable HTTP可网页运行金融知识与记忆商业与电商

概览

AI 生成的概览

远程 MCP 服务器,为助手提供经来源引用的税务、增值税/消费税与薪资技能、规则和申报期限,覆盖 190 多个辖区。

可以做什么
  • 从税务问题入手,定位到合适的辖区与意图
  • 按主题、slug 或辖区搜索并打开技能,附质量等级与审阅人
  • 跨一个或多个辖区查询税率、门槛和规则,并给出官方来源
  • 获取申报与缴款期限,浏览覆盖的辖区和审阅会计师
  • 校验欧盟增值税号(VIES 登记库),并检查审计豁免门槛
  • 获取报价信息,且仅在用户要求时发送匿名反馈或人工协助请求
适用场景
当助手需要回答税务、增值税/消费税、薪资、申报或审计问题,并希望依据有引用的来源而非记忆作答时适用,尤其涉及多个国家或美国各州时。
运行要求
需要在支持 MCP 的客户端中把远程 MCP 端点添加为连接器;未声明任何软件包、密钥或环境变量。部分功能(保存的所在辖区、会计师引导)面向已登录用户。
安装前请注意
输出仅为一般参考而非专业建议,可能不完整、过时或不符合用户实际情况;依赖前应查看每项技能的审阅状态。分享工具会把反馈或工作请求发送给服务方,仅在用户要求时使用。增值税校验会查询欧盟 VIES 登记库。

安装

在 SourceWeft 中

  1. 打开 控制台中的 OpenAccountants,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Web executable,通过 Streamable HTTP。 远程服务在工作区中配置后即可从网页运行时运行。

交给智能体安装

把这段提示词粘贴到 Claude Code、Codex、Cursor 等智能体,或 SourceWeft 对话中。智能体会读取该服务器的安装指南,先向你展示发布者、端点和登录方式,经你同意后再把它添加到你的客户端。密钥不会写进任何命令。

阅读 https://sourceweft.com/mcp/io.github.openaccountants%2Fopenaccountants/install.md,并按其中说明把这个 MCP 服务器接入我的客户端。修改任何配置之前,先告诉我它的发布者、端点和登录方式,等我确认。不要把 API 密钥写进命令或我会提交的文件;问我密钥应从哪里获取。

查看智能体所依据的安装指南

其他 MCP 客户端

把它添加到你客户端的 mcpServers 配置中。

{
  "mcpServers": {
    "openaccountants": {
      "type": "http",
      "url": "https://www.openaccountants.com/api/mcp"
    }
  }
}

README

OpenAccountants

Open tax skills for AI. Your AI answers tax questions from memory. Add these skills and it answers from the law: every rate, threshold and deadline cited to its official source, for 190+ jurisdictions.

[License: AGPL-3.0] [PyPI] [GitHub stars]

2,132 AI skills across 249 jurisdictions · 33 accountant-reviewed · 39 named accountants · 6,115 questions answered through connected AIs

Live from openaccountants.com — updated 2026-10-30 by the nightly sync.


Find your country

Browse all countries, by region, with the state of each pack. United States: federal and states.


Add to your AI

Add this address to Claude, ChatGPT, Cursor, Windsurf or any AI that takes a connector:

https://www.openaccountants.com/api/mcp

Guided setup: openaccountants.com/connect

Then ask a question your AI would otherwise guess at:

"What's the combined sales tax rate in Manatee County, Florida for 2026?"

Prefer self-hosting or manual files?
  • pip MCP server: pip install openaccountants-mcp (mirrors this repo's packages/)
  • Manual: download your jurisdiction's folder from packages/ and upload the files to your AI. Start with your country's main package; index.json is the machine-readable inventory.

Also listed on Smithery and the MCP Registry.


Contribute

Three ways in, all in CONTRIBUTING.md:

  • I can write. Take a country and write its missing skills from the law.
  • I am an accountant. Review a skill and put your name on it.
  • I found a mistake. Open an issue with the source that shows it.

How to read a skill

This library holds accountant-reviewed skills and skills no accountant has signed off yet. Check each skill version's review record before relying on it; a named author is distinct from a professional reviewer. Skill content is source-available under the terms in LICENSING.md.

Every skill is in exactly one state:

StateMeaning
Accountant-reviewedA named, licensed accountant reviewed the complete skill. Their name is in the frontmatter (reviewed_by:) and on the public roster
Checked against the lawBuilt to the standard in docs/skill-template.md: every figure cited to the law and checked against the statute by an independent review before merge; no accountant has signed it off yet
Sourced from the lawOlder skill not yet rebuilt to the standard: every figure cited to an official source; no accountant has signed it off yet

The definitions: docs/QUALITY-TIERS.md. How skills are built, checked and corrected: docs/ACCURACY-METHODOLOGY.md. Which number to quote and where it is measured: docs/COVERAGE.md.

⚠️ General reference, not advice. Skills may be incomplete, outdated, or wrong for your facts. Have a qualified professional review outputs before filing, payment, or action.


Need the work done?

OpenAccountants also does the bookkeeping, VAT, payroll and tax work for businesses, in the countries they work in. Talk to us. The skills and the AI connection stay free.


How it stays accurate

A tax library is only as good as its worst stale number, so machines re-check this one every night:

  • The maths check re-reads every skill and flags sums that do not add up, tax bands with gaps, totals that do not total, and years that disagree.
  • The source watch visits the official pages the figures came from and raises a hand when a page changes.
  • The refresh engine re-derives the stalest skills from official sources on a fixed monthly budget, refusing to publish any figure without a link.
  • The nightly exam tests whether AIs actually said what the skills say that day, or improvised. Improvisation gets caught, counted and fixed at the source.

The sync runs both ways: platform edits land here as commits under the author's own name, and merged PRs here flow back into what every AI serves, credited to you. A skill with an accountant's byline never changes without that accountant's one-click approval.

The whole story, in plain words: openaccountants.com/how-it-works


For developers

WhatWhere
Skill source (per jurisdiction)skills/
Per-country bundles (generated)packages/
Machine-readable inventoryindex.json
LLM entry pointllms.txt
Python MCP servermcp/ · PyPI
Repo architecture + syncdocs/REPO-LAYOUT.md · docs/WEBSITE-SYNC.md

API and platform integrations: openaccountants.com/for-developers


Related open-source projects

Independent, open-source review aids and calculation tools that complement the OpenAccountants skill library:

  • payday-super-checker (Apache-2.0): Verifies superannuation contributions against Australian Payday Super deadlines (in force since 1 July 2026) and estimates SG charge exposure on late payments, with all workings and statutory assumptions disclosed.
  • div7a-loan-review (Apache-2.0): Reviews Division 7A loan terms and minimum yearly repayments against the ATO benchmark interest rate, with fabricated inputs and explicit refusal boundaries.
  • xero-trial-balance-export (Apache-2.0): Exports a Xero trial balance to CSV only when month-movement and YTD column pairs both balance exactly.
  • ato-benchmark-compare (Apache-2.0): Evaluates business P&L statements locally against the Australian Taxation Office (ATO) small business performance benchmarks, surfacing variance flags and ratio analyses.

(External tools provide computational review assistance and do not constitute tax or legal advice.)


License

Contact: [email protected] · Security policy · Cite this repo

来源:README.md,提交 59c23ac

工具

15

start

Answer a tax question (call first)

Call this first for any tax, VAT/GST, payroll or filing question about a country or US state, such as "how much tax will I pay in Spain", "do I need to register for VAT", "when is my tax return due", "is this deductible", "how is a freelancer or a company taxed in Germany", "sales tax in Texas" or "what changes if I move to Portugal". Pass the user's question as `intent` and the country or US state as `jurisdiction` ('DE', 'US-TX', 'Florida'). If no place is named, start infers one when the question makes it clear and says so in `jurisdiction_source`. Returns the skills to read next (`skills_to_load`, open each with get_skill), or what is still needed, usually the country. Covers 190+ jurisdictions; where no skill exists yet it returns a research_brief naming the official sources.

输入参数intent必填reasonacting_asjurisdictiontaxpayer_type

search_skills

Search tax skills by topic

Find the skill for a specific tax topic by keyword: a deduction, form, regime or rule such as 'home office deduction', 'Schedule C', 'reverse charge', 'crypto capital gains' or 'Beckham regime'. Optionally limit to one jurisdiction or domain. Returns matching skill slugs to open with get_skill. Set content_type='method' to find step-by-step methods (run them via start), each tagged accountant-reviewed or source-cited.

输入参数query必填domaincontent_typejurisdiction

get_skill

Read a tax skill

Open a skill by slug (from start, search_skills or search_rules) to answer the user's question. Returns the skill's rules and method, its quality tier, the named accountant where one reviewed it, a `section_index` of sections not inlined, and a provenance footer to keep with the answer.

输入参数slug必填reason

search_rules

Look up tax rates and rules

Look up tax rates, thresholds and rules in one or many jurisdictions, such as 'VAT rates in MT, IE and DE', 'income tax brackets for 2025' or 'rules mentioning reverse charge'. Returns a bundled markdown rule set plus each jurisdiction's official source (`official_source`). For one specific figure in one jurisdiction a skill is often more complete (search_skills then get_skill): a figure can sit in a skill without being a separate rule here, and then this returns related guidance instead. Entries tagged `GUIDANCE` are text, not values. Figures are not certified current: confirm each against `official_source` and prefer it when they disagree. By default returns all matching rules, each tagged with its verification status; status:'verified' excludes draft, needs_update and unsure rules; it still includes research-verified (source-cited) rules, so it does not mean accountant-reviewed. list_rule_facets gives the valid filter values.

输入参数textlimitrolestopicoffsetreasonstatusdomainsstatusestax_yearblock_typesjurisdictions

list_skills

Browse tax skills

Browse the skills for one jurisdiction or domain (for example every skill for 'MT', or every 'payroll' skill), each with its quality tier and verification status. For a specific topic, search_skills is quicker. Filter by jurisdiction, domain or role ('foundation' | 'compute' | 'orchestrator' | 'reference'). Paginated (default 100, max 200); page with offset/next_offset.

输入参数rolelimitdomainoffsetcategoryjurisdiction

get_skill_sections

Read more sections of a skill

Follow-up to get_skill: fetch sections it listed in `section_index` as not inlined (for example a supplier-pattern library). Pass `section_index` for one section, or omit it to get every section with its heading and markdown.

输入参数slug必填section_indexsection_indices

get_deadlines

Tax filing deadlines

Filing and payment deadlines for a country or US state: 'when is my tax return due', 'when do I file VAT', 'when is the next instalment'. Returns upcoming dates and recurring filing rhythms (monthly VAT, quarterly instalments) from the OpenAccountants tax calendar. Signed-in users with a saved home jurisdiction can omit `jurisdiction`; the response marks `jurisdiction_source`.

输入参数horizon_daysjurisdiction

list_rule_facets

List queryable rule facets (no args)

Helper for search_rules: lists the values you can filter on (live jurisdictions, domains, roles, rule kinds, statuses, tax years, a sample of topics) and the defaults. Takes no arguments. Use it when unsure of a filter value rather than guessing.

无需输入参数。

start_help

What can you help with? (no args)

Call when the user has no tax question yet and opens with 'what can you do?', 'how can you help me?' or 'where do I start?'. Takes no arguments. Returns the two scoping questions plus the available intents and jurisdictions; for a signed-in approved accountant, a short personal `orientation` briefing instead. Once there is a question, call `start`.

无需输入参数。

list_jurisdictions

List all jurisdictions covered

Answers 'which countries do you cover?' or 'what is there for [country]?'. Returns every jurisdiction with published skills (countries as ISO 2, US states as US-XX, Canadian provinces) with skill counts, accountant-reviewed counts and the named lead accountant where there is one.

无需输入参数。

list_verifiers

List named accountant verifiers

Answers 'who reviewed this?' or 'which accountants are behind this?'. Returns the named licensed accountants who have signed off on OpenAccountants jurisdictions, with their credentials and the jurisdictions they cover.

输入参数jurisdiction

get_quote

Get an OpenAccountants fee estimate

Call only when the user asks what OpenAccountants charges, requests a quote, or asks whether their current fee is fair. Returns the same published plans, service prices, limits, market exceptions and hourly rate as the website, plus the engagement process and contact details. Match the client's scope to the listed prices; incomplete scope means the total is provisional. Separately quoted services must be confirmed by OpenAccountants. This tool does not create an engagement.

输入参数reasonservicescurrent_feeentity_typejurisdictionmonthly_volume

validate_vat_number

Validate an EU VAT number (live VIES lookup)

Check live whether an EU VAT number is valid and registered, for example before applying a B2B reverse charge, zero-rating an intra-EU sale or onboarding a supplier. Queries the European Commission's VIES registry and returns the verdict plus the registered business name and address where the authority discloses them. Coverage: the 27 EU member states plus 'XI' (Northern Ireland); use 'EL' for Greece. Other countries, including the UK, are not supported yet: say live validation is not available there rather than guessing. If the registry is down the response says so.

输入参数vat_number必填country_code

check_audit_exemption

Check statutory audit exemption

Answers 'does my company need an audit?' for a private limited company in Malta (MT, Article 185(2) micro thresholds) or the UK (GB, small-company thresholds before and after 6 April 2025). A deterministic check of turnover, balance sheet total and average employees. Returns 'exempt' | 'review' | 'audit_required' | 'cannot_determine', the per-threshold table, the rule citation, and whether a named accountant has confirmed the thresholds ('draft' = source-cited draft; say which). Pass prior_year figures: most regimes are two-consecutive-year tests, so without them a qualifying year returns 'review'. 'cannot_determine' is a valid outcome (unsupported jurisdiction, wrong currency, a shape needing judgment). Use the determination as returned, not thresholds from memory.

输入参数currency必填turnover必填prior_yearentity_typegroup_memberjurisdiction必填employees_average必填financial_year_end必填balance_sheet_total必填

share_with_openaccountants

Share this with OpenAccountants

Only when the user asks: sends their feedback, or their request for a person to check or do the work, to OpenAccountants. Two modes. (1) `note`: an anonymized note about the guidance (a gap, a workaround you needed, or via `skill_slug` a bug in a specific skill). Anonymize hard: no names, amounts, or PII. (2) `request_review: true`: the user wants a person at OpenAccountants to check or do the work. Typical requests: 'can an accountant check this?', 'can someone file this for me?', 'can someone do this for me?', 'I want an accountant', 'can I talk to a person?'. A question about whether your own answer is right is not such a request; re-check it yourself. Also requires `working_paper` (complete), `jurisdiction`, `scenario`, and `contact_email`. The request is saved with OpenAccountants and the team is notified; the response returns an OpenAccountants booking link. The call is free. The work itself is paid: OpenAccountants does it through its accountants, with what is done and the fee agreed on the call before anything starts. Never describe the work itself as free. Call at most once per user request; not as a routine closing step.

输入参数note必填scenariotax_yearskill_slugcontact_namejurisdictioncontact_emailworking_paperrequest_review

版本历史

1
  1. v1.0.0最新Sep 16, 2026

评分

已满足适用检查项的 100%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通必需25 分
  • 已声明认证方式必需10 分
  • 已列出工具必需15 分
  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分