MCP.Market

Xero MCP server

by codespar·io.github.codespar/mcp-xero·v0.2.2·271 stars

MCP server for Xero — global cloud accounting: contacts, invoices, payments, items, reports

B82/100grade B
What users say
No reviews yet
Be the first
Safety scan
B82/100

full report

Adoption
Growing

271 stars

Reviews

Write one

Nobody has reviewed Xero yet.

If you have run it, two minutes of your experience saves the next person an afternoon.

Xero tools (24, 9 write)

write = sends, deletes, buys or posts

Read from the package source without running it. The installed server may list more.

  • archive_contact

    Archive a Xero contact by setting ContactStatus=ARCHIVED. Archived contacts are hidden from default lists but history is preserved.

  • create_bank_transactionwrite action

    Create a bank transaction (SPEND = money out, RECEIVE = money in) directly on a bank account — for transactions without a matching invoice/bill (fees, transfers, one-off expenses).

  • create_contactwrite action

    Create a Xero contact (customer or supplier — Xero uses one unified Contact object with IsCustomer/IsSupplier flags inferred from transactions).

  • create_credit_notewrite action

    Create a credit note. Type ACCRECCREDIT = credit to a customer (offsets an AR invoice), ACCPAYCREDIT = credit from a supplier (offsets an AP bill).

  • create_invoicewrite action

    Create an invoice in Xero. Type ACCREC = accounts-receivable (sales invoice to a customer), ACCPAY = accounts-payable (bill from a supplier). Default Status=DRAFT; set AUTHORISED to issue immediately.

  • create_itemwrite action

    Create a Xero inventory/product item. Items can be sales-only, purchase-only, or tracked inventory (requires IsTrackedAsInventory + InventoryAssetAccountCode).

  • create_paymentwrite action

    Record a payment against an invoice or credit note. Reduces the invoice's AmountDue and posts to the specified bank/payment account.

  • email_invoicewrite action

    Email an AUTHORISED invoice to the contact's email address on file. Xero uses the default invoice email template. No body required.

  • get_balance_sheet

    Retrieve the Balance Sheet report for the tenant. Returns assets, liabilities, and equity grouped by account as of a given date.

  • get_contact

    Retrieve a single Xero contact by ContactID (UUID).

  • get_invoice

    Retrieve a single invoice by InvoiceID (UUID) or InvoiceNumber.

  • get_payment

    Retrieve a single payment by PaymentID.

  • list_accounts

    List the Xero chart of accounts. Use this to discover AccountCodes/AccountIDs needed for invoice line items and payments.

  • list_bank_transactions

    List bank transactions (spend/receive entries on bank accounts). Supports where-clause filtering by BankAccount.AccountID, Type, Date, etc.

  • list_contacts

    List Xero contacts. Supports Xero's where clause for server-side filtering (e.g. 'Name=="ACME Ltd"', 'IsCustomer==true').

  • list_credit_notes

    List credit notes. Supports where-clause filtering by Type, Status, Contact.ContactID, Date.

  • list_invoices

    List invoices with optional Xero where-clause filtering. Common filters: Status=="AUTHORISED", Type=="ACCREC", Contact.ContactID==guid("..."), Date>=DateTime(2026,1,1).

  • list_items

    List all items/products in the Xero tenant. Supports where clause, e.g. 'IsSold==true'.

  • list_organisations

    Retrieve the Xero organisation(s) the access token has access to — returns name, base currency, country, fiscal year start, tax settings, and edition.

  • list_payments

    List payments recorded in Xero. Supports where-clause filtering (e.g. 'Status=="AUTHORISED"', 'Date>=DateTime(2026,1,1)').

  • list_tax_rates

    List tax rates configured in the Xero tenant. Use the returned TaxType codes on invoice/bill line items. Supports where clause like 'Status=="ACTIVE"'.

  • update_contactwrite action

    Update an existing Xero contact. POSTs to /Contacts/{ContactID}. Only include fields you want changed; Xero merges updates.

  • update_invoicewrite action

    Update an existing invoice. POSTs to /Invoices/{InvoiceID}. DRAFT/SUBMITTED invoices are fully editable; AUTHORISED invoices have limited editable fields (Reference, DueDate, etc).

  • void_invoice

    Void an invoice by setting Status=VOIDED. Only DRAFT, SUBMITTED, or AUTHORISED invoices with zero payments can be voided.

Public scan report

scanner v0.1.9 · 2026-09-26 · same rubric, same numbers if you re-run it

no findings
  • Code scan5 source files scanned25/25
  • –Live reliabilityno gateway calls yet and no remote to proben/a
  • –Tool poisoningtools not inspected (local package is not executed); not countedn/a
  • Auth qualitystatic API keys via environment variables6/15
  • Maintenancelast push 29 days ago15/15
  • Maintainer identityregistry namespace matches repository owner7/10
Overall 82/100. Components that don't apply are left out of the denominator. Any critical finding is an F.RubricAppeal a findingJSON

How Xero compares

Against every graded Finance MCP server, from our own scans and uptime checks. Updated after each scan run.

Safety score
82/100
higher than 73% of 1,761 Finance servers
Tools
24
the typical Finance server has 8
Tools that change things
38%
typical: 0%. Fewer write tools means less an agent can break
GitHub stars
271
more than 95% of 946 Finance servers

What its tools let an agent do: 14 read · 6 create · 2 change · 1 delete · 1 send or post

Install Xero in Claude Code, Cursor or VS Code

Runs npx -y @codespar/mcp-xero on your machine. Read the scan report first; the gateway never runs local packages.

claude mcp add mcp-xero -- npx -y @codespar/mcp-xero
Add to Cursor

What the publisher says

From the Xero repository's README, as published. We do not edit it. Read it on GitHub

MCP Dev LATAM 🌎 Every commerce API your AI agent needs to run a business in Latin America. Brazil 🇧🇷 · Mexico 🇲🇽 · Argentina 🇦🇷 · Colombia 🇨🇴 · Chile 🇨🇱 · Peru 🇵🇪 · plus 4 agentic payment protocols. MCP servers for LATAM commerce · live in the official MCP Registry · MIT License Machine-readable catalog: codespar.dev/api/servers Catalog · Quick Start · Agentic Protocols · All Servers · Contribute

The Problem

AI agents can write code, analyze data, and chat. But they can't operate a business — collect payments, issue invoices, ship products, or notify customers. Especially not in Latin America, where every service has its own API, auth pattern, and quirks (mTLS for BACEN Pix v2, JWT-RSA for STP-SPEI, AFIP web services, contract-gated developer portals, and on).

Meanwhile, four agentic payment protocols are shipping in parallel — checkout protocols (Stripe ACP, Google UCP), authorization layers (AP2), and micropayment rails (x402) — and none of them compose cleanly with each other or with the regional rails businesses actually run on.

MCP Dev LATAM bridges both gaps. Traditional LATAM services + the new agentic payment protocols, all accessible through a single MCP interface.

The Solution

Each MCP server in this repo wraps a real provider — payments, fiscal, logistics, messaging, banking, ERP, identity, fraud, crypto, and the agentic protocols — so your agent can operate a complete business workflow.

🛒 Customer places order
  → 💳 Agent charges via Pix (Asaas / Mercado Pago / Zoop)
  → 📄 Agent issues NFe (Nuvem Fiscal / Focus NFe / NFe.io)
  → 📦 Agent generates shipping label (Melhor Envio / Skydropx)
  → 📱 Agent sends tracking via WhatsApp (Z-API / WhatsApp Cloud)
  → 📊 Agent records in ERP (Omie / Bling / Tiny)
  → 🏦 Agent reconciles balance (Stark Bank / Itaú / BTG)

Six systems. Zero human intervention. One agent.

Agentic Payment Protocols

Four servers for the emerging agentic payment stack:

Shortened. The full README is on GitHub.

Nothing above is checked by us. What we check is on the safety report.

Xero: common questions

Is Xero MCP server safe?
Mostly: it is graded B (82/100). Read the Xero safety report
How do I install Xero?
It runs on your machine. Copy the Claude Code, Cursor, VS Code or Claude Desktop config from the install section.
Does Xero need an API key?
Yes. The registry entry asks for XERO_ACCESS_TOKEN.
Is Xero maintained?
The last commit was 67 days ago (2026-08-29). The latest release is v0.2.2.
What can I use instead of Xero?
Servers from other publishers that do the same job: E Arveldaja MCP server, Bexio MCP server and Norman Finance — AI Bookkeeping, Accounting & Taxes MCP server. Compare all Xero alternatives.
How does Xero compare with other Finance MCP servers?
safety score 82/100 (higher than 73% of 1,761 Finance servers); tools 24 (the typical Finance server has 8); tools that change things 38% (typical: 0%. Fewer write tools means less an agent can break). Full comparison.

Alternatives to Xero

Same job from other publishers: the closest match first, then the best rated.

All Xero alternatives →
  • E Arveldaja
    Estonian e-arveldaja (RIK e-Financials) accounting — invoices, bank import, reports.
    B
  • Bexio
    Swiss accounting integration for Bexio. 315 tools: invoices, contacts, projects, account balances
    A
  • Norman Finance — AI Bookkeeping, Accounting & Taxes
    Bookkeeping, invoices and tax workflows for European businesses, including Polish KPiR and JPK.
    A
  • RoboSystems
    Accounting knowledge graphs: SEC XBRL filings, QuickBooks ledgers, reports and forecasts over MCP.
    A
  • three.ws Tutor
    Read a Pay-As-You-Learn tutoring session's itemized tab and close it for an attested invoice.
    A

More from codespar →