Skip to content

GetAccountED MCP server

za.co.getaccounted/sa-taxgetaccounted.co.zastreamable-httpv1.1.1Scanned

SA accounting and tax: free SARS tax tools, plus your own GetAccountED books after sign-in.

27 tools: 4 can delete or cancel things, 5 do something that can't be undone, 12 change things and 6 only read.

Tools: 4 delete, 5 irreversible, 12 write, 6 read.
  • Reads private data · 0
  • Reads text others write · 1
  • Can send data out · 6
  • 5 findings

Tools listed without sign-in. Remote posture

With Anlyon

4 tools here can delete or cancel things and 5 do something that can't be undone. Govern them.

  • Anlyon lists the tools and adopts none.
  • Each tool you adopt gets approvals and receipts.
  • Your agent never holds the key.
Govern this server →

A tool your agent calls directly is not routed through Anlyon and is not governed by it. anlyon.dev only lists and labels, and these labels are the same either way.

What the GetAccountED MCP server can do

The GetAccountED MCP server is published by getaccounted.co.za, a domain the MCP Registry verified. It has 27 tools. It can delete or cancel things (4 tools: accounting_file_bank_line, accounting_refile_bank_line, accounting_create_invoice_draft and accounting_send_invoice_reminder), do things that cannot be undone, such as sending, paying or publishing (sa_tax_calendar, accounting_profit_and_loss, accounting_unfiled_bank_lines, accounting_vat201_draft and 1 more) and create or change data (12 tools: sa_paye_calculate, sa_vat_calculate, sa_vat_classify, sa_tax_rates and 8 more). 6 tools only read.

1 tool brings in text other people can write (accounting_send_invoice_reminder); 6 tools can send data out of your system (sa_tax_calendar, accounting_profit_and_loss, accounting_unfiled_bank_lines and 3 more).

The fixed checks matched 5 findings (annotation-conflict). Each one comes with the text it matched.

Its remote endpoint lists its tools without sign-in, and its tools changed once since anlyon.dev first saw them.

Last scanned Nov 10, 2026, version 1.1.1.

Tools

Grouped by what each tool does, most consequential first. Open one for its reasons and full description; descriptions are the publisher's own words.

27 tools

Deletes or cancels 4Claude Code: deny
  • accounting_create_invoice_draftCreate a DRAFT customer invoice (never sent, not in the ledger until the business sends it from GetAccountED).No findings

    Why it is in this group

    • The name "accounting_create_invoice_draft" says "create": a word for a change.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    Create a DRAFT customer invoice (never sent, not in the ledger until the business sends it from GetAccountED). VAT at 15% if the business is a VAT vendor. TWO STEPS: first call returns the totals + confirm_token; second call with confirm_token saves the draft. Changes the user's real books — only after they have seen the preview and agreed. Needs the user's GetAccountED sign-in (they are asked to sign in the first time).

    Annotations the server declares

    • title: Create a draft invoice (preview, then confirm)
    • readOnlyHint: false
    • destructiveHint: true
    • idempotentHint: false
    • openWorldHint: false
  • accounting_file_bank_lineFile one unfiled bank line.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    File one unfiled bank line. Give ONE of: account_code (e.g. bank charges, income, a loan), invoice allocations / customer_id (customer receipt — remainder goes on account), bill allocations / supplier_id or supplier_name (supplier payment), or on_account:true with a customer or supplier. TWO STEPS: the first call changes nothing and returns a preview of the journal it will post plus a confirm_token; call again with exactly the same arguments plus confirm_token (valid 10 minutes, single use) to post it. Always show the user the preview and get their OK first. Changes the user's real books — only after they have seen the preview and agreed. Needs the user's GetAccountED sign-in (they are asked to sign in the first time).

    Annotations the server declares

    • title: File a bank line (preview, then confirm)
    • readOnlyHint: false
    • destructiveHint: true
    • idempotentHint: false
    • openWorldHint: false
  • accounting_refile_bank_lineRe-file a bank line that was already filed wrongly: reverses everything it posted (one reversal journal on the line's date, payments taken back off invoices/bills) and files it aga…No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    Re-file a bank line that was already filed wrongly: reverses everything it posted (one reversal journal on the line's date, payments taken back off invoices/bills) and files it again to the new target. Same target arguments as accounting_file_bank_line. TWO STEPS: first call = preview of the reversal and new journal + confirm_token; second call with confirm_token does it. Changes the user's real books — only after they have seen the preview and agreed. Needs the user's GetAccountED sign-in (they are asked to sign in the first time).

    Annotations the server declares

    • title: Re-file a bank line (preview, then confirm)
    • readOnlyHint: false
    • destructiveHint: true
    • idempotentHint: false
    • openWorldHint: false
  • accounting_send_invoice_reminderEmail GetAccountED's standard branded payment reminder (with pay-online link and the invoice PDF) for one unpaid invoice to the customer's email on file.Reads text others writeCan send data outNo findings

    Why it is in this group

    • The name "accounting_send_invoice_reminder" says "send": a word for sending, and what is sent cannot be taken back.
    • The server marks it destructive (destructiveHint: true).

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    • outboundThe name "accounting_send_invoice_reminder" says "send": it sends or publishes something to other people.
    Description, as the server wrote it
    Email GetAccountED's standard branded payment reminder (with pay-online link and the invoice PDF) for one unpaid invoice to the customer's email on file. TWO STEPS: first call shows who it goes to + confirm_token; the email is only sent on the second call with confirm_token. Changes the user's real books — only after they have seen the preview and agreed. Needs the user's GetAccountED sign-in (they are asked to sign in the first time).

    Annotations the server declares

    • title: Send an invoice reminder (preview, then confirm)
    • readOnlyHint: false
    • destructiveHint: true
    • idempotentHint: false
    • openWorldHint: true
