Every change Wellknown observed on this MCP server, newest first, with what it was before and what it became. Tool-surface changes carry the definition diff. Nothing here is edited after the fact.
Changed the definition of "check_audit_exemption"
⟨62 unchanged words⟩ accountant has confirmed the thresholds ('draft' =source-citednodraft;accountant has confirmed them yet; say which). Pass prior_year figures: most ⟨35 unchanged words⟩
Changed the definition of "check_audit_exemption", "get_quote", "get_skill" and 1 more
⟨57 unchanged words⟩ citation, and whether a named accountant hasattestedconfirmed the thresholds ('draft' = source-cited draft; say ⟨41 unchanged words⟩
CallONLYonly when the userhas askedasks what OpenAccountants charges,asked forrequests
Changed the definition of "get_skill", "get_skill_sections", "list_jurisdictions" and 5 more
Read a taxGuideskill
Open aGuideskill by slug (from start, search_skills or search_rules) to answer the user's question. Returns theGuide'sskill's rules and method, its quality tier, the ⟨21 unchanged words⟩
⟨92 unchanged words⟩ object"},"required_facts":{"description":"Intake
Changed the definition of "get_skill"
⟨90 unchanged words⟩ "string"}},"type":"object"},"required_facts":{"description":"Intake Guides only: the questions a professional asks before computing, verbatim from the Guide. Answer from what the user said or data you hold, then ask the rest grouped, before any figure.","items":{"properties":{"question":{"type":"string"},"topic":{"type":["string","null"]}},"type":"object"},"type":"array"},"section_index":{"description":"Every section of the ⟨70 unchanged words⟩
Added "get_quote" (14 tools before, 15 now)
Get an OpenAccountants fee estimate — Call ONLY when the user has asked what OpenAccountants charges, asked for a quote, or asked whether their current accountant's fee is fair. Returns the anchors (fees we have actually quoted, with what they cover), how we price, the guard rails, a minimum, and the ways to confirm. It returns no number: you work out a fair estimate for the user's country and volume from the anchors, in their currency, with a 15 to 20% contingency as a separate line, and label it an estimate that a person at OpenAccountants confirms in writing. Never call this unprompted and never present the result as a binding…
Changed the definition of "check_audit_exemption", "get_deadlines", "get_skill" and 11 more
Check statutory audit exemption(deterministic, cited, verified)
DETERMINISTICAnswerscheck'doesofmywhethercompany need an audit?' for a private limited companyqualifiesinforMalta
Changed the definition of "list_verifiers", "share_with_openaccountants" and "validate_vat_number"
⟨17 unchanged words⟩ Use when the user asks who verified askillGuide or wants to see theverifieraccountantsnetwork.behind the library. If the user wantsone oftheirthemowntoworkreviewcheckedtheirorwork
Certificate changed, valid to 2027-01-04
Changed the definition of "get_skill"
⟨84 unchanged words⟩ ,"tier":{"enum":["accountant-verified","accountant-authored","research-verified"],"type":"string"}},"type ⟨46 unchanged words⟩ "},"verification":{"description":"Verification summary","type":["object","null"]},"written_by":{"description":"The accountant who wrote this Guide ({name, profile_url}), when it is accountant-authored; null otherwise.","type":["object","null"]} ⟨5 unchanged words⟩
Servers that share this record's repository now have records of their own: "openaccountants-mcp". Checks before this date include them.
Certificate recorded, valid to 2026-11-05
Authorization not required
First tool surface recorded: 14 tools (server version 1.4.0)
Showing the latest 13 events. The API returns up to 500 and filters by kind: ?kind=tool_surface_changed
{"properties":{"anchors":{"items":{"type":"object"},"type":"array"},"booking_url":{"type":"string"},"contact_email":{"type":"string"},"floornext_action":{"type":"objectstring"},"next_actionprice_list":{"type":"stringobject"},"pricing_method":{"items":{"type" ⟨7 unchanged words⟩ "type":"array"}},"required":["anchorsprice_list","pricing_method","rules","next_action"],"type":"object"}
⟨198 unchanged words⟩ this skill ({name, profile_url}), whenitaisnamedaccountant-authored;approved accountant authored it; null otherwise.","type":["object"," ⟨6 unchanged words⟩
⟨84 unchanged words⟩ },"tier":{"description":"1 =accountant-verifiedaccountant-checked, 2 =research-verifiednot independently checked","type":"integer"},"verification":{ ⟨32 unchanged words⟩
⟨6 unchanged words⟩ readOnlyHint":true,"title":"Read a taxGuideskill"}
Read more sections of aGuideskill
⟨8 unchanged words⟩ ,"title":"Read more sections of aGuideskill"}
⟨11 unchanged words⟩ [country]?'. Returns every jurisdiction with publishedGuidesskills (countries as ISO 2, US states as US-XX, Canadian provinces) withGuideskill counts, accountant-reviewed counts and the named lead ⟨5 unchanged words⟩
Browse taxGuidesskills
Browse theGuidesskills for one jurisdiction or domain (for example everyGuideskill for 'MT', or every 'payroll'Guideskill), each with its quality tier and verification ⟨31 unchanged words⟩
⟨6 unchanged words⟩ ,"readOnlyHint":true,"title":"Browse taxGuidesskills"}
⟨44 unchanged words⟩ For one specific figure in one jurisdiction aGuideskill is often more complete (search_skills then get_skill): a figure can sit in aGuideskill without being a separate rule here, and ⟨66 unchanged words⟩
Search taxGuidesskills by topic
Find theGuideskill for a specific tax topic by keyword: ⟨22 unchanged words⟩ limit to one jurisdiction or domain. Returns matchingGuideskill slugs to open with get_skill. Set content_type='method' to ⟨12 unchanged words⟩
{"properties":{"content_type":{"description":"What kind ofGuideskill to find. 'method' = step-by-step procedures you EXECUTE ⟨7 unchanged words⟩ omitted = reference material (rates/thresholds/rules). AGuideskill can be either or both.","enum": ⟨66 unchanged words⟩
⟨6 unchanged words⟩ ,"readOnlyHint":true,"title":"Search taxGuidesskills by topic"}
⟨38 unchanged words⟩ or via `skill_slug` a bug in a specificGuideskill). Anonymize hard: no names, amounts, ⟨139 unchanged words⟩
⟨138 unchanged words⟩ when the note is feedback about a SPECIFICGuideskill, by its slug (e.g. 'us-sales-tax'). Replaces ⟨39 unchanged words⟩
⟨97 unchanged words⟩ clear and says so in `jurisdiction_source`. Returns theGuidesskills to read next (`skills_to_load`, open each with ⟨6 unchanged words⟩ usually the country. Covers 190+ jurisdictions; where noGuideskill exists yet it returns a research_brief naming the official sources.
UpcomingTaxtaxfiling deadlinesfor a jurisdiction
Upcoming filing/payment deadlinesFiling andrecurring filing rhythms (monthly VAT, quarterlypaymentinstalments)deadlines for a country or US state,:from'whentheisOpenAccountantsmy taxcalendar.returnUsedue',it'whenwheneverdotheIuserfileasksVAT', 'when isXthedue',nextmentionsinstalment'.aReturnsfilingupcomingdate,datesorandwhenrecurringafilingheads-uprhythmsabout(monthlyanVAT,imminentquarterlydeadlineinstalments)wouldfromhelp.the OpenAccountants tax calendar. Signed-in users with a saved home jurisdiction can omit`jurisdiction` — it fills from their profile`jurisdiction`;(the response marksjurisdiction_source accordingly).`jurisdiction_source`.
⟨4 unchanged words⟩ openWorldHint":false,"readOnlyHint":true,"title":"UpcomingTaxtaxfiling deadlinesfor a jurisdiction"}
GetRead a taxskillGuide
FetchOpen apublished skillGuide by slug (from start,includingsearch_skillsitsorcurrent-versionsearch_rules)markdownto answer the user's question. Returns the Guide's rules and method, its quality tier, the namedverifieraccountant(whereaccountant-verified)one reviewed it, a `section_index` of sections not inlined, and aprovenance/attributionprovenancefooter.footer to keep with the answer.
⟨4 unchanged words⟩ openWorldHint":false,"readOnlyHint":true,"title":"GetRead a taxskillGuide"}
Get aReadskill'smore sections of a Guide
Fetch the parsed sections of a skill's current version. Each section has a heading and its markdown content. Use thisFollow-up topull a specificget_skill:sectionfetchthatsectionsget_skillit listed in `section_index` as not inlined (e.g.for example a supplier-pattern library)—.passPass `section_index`to fetchforjustonethatsection,one.orOmitomit it to get everysection.section with its heading and markdown.
⟨4 unchanged words⟩ openWorldHint":false,"readOnlyHint":true,"title":"Get aReadskill'smore sections of a Guide"}
Answers 'which countries do you cover?' or 'what is there for [country]?'. Returns every jurisdiction with publishedskills —Guides (countries(as ISO 2), US states(as US-XX), Canadian provinces—) withskillGuide counts,accountant-verifiedaccountant-reviewed counts,andnamed lead verifier. Use whentheuser asks 'which countries does OpenAccountants cover?' or 'what's available for [country]?' Avoidsnamedpaginatingleadthroughaccountantlist_skillswheretotherecomputeisthis.one.
ReturnsHelper for search_rules: lists themetadatavalues you can filter onwith `search_rules` — the(live jurisdictions,thedomains, roles,block types (rule kinds), statuses, tax years,anda sample of topics—)plusand the defaults.CallTakesthisnobeforearguments.`search_rules`Usetoitlearnwhentheunsurevalidof a filtervaluesvalue rather than guessing.
ListBrowse tax& accounting skillsGuides
ListBrowsepublishedtheOpenAccountantsGuidesskillsforwithonetheirjurisdictionqualityortierdomainand(forverificationexamplestatus.everyOptionallyGuidefilterforby'MT',jurisdictionor(e.g.every'US','payroll''MT'Guide),'DE',each'GB'),withdomainits(thequalityaccountingtierarea,ande.g.verification'vat-gst',status.'payroll'For a specific topic,'income-tax')search_skills is quicker. Filter by jurisdiction, domain or role ('foundation' | 'compute' | 'orchestrator' | 'reference').Results are paginatedPaginated (default 100, max 200per call)— unfiltered browsing of the full ~1,100-skill catalogue requires paging via offset/next_offset, so jurisdiction/domain filters;arepagestronglywithrecommended.offset/next_offset.
⟨4 unchanged words⟩ openWorldHint":false,"readOnlyHint":true,"title":"ListBrowse tax& accounting skillsGuides"}
Returns named licensed accountants who have signed off on OpenAccountants jurisdictions, with their credentials and covered jurisdictions. Use when the user asks whoAnswersverified'whoareviewedGuidethis?' orwants to see the'which accountantsbehindarethebehindlibrary.this?'.IfReturns theuser wants their own work checkednamedorlicenseddone,accountantsthatwhoishaveasignedrequestofftoon OpenAccountantsthrough `share_with_openaccountants`jurisdictions, with`request_review:theirtrue`,credentialsatand theuser'sjurisdictionsrequesttheyonly.cover.
SearchLookrulesupacrosstaxjurisdictionsrates and rules
Sweep tax rulesLookACROSSupjurisdictionstaxandrates,metadatathresholds andget back a bundled markdown rule set plus the jurisdiction'srulesOFFICIALinSOURCE.oneBestorformanycross-cuttingjurisdictions,questionssuch—as 'VAT rates in MT, IE and DE','all'incomeincome-taxtaxthresholdsbrackets for 2025',or 'rules mentioning reverse charge'.WHENReturnsYOUaWANTbundledONEmarkdownSPECIFICruleFIGUREsetforplusoneeachjurisdictionjurisdiction's(aofficialsinglesourcerate,(`official_source`).thresholdFororonedate),specificpreferfigure`search_skills`inthenone`get_skill`:jurisdictionthea Guide iswhere a topicoftenismorecoveredcompletein(search_skillsfull,thenandget_skill): a figure canexistsit inthea Guide withoutexisting asbeing a separate rule here,in whichandcasethen thistool will returnreturns related guidancerather than the number you asked for.instead. Entrieswhose text is guidance rather than a value aretagged `GUIDANCE`— never read one as a figure. IMPORTANT: this returns human-reviewed GUIDANCE andaredoestext,NOTnotcertifyvalues.thatFiguresaarefigurenotiscertified current—: confirm eachnumberagainstthe official source returned in`official_source`before you state it,and preferthat sourceit when they disagree. By default returnsALLall matching rules, each tagged with its verification status;passstatus:'verified'forexcludesaccountant-/research-verifieddraft,only.needs_updateCalland`list_rule_facets`unsurefirstrules;toitseestill includes research-verified (source-cited) rules, so it does not mean accountant-reviewed. list_rule_facets gives thequeryablevalid filter values.
⟨4 unchanged words⟩ openWorldHint":false,"readOnlyHint":true,"title":"SearchLookrulesupacrosstaxjurisdictionsrates and rules"}
Searchskillstax Guides bykeywordtopic
Full-text search across all published tax and accountingFindskills.theFind,Guidelookup,forquery,aorspecificdiscovertaxskillstopic by keyword, tax:concept,a deductiontype, formnumber, regime orregulationrule(e.g.such as 'home office deduction','crypto capital'Schedulegains'C', 'reverse charge','Schedule'cryptoC',capital'60-daygains'reporting').or 'Beckham regime'. Optionally limit to onejurisdiction.jurisdictionUseorthisdomain.whenReturnsyoumatchingdon'tGuideknowslugsthetoexactopenskillwithslug.get_skill. Set content_type='method' todiscoverfind step-by-stepMETHODSmethods (guided procedures — what yourunEXECUTEthem via start()) instead of reference material;, eachmethod carries a review_statustagged(accountant-reviewed|orsource-cited).source-cited.
⟨5 unchanged words⟩ :false,"readOnlyHint":true,"title":"Searchskillstax Guides bykeywordtopic"}
SendsOnlyfeedbackwhenortheauserreviewasks:requestsendstotheirOpenAccountants.feedback,Thisoristheirtherequestsingleforoutboundachannel;personittodoeschecknothingorunlessdo theuser has askedwork,fortoit.OpenAccountants. Two modes. (1) `note`: an anonymized ⟨164 unchanged words⟩
StartAnswer a taxworkflowquestion (call first)
FrontCalldoorthis first for any tax,/VAT/GST,accountingpayroll or filing questiononceaboutyouaknowcountrywhatortheUSuserstate,wants.such`intent`asis"howREQUIREDmuch(e.g.tax'taxes',will'VATIreturn'pay in Spain",'set"doupIaneedcompany'to register for VAT",'find"whendeductions'is my tax return due",'classify"istransactions'this deductible",'payroll');"howpassis ajurisdictionfreelancertooor(ISOa2-lettercompany taxed in Germany",e.g."sales'MT'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','GB''US-TX','US-CA''Florida'). Ifyounodon'tplaceyetishavenamed,anstartintent,inferscallone`start_help`whenfirst.the question makes it clear and says so in `jurisdiction_source`. ReturnseithertheaGuidesclarificationtorequestread next (if`skills_to_load`,jurisdictionopeniseachmissingwith get_skill), ora ready-to-executewhatplaniswithstilltheneeded,listusuallyoftheskillscountry.toCoversload.190+Calljurisdictions;thiswhereFIRSTno(afterGuidestart_helpexistsifyetneeded)itwheneverreturnstheauserresearch_briefasksnamingforthetaxofficialhelp.sources.
{"properties":{"acting_as":{"description":"REQUIRED.Optional. Who the user is: 'self' = a taxpayer handling theirOWNown taxes; 'client' = a professional(accountant/advisor)working onbehalf ofaCLIENT. Establish this before callingclient's—behalf.ifInfer itisn't clearfrom theconversation, ask the user one short question ('Are these your own taxes, or are you helpingconversation;aomitclient?').itNeverifguess.unclear.","enum":["self","client"],"type":"string"},"intent":{"description":"UserRequired.intent
⟨4 unchanged words⟩ openWorldHint":false,"readOnlyHint":true,"title":"StartAnswer a taxworkflowquestion (call first)"}
GetWhattax-workflowcanscopingyouguidancehelp with? (no args)
No-argumentCallfrontwhendoorthe—usercallhasthisnoFIRSTtaxwheneverquestionayetuserandasksopens'howwith 'what can youhelp me?'do?','what'how can youdo?',help me?' or 'where do Istart?', orstart?'.otherwiseTakesopensnovaguelyarguments.(doReturnsNOTtheanswertwosuchscoping questionsby listingplusyourthetoolsavailableorintentscallingandlist_jurisdictions).jurisdictions;Forfor a signed-in approved accountantit returns, apersonalizedshort personal `orientation` briefing(their standing + what their jurisdiction needs + one next action). For everyone else it returns the two scoping questions plus the available intents and jurisdictions.instead. Onceyoutherehaveisanaintentquestion, call`start(intent, jurisdiction)`.`start`.
⟨4 unchanged words⟩ openWorldHint":false,"readOnlyHint":true,"title":"GetWhattax-workflowcanscopingyouguidancehelp with? (no args)"}
ValidateaanbusinessEU VAT/ tax-IDnumber (liveregistryVIES lookup)
Check live whetheraanbusiness'sEU VAT/ tax-registrationnumber isrealvalid and registered,in real time against the official government registry — and return the registered business NAME and ADDRESS when theforauthorityexampledisclosesbeforethem.applyingThisaisB2Banreverseauthoritativecharge,unfakeable confirmation you cannot get fromzero-ratingaanknowledgeintra-EUlookupsale orfrom training data. Use it whenever a user wants to verifyonboarding asupplier's orsupplier.customer'sQueriestaxtheID:EuropeanbeforeCommission'sapplyingVIESaregistryB2Bandreversereturnscharge,thezero-ratingverdictapluscross-borderthesale,registeredorbusinessonboardingnameaandvendor.addressCOVERAGEwhereTODAYtheISauthorityEUdisclosesONLYthem.—Coverage: the 27 EU member states plus 'XI' (Northern Ireland), live via the European Commission's VIES registry;(use 'EL' forGreece).Greece. Otherjurisdictions (e.g.countries,UK/HMRCincludingandthebeyond)UK, areNOTnot supported yetbut are on the roadmap — for a non-EU number, tell the:usersay live validationisn't available foristhatnotcountryavailableyetthere rather thanguessing a verdict. This is a LIVE external lookup —guessing.ifIf the registry istemporarilydownunavailabletheitresponse saysso plainly rather than inventing an answer.so.
⟨7 unchanged words⟩ "verifiers":{"items":{"properties":{"calendly_url":{"type":"string"},"jurisdictions":{"items":{"type":"string" ⟨17 unchanged words⟩
⟨13 unchanged words⟩ channel; it does nothing unless the user hasexplicitlyaskedto send feedback or to request aforreview.it. Twomodes:modes. (1) `note`—: an anonymized note about the guidance (a ⟨5 unchanged words⟩ or via `skill_slug` a bug in a specificskillGuide). Anonymize hard: no names, amounts, or PII. (2) `request_review: true`:—thesubmitsuser wants a person at OpenAccountants to check or do theuser'swork.workingTypicalpaperrequests: 'can an accountant check this?', 'can someone file this forreviewme?',by'can someone do this for me?', 'I want an accountant', 'can I talk to alicensedperson?'.accountant;Aalsoquestion 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`. Thereviewrequest isa paidsavedprofessionalwithengagementOpenAccountants(neveranddescribetheitteamasisfree);notified; therequestresponse returns an OpenAccountants booking link. The call issavedfree.toThetheworkuser'sitselfownisqueuepaid: OpenAccountants does it through its accountants, with what is done and theresponse returnsfeeaagreedbookingonlinkthe—callnothingbeforereachesanythinganstarts.accountantNeveruntildescribe theuserworkengages.itself as free. Call at most once perexplicituser request;never callnot as a routine closingstep, and never solicit the request.step.
⟨3 unchanged words⟩ Review only, REQUIRED when request_review: the user'semail.email, so OpenAccountants can reply. Ask for it first.","type":"string" ⟨62 unchanged words⟩ only when the user has asked for alicensedperson (an accountant or OpenAccountants) toreviewcheck theirfigures.result, file it or do the work. Requires working_paper + jurisdiction + scenario + contact_email. ⟨24 unchanged words⟩ when the note is feedback about a SPECIFICskillGuide, by its slug (e.g. 'us-sales-tax'). Replaces the old submit_feedback." ⟨36 unchanged words⟩
⟨11 unchanged words⟩ :"string"},"confirm_available":{"description":"WhetherAlways true: if the usercan askasks,athenamedVATaccountanttreatmenttocanconfirmbethesentVATfortreatmentchecking viaask_accountant_to_confirm.share_with_openaccountants with request_review.","type":"boolean"},"country_code":{ ⟨88 unchanged words⟩