Can't be undone 5Claude Code: ask
  • accounting_general_ledgerGeneral ledger for one account over a date range: opening balance, every posting with reference and description, running and closing balance.Can send data out1 finding

    Why it is in this group

    • The input addresses people (input.to): what it sends cannot be taken back.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    What it can reach

    • outboundThe input takes a destination (input.to): what the tool writes goes there.

    Findings

    • Warn

      The server marks "accounting_general_ledger" read-only (readOnlyHint: true), and its own name, description or input give the class "irreversible".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The input addresses people (input.to): what it sends cannot be taken back.

      What this check looks for
    Description, as the server wrote it
    General ledger for one account over a date range: opening balance, every posting with reference and description, running and closing balance. Read-only. Needs the user's GetAccountED sign-in (they are asked to sign in the first time).

    Annotations the server declares

    • title: General ledger for one account
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • accounting_profit_and_lossProfit and loss for a period, per account (income and expense accounts, from the general ledger).Can send data out1 finding

    Why it is in this group

    • The input addresses people (input.to): what it sends cannot be taken back.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    What it can reach

    • outboundThe input takes a destination (input.to): what the tool writes goes there.

    Findings

    • Warn

      The server marks "accounting_profit_and_loss" read-only (readOnlyHint: true), and its own name, description or input give the class "irreversible".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The input addresses people (input.to): what it sends cannot be taken back.

      What this check looks for
    Description, as the server wrote it
    Profit and loss for a period, per account (income and expense accounts, from the general ledger). Read-only. Needs the user's GetAccountED sign-in (they are asked to sign in the first time).

    Annotations the server declares

    • title: Profit and loss
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • accounting_unfiled_bank_linesBank statement lines still waiting to be filed, each with its line_id, the suggestion GetAccountED made (account, invoice or rule) and candidate open items: unpaid customer invoice…Can send data out1 finding

    Why it is in this group

    • The input addresses people (input.to): what it sends cannot be taken back.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    What it can reach

    • outboundThe input takes a destination (input.to): what the tool writes goes there.

    Findings

    • Warn

      The server marks "accounting_unfiled_bank_lines" read-only (readOnlyHint: true), and its own name, description or input give the class "irreversible".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The input addresses people (input.to): what it sends cannot be taken back.

      What this check looks for
    Description, as the server wrote it
    Bank statement lines still waiting to be filed, each with its line_id, the suggestion GetAccountED made (account, invoice or rule) and candidate open items: unpaid customer invoices (money in) or unpaid supplier bills (money out) matching by amount or name. Amounts in rand. Read-only. Needs the user's GetAccountED sign-in (they are asked to sign in the first time).

    Annotations the server declares

    • title: Bank lines still to file
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • accounting_vat201_draftDRAFT VAT201 for a VAT period, field by field as on SARS eFiling (output tax, input tax, payable/refundable).Can send data out1 finding

    Why it is in this group

    • The input addresses people (input.to): what it sends cannot be taken back.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    What it can reach

    • outboundThe input takes a destination (input.to): what the tool writes goes there.

    Findings

    • Warn

      The server marks "accounting_vat201_draft" read-only (readOnlyHint: true), and its own name, description or input give the class "irreversible".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The input addresses people (input.to): what it sends cannot be taken back.

      What this check looks for
    Description, as the server wrote it
    DRAFT VAT201 for a VAT period, field by field as on SARS eFiling (output tax, input tax, payable/refundable). A preparation draft — check it before filing on eFiling; nothing is submitted to SARS. Read-only. Needs the user's GetAccountED sign-in (they are asked to sign in the first time).

    Annotations the server declares

    • title: VAT201 draft
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • sa_tax_calendarSARS (and CIPC) due dates in a date range: EMP201 (7th, earlier when that is a weekend or public holiday), VAT201 by VAT category A–E (eFiling: last business day of the month after…Can send data out1 finding

    Why it is in this group

    • The input addresses people (input.to): what it sends cannot be taken back.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    What it can reach

    • outboundThe input takes a destination (input.to): what the tool writes goes there.

    Findings

    • Warn

      The server marks "sa_tax_calendar" read-only (readOnlyHint: true), and its own name, description or input give the class "irreversible".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The input addresses people (input.to): what it sends cannot be taken back.

      What this check looks for
    Description, as the server wrote it
    SARS (and CIPC) due dates in a date range: EMP201 (7th, earlier when that is a weekend or public holiday), VAT201 by VAT category A–E (eFiling: last business day of the month after the period), provisional tax IRP6, EMP501 reconciliation windows, ITR14 and CIPC annual returns. Uses South African public holidays.

    Annotations the server declares

    • title: South African tax due dates
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
Changes things 12Claude Code: ask
  • accounting_aged_creditorsAged creditors (what the business owes suppliers, by age) as at a date, reconciled to Accounts Payable.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    Aged creditors (what the business owes suppliers, by age) as at a date, reconciled to Accounts Payable. Read-only. Needs the user's GetAccountED sign-in (they are asked to sign in the first time).

    Annotations the server declares

    • title: Aged creditors
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • accounting_aged_debtorsAged debtors (who owes the business, by age: not yet due, 1-30, 31-60, 61-90, 91-120, 120+ days past due) as at a date, reconciled to Accounts Receivable.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    Aged debtors (who owes the business, by age: not yet due, 1-30, 31-60, 61-90, 91-120, 120+ days past due) as at a date, reconciled to Accounts Receivable. Read-only. Needs the user's GetAccountED sign-in (they are asked to sign in the first time).

    Annotations the server declares

    • title: Aged debtors
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • accounting_balance_sheetBalance sheet as at a date: assets, liabilities and equity per account, including profit to date not yet closed off.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    Balance sheet as at a date: assets, liabilities and equity per account, including profit to date not yet closed off. Read-only. Needs the user's GetAccountED sign-in (they are asked to sign in the first time).

    Annotations the server declares

    • title: Balance sheet
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • accounting_chart_of_accountsThe business's chart of accounts (code, name, type).No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    The business's chart of accounts (code, name, type). Use the codes when filing a bank line to an account. Read-only. Needs the user's GetAccountED sign-in (they are asked to sign in the first time).

    Annotations the server declares

    • title: Chart of accounts
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • accounting_debtor_reminderDrafts a polite payment-reminder email (text only — nothing is sent) for each customer with overdue invoices, listing the invoices and amounts.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    Drafts a polite payment-reminder email (text only — nothing is sent) for each customer with overdue invoices, listing the invoices and amounts. Edit it, then the business sends it — or use accounting_send_invoice_reminder to send GetAccountED's standard branded reminder for one invoice. Read-only. Needs the user's GetAccountED sign-in (they are asked to sign in the first time).

    Annotations the server declares

    • title: Draft payment-reminder emails
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • accounting_emp201_detailEMP201 for a month from finalised pay runs: PAYE, UIF, SDL, ETI and total due to SARS (due the 7th of the next month), with per-employee lines.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    EMP201 for a month from finalised pay runs: PAYE, UIF, SDL, ETI and total due to SARS (due the 7th of the next month), with per-employee lines. ID and tax numbers are masked. Read-only. Needs the user's GetAccountED sign-in (they are asked to sign in the first time).

    Annotations the server declares

    • title: EMP201 detail
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • accounting_submit_documentHand in a receipt, till slip, fuel slip or supplier invoice (PDF or photo, base64, max 10 MB).No findings

    Why it is in this group

    • The name "accounting_submit_document" says "submit": a word for a change.
    Description, as the server wrote it
    Hand in a receipt, till slip, fuel slip or supplier invoice (PDF or photo, base64, max 10 MB). It is read immediately and filed under Slips & Documents for the business to check and post — nothing is posted to the ledger by this tool. Returns what was read. Use when the user gives you a slip or invoice file to hand in. Needs the user's GetAccountED sign-in (they are asked to sign in the first time).

    Annotations the server declares

    • title: Hand in a slip or supplier invoice
    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: false
  • accounting_trial_balanceTrial balance as at a date: every account's debit or credit balance and whether the ledger balances.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    Trial balance as at a date: every account's debit or credit balance and whether the ledger balances. Read-only. Needs the user's GetAccountED sign-in (they are asked to sign in the first time).

    Annotations the server declares

    • title: Trial balance
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • sa_paye_calculateEmployees' tax (PAYE), UIF (employee and employer, with the monthly ceiling), SDL and net pay for one South African employee and pay period, using the SARS tax deduction tables (or…No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    Employees' tax (PAYE), UIF (employee and employer, with the monthly ceiling), SDL and net pay for one South African employee and pay period, using the SARS tax deduction tables (or the exact statutory-rates formula) for the right tax year. Handles age rebates, the medical scheme fees tax credit, retirement-fund deductions (s11F cap), travel allowance (80%/20%), bonuses (annual-payment method), commission and fringe benefits.

    Annotations the server declares

    • title: Calculate South African PAYE, UIF and net pay
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • sa_tax_ratesIndividual income tax brackets, rebates, tax thresholds, medical scheme fees tax credits, retirement deduction cap, UIF rate and ceiling, SDL rate and exemption threshold, and the …No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    Individual income tax brackets, rebates, tax thresholds, medical scheme fees tax credits, retirement deduction cap, UIF rate and ceiling, SDL rate and exemption threshold, and the VAT rate — for a tax year (current and prior years), from the tables GetAccountED payroll uses.

    Annotations the server declares

    • title: South African tax rates and thresholds
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • sa_vat_calculateSplit a VAT-inclusive amount into VAT and the exclusive price, or add VAT to an exclusive amount, at the South African VAT rate in force on the date (15% since 1 April 2018).No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    Split a VAT-inclusive amount into VAT and the exclusive price, or add VAT to an exclusive amount, at the South African VAT rate in force on the date (15% since 1 April 2018). One amount or a list of lines, with per-line and total figures.

    Annotations the server declares

    • title: Calculate South African VAT
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • sa_vat_classifyIs a supply standard-rated, zero-rated or exempt under the South African VAT Act, and can the buyer claim the input VAT (s17(2): entertainment, club subscriptions, motor cars…)?No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    Is a supply standard-rated, zero-rated or exempt under the South African VAT Act, and can the buyer claim the input VAT (s17(2): entertainment, club subscriptions, motor cars…)? Answers from a curated rules table with the VAT Act section for each rule, plus related official material from the GetLawED library. Says plainly when no rule matches.

    Annotations the server declares

    • title: Classify a supply for South African VAT
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
Only reads 6Show 6 read-only tools
  • accounting_list_expensesExpenses and supplier bills recorded in a period, with account, VAT, payment status and whether a slip is attached.No findings

    Why it is in this group

    • The name "accounting_list_expenses" says "list": a word for reading.
    Description, as the server wrote it
    Expenses and supplier bills recorded in a period, with account, VAT, payment status and whether a slip is attached. Read-only. Needs the user's GetAccountED sign-in (they are asked to sign in the first time).

    Annotations the server declares

    • title: List expenses and supplier bills
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • accounting_list_invoicesCustomer invoices.No findings

    Why it is in this group

    • The name "accounting_list_invoices" says "list": a word for reading.
    Description, as the server wrote it
    Customer invoices. status: open (unpaid or part-paid), overdue, paid, or all. Read-only. Needs the user's GetAccountED sign-in (they are asked to sign in the first time).

    Annotations the server declares

    • title: List customer invoices
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • accounting_list_my_businessesLists the GetAccountED books this sign-in can work on, with their business_id.No findings

    Why it is in this group

    • The name "accounting_list_my_businesses" says "list": a word for reading.
    Description, as the server wrote it
    Lists the GetAccountED books this sign-in can work on, with their business_id. Use it first when the user is an accounting practice and asks about a particular client, then pass that business_id to the other accounting_ tools. For a single business it simply confirms which books are connected. Read-only. Needs the user's GetAccountED sign-in (they are asked to sign in the first time).

    Annotations the server declares

    • title: List my businesses / clients
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • accounting_overviewSnapshot of the business's books for a period: income, expenses and profit (from the ledger), bank balances, money owed by customers and to suppliers, VAT position, bank lines stil…No findings

    Why it is in this group

    • The description's first verb is "snapshot": a word for reading.
    Description, as the server wrote it
    Snapshot of the business's books for a period: income, expenses and profit (from the ledger), bank balances, money owed by customers and to suppliers, VAT position, bank lines still to reconcile and slips still missing. Defaults to this month so far. Read-only. Needs the user's GetAccountED sign-in (they are asked to sign in the first time).

    Annotations the server declares

    • title: Books overview
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • accounting_reconciliation_statusBank reconciliation status per uploaded statement, plus the bank payments that still need a slip or invoice.No findings

    Why it is in this group

    • The name "accounting_reconciliation_status" says "status": a word for reading.
    Description, as the server wrote it
    Bank reconciliation status per uploaded statement, plus the bank payments that still need a slip or invoice. Read-only. Needs the user's GetAccountED sign-in (they are asked to sign in the first time).

    Annotations the server declares

    • title: Bank reconciliation status
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • sa_validate_referenceFormat and check-digit checks for South African numbers: ID number (Luhn check digit, date of birth, gender, citizenship), income tax reference, VAT number (10 digits starting with…No findings

    Why it is in this group

    • The name "sa_validate_reference" says "validate": a word for reading.
    Description, as the server wrote it
    Format and check-digit checks for South African numbers: ID number (Luhn check digit, date of birth, gender, citizenship), income tax reference, VAT number (10 digits starting with 4), PAYE/SDL/UIF employer references and CIPC company registration numbers. Offline checks only — they do not confirm the number is registered.

    Annotations the server declares

    • title: Check a South African ID, tax, VAT or company number
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false

This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.

Exfil surface

Which tools read private data, which read text someone else can write, and which can send data out. One of each is a path a prompt injection can use.

No private-data, untrusted-input, outbound path in this server alone: no tool is tagged private-data.

Reads private data0
Reads files, mail, messages, databases, secrets, calendars or repositories.
Reads text others write1
Brings in text someone else can write: web pages, inbound email, messages, issues and comments.
Can send data out6
Can carry data to people or systems: it sends, posts or publishes, or takes a recipient, channel or URL.

Other servers in the same agent add their own tools to these paths. Audit your whole setup to see them together.

Remote posture

What anyone on the internet sees at the remote endpoint: an anonymous initialize and tools/list, and the public OAuth metadata.

Tools listed without sign-in

Looked at Nov 14, 2026, 12:21 UTC, unchanged since Nov 14, 2026. No credentials were sent and no tool was called. What is looked at.

Reachable
yes
HTTP status of an anonymous initialize
200
tools/list served without credentials
yes
Tools that change things, listed without credentials
21
Protocol version
2025-06-18
WWW-Authenticate on 401
not observed
resource_metadata in WWW-Authenticate
not observed
RFC 9728 protected resource metadata
https://getaccounted.co.za/.well-known/oauth-protected-resource
Authorization servers
https://getaccounted.co.za
Legacy HTTP+SSE transport
no
Dynamic client registration
yes
Client ID metadata documents
yes
  • HighThe whole server

    The endpoint served tools/list without credentials, and the list has 21 tools that change things (1 destructive, 6 irreversible, 14 write). Whether a call also works without credentials was not tested: tools are never called.

    Matched text

    https://getaccounted.co.za/api/mcp/tax: tools/list returned 27 tools to an anonymous client, including accounting_refile_bank_line (destructive), sa_tax_calendar (irreversible), accounting_profit_and_loss (irreversible), accounting_unfiled_bank_lines (irreversible), accounting_send_invoice_reminder (irreversible) and 16 more

    What this check looks for

Posture changes

  1. Nov 14, 2026
    • Tools that change things, listed without credentials: 5 to 21
    • RFC 9728 protected resource metadata: none to https://getaccounted.co.za/.well-known/oauth-protected-resource
    • Authorization servers: none to https://getaccounted.co.za
    • Dynamic client registration: not observed to yes
    • Client ID metadata documents: not observed to yes

Findings

Matches of fixed checks, with the text they matched.

5 warn
  • The server marks "sa_tax_calendar" read-only (readOnlyHint: true), and its own name, description or input give the class "irreversible".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The input addresses people (input.to): what it sends cannot be taken back.

    What this check looks for
  • The server marks "accounting_profit_and_loss" read-only (readOnlyHint: true), and its own name, description or input give the class "irreversible".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The input addresses people (input.to): what it sends cannot be taken back.

    What this check looks for
  • The server marks "accounting_unfiled_bank_lines" read-only (readOnlyHint: true), and its own name, description or input give the class "irreversible".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The input addresses people (input.to): what it sends cannot be taken back.

    What this check looks for
  • The server marks "accounting_vat201_draft" read-only (readOnlyHint: true), and its own name, description or input give the class "irreversible".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The input addresses people (input.to): what it sends cannot be taken back.

    What this check looks for
  • The server marks "accounting_general_ledger" read-only (readOnlyHint: true), and its own name, description or input give the class "irreversible".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The input addresses people (input.to): what it sends cannot be taken back.

    What this check looks for

History

Changes to its tool definitions and to its remote endpoint, newest first.

  1. PostureRemote posture changed. Tools that change things, listed without credentials: 5 -> 21; RFC 9728 protected resource metadata: none -> https://getaccounted.co.za/.well-known/oauth-protected-resource; Authorization servers: none -> https://get…View diff
    • Tools that change things, listed without credentials: 5 to 21
    • RFC 9728 protected resource metadata: none to https://getaccounted.co.za/.well-known/oauth-protected-resource
    • Authorization servers: none to https://getaccounted.co.za
    • Dynamic client registration: not observed to yes
    • Client ID metadata documents: not observed to yes
  2. Tools21 added.+21 addedView diff

Install

Pinned to version 1.1.1. Values in angle brackets are yours to fill in.

claude mcp add --transport http sa-tax https://getaccounted.co.za/api/mcp/tax
claude mcp add --transport http sa-tax https://getaccounted.co.za/api/mcp/tax

Run in a terminal.

Claude Code permissions

Allow the reads, ask before a change or a way out, deny the deletes. Paste into .claude/settings.json.

.claude/settings.json
{
  "permissions": {
    "allow": [
      "mcp__sa-tax__sa_validate_reference",
      "mcp__sa-tax__accounting_list_my_businesses",
      "mcp__sa-tax__accounting_overview",
      "mcp__sa-tax__accounting_list_invoices",
      "mcp__sa-tax__accounting_list_expenses",
      "mcp__sa-tax__accounting_reconciliation_status"
    ],
    "ask": [
      "mcp__sa-tax__sa_paye_calculate",
      "mcp__sa-tax__sa_vat_calculate",
      "mcp__sa-tax__sa_vat_classify",
      "mcp__sa-tax__sa_tax_calendar",
      "mcp__sa-tax__sa_tax_rates",
      "mcp__sa-tax__accounting_profit_and_loss",
      "mcp__sa-tax__accounting_balance_sheet",
      "mcp__sa-tax__accounting_submit_document",
      "mcp__sa-tax__accounting_chart_of_accounts",
      "mcp__sa-tax__accounting_unfiled_bank_lines",
      "mcp__sa-tax__accounting_aged_debtors",
      "mcp__sa-tax__accounting_aged_creditors",
      "mcp__sa-tax__accounting_debtor_reminder",
      "mcp__sa-tax__accounting_vat201_draft",
      "mcp__sa-tax__accounting_emp201_detail",
      "mcp__sa-tax__accounting_trial_balance",
      "mcp__sa-tax__accounting_general_ledger"
    ],
    "deny": [
      "mcp__sa-tax__accounting_file_bank_line",
      "mcp__sa-tax__accounting_refile_bank_line",
      "mcp__sa-tax__accounting_create_invoice_draft",
      "mcp__sa-tax__accounting_send_invoice_reminder"
    ]
  }
}

Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. A read that can send data out (it takes a URL, say) asks first too. It assumes the server is installed as sa-tax. Review it before you use it.

Capability tags behind 6 rules
  • mcp__sa-tax__sa_tax_calendar outbound
  • mcp__sa-tax__accounting_profit_and_loss outbound
  • mcp__sa-tax__accounting_unfiled_bank_lines outbound
  • mcp__sa-tax__accounting_send_invoice_reminder untrusted-input, outbound
  • mcp__sa-tax__accounting_vat201_draft outbound
  • mcp__sa-tax__accounting_general_ledger outbound

Pin

Keep the decision: fail CI when the tools change, follow every change, or show a badge.

Pin in CI

Fail a build when the tools you reviewed are not the tools the server serves today.

curl -s "https://anlyon.dev/api/v1/servers/za.co.getaccounted/sa-tax/verify?hash=73692d340e493fe5d656a7cadc5f8fe34b8afbc0ea58121a1823bbb93be8f29c" | jq -e '.changed == false'

Pinned hash 73692d340e49, from Nov 10, 2026, 09:18 UTC.

Watch

Get told when its tools change: a new tool, a new description, a new class.

https://anlyon.dev/servers/za.co.getaccounted/sa-tax/changes.xml

An Atom feed. Works in any feed reader or Slack's RSS app.

Badge

anlyon.dev badge for za.co.getaccounted/sa-tax
[![anlyon.dev](https://anlyon.dev/badge/za.co.getaccounted/sa-tax.svg)](https://anlyon.dev/servers/za.co.getaccounted/sa-tax)

Source: MCP Registry · repository. Synced Nov 10, 2026, 09:18 UTC.

GetAccountED MCP server: questions and answers

Answered from the scan above, not from the publisher's description.

Is the GetAccountED MCP server safe?

No scan can promise that. What its definitions show: 27 tools, 21 of which can change, send or delete something, and 5 findings from fixed checks. Allow the reads, ask before each change, and deny the deletes; the permissions block on this page does that.

Can the GetAccountED MCP server delete data?

Yes. 4 tools can delete, cancel or revoke something: accounting_file_bank_line, accounting_refile_bank_line, accounting_create_invoice_draft and accounting_send_invoice_reminder.

Can the GetAccountED MCP server do things that cannot be undone?

Yes. 5 tools can send, pay, publish or merge: sa_tax_calendar, accounting_profit_and_loss, accounting_unfiled_bank_lines, accounting_vat201_draft and accounting_general_ledger.

What tools does the GetAccountED MCP server have?

27 tools: 4 destructive, 5 irreversible, 12 write, 6 read. accounting_file_bank_line, accounting_refile_bank_line, accounting_create_invoice_draft, accounting_send_invoice_reminder, sa_tax_calendar, accounting_profit_and_loss, accounting_unfiled_bank_lines, accounting_vat201_draft and 19 more.

Does the GetAccountED MCP server need sign-in or OAuth?

Its remote endpoint listed its tools to an anonymous client, without sign-in.

Does the GetAccountED MCP server send data to outside services?

6 tools can carry data out (it sends, posts or publishes, or takes a recipient, channel or URL): sa_tax_calendar, accounting_profit_and_loss, accounting_unfiled_bank_lines, accounting_send_invoice_reminder, accounting_vat201_draft and accounting_general_ledger.

Has the GetAccountED MCP server changed its tools?

Yes, once since anlyon.dev started tracking it, most recently on Nov 10, 2026. Every change is on this page and in its Atom feed.