
Xero
Connects Claude to the Xero Accounting API for managing customers, suppliers, invoices, payments, and pulling financial reports. You get domain-organized tools for contacts, invoices, payments, accounts, and reports including P&L, balance sheet, and aged receivables. Supports both stdio for local Claude Desktop use and HTTP mode for multi-tenant deployments. Ships with gateway mode that accepts per-request credentials via headers, useful if you're building a proxy that handles OAuth tokens for multiple Xero organizations. Requires a Xero developer account and OAuth2 credentials. Reach for this when you need Claude to read or write accounting data directly instead of exporting CSV files.
- GitHub stars
- 1
- tools
- 40
- auth
- Secret needed
- transport
- STDIO
- env vars
- 5
- last updated
- Aug 20, 2026
Tools
40 toolsPublic tool metadata for what this MCP can expose to an agent.
XERO_CREATE_BANK_TRANSACTIONCreate a bank transaction in Xero. Use SPEND for payments out or RECEIVE for money received.9 params
Create a bank transaction in Xero. Use SPEND for payments out or RECEIVE for money received.
BankAccountCodestringContactIDstringCurrencyCodestringDatestringLineItemsarrayReferencestringStatusstringTypestringtenant_idstringXERO_CREATE_CONTACTCreate a new contact in Xero. Contacts can be customers, suppliers, or both.14 params
Create a new contact in Xero. Contacts can be customers, suppliers, or both.
AccountNumberstringBankAccountDetailsstringDefaultCurrencystringEmailAddressstringFirstNamestringIsCustomerbooleanIsSupplierbooleanLastNamestringNamestringTaxNumberstringWebsitestringmobile_numberstringphone_numberstringtenant_idstringXERO_CREATE_INVOICECreate a new invoice in Xero. Supports both sales invoices (ACCREC) and bills (ACCPAY).10 params
Create a new invoice in Xero. Supports both sales invoices (ACCREC) and bills (ACCPAY).
ContactIDstringCurrencyCodestringDatestringDueDatestringInvoiceNumberstringLineItemsarrayReferencestringStatusstringTypestringtenant_idstringXERO_CREATE_ITEMCreate an inventory item in Xero. Items can be tracked for sales and/or purchases.9 params
Create an inventory item in Xero. Items can be tracked for sales and/or purchases.
CodestringIsPurchasedbooleanIsSoldbooleanNamestringPurchaseDetails.AccountCodestringPurchaseDetails.UnitPricenumberSalesDetails.AccountCodestringSalesDetails.UnitPricenumbertenant_idstringXERO_CREATE_PAYMENTCreate a payment in Xero to link an invoice with a bank account transaction.7 params
Create a payment in Xero to link an invoice with a bank account transaction.
AccountIDstringAmountnumberCurrencyRatenumberDatestringInvoiceIDstringReferencestringtenant_idstringXERO_CREATE_PURCHASE_ORDERCreate a purchase order in Xero to order goods/services from suppliers.7 params
Create a purchase order in Xero to order goods/services from suppliers.
ContactIDstringDatestringDeliveryDatestringLineItemsarrayReferencestringStatusstringtenant_idstringXERO_GET_ACCOUNTRetrieve a specific account from the chart of accounts by ID. Returns account code, name, type, and settings.2 params
Retrieve a specific account from the chart of accounts by ID. Returns account code, name, type, and settings.
account_idstringtenant_idstringXERO_GET_ASSETRetrieve a specific asset by ID from Xero. Returns depreciation details and book value.2 params
Retrieve a specific asset by ID from Xero. Returns depreciation details and book value.
asset_idstringtenant_idstringXERO_GET_BALANCE_SHEET_REPORTRetrieve Balance Sheet report from Xero. Shows assets, liabilities, and equity at a specific date.7 params
Retrieve Balance Sheet report from Xero. Shows assets, liabilities, and equity at a specific date.
datestringpaymentsOnlybooleanperiodsintegerstandardLayoutbooleantenant_idstringtimeframestringtrackingOptionIDstringXERO_GET_BUDGETRetrieve a budget from Xero. Budgets track planned vs actual spending by account.4 params
Retrieve a budget from Xero. Budgets track planned vs actual spending by account.
DateFromstringDateTostringbudget_idstringtenant_idstringXERO_GET_CONNECTIONSTool to list active Xero connections. Use when you need to retrieve all current tenant connections for the authenticated user.
Tool to list active Xero connections. Use when you need to retrieve all current tenant connections for the authenticated user.
No parameter schema in public metadata yet.
XERO_GET_CONTACTRetrieve a specific contact by ID from Xero. Returns full contact details including addresses and phone numbers.2 params
Retrieve a specific contact by ID from Xero. Returns full contact details including addresses and phone numbers.
contact_idstringtenant_idstringXERO_GET_CONTACTSTool to retrieve a list of contacts. Use when you need up-to-date contact information with filtering, paging, or incremental updates.10 params
Tool to retrieve a list of contacts. Use when you need up-to-date contact information with filtering, paging, or incremental updates.
ContactIDstringIDsarrayIf-Modified-SincestringincludeArchivedbooleanorderstringpageintegerpageSizeintegersearchTermstringsummaryOnlybooleanwherestringXERO_GET_INVOICERetrieve a specific invoice by ID from Xero. Returns full invoice details including line items and status.3 params
Retrieve a specific invoice by ID from Xero. Returns full invoice details including line items and status.
invoice_idstringtenant_idstringunitdpintegerXERO_GET_ITEMRetrieve a specific item by ID from Xero. Returns item code, name, pricing, and tax details.2 params
Retrieve a specific item by ID from Xero. Returns item code, name, pricing, and tax details.
item_idstringtenant_idstringXERO_GET_MANUAL_JOURNALRetrieve a specific manual journal by ID from Xero. Returns full details including journal lines.2 params
Retrieve a specific manual journal by ID from Xero. Returns full details including journal lines.
manual_journal_idstringtenant_idstringXERO_GET_ORGANISATIONRetrieve organisation details from Xero. Returns company info, base currency, timezone, financial year settings, etc.1 params
Retrieve organisation details from Xero. Returns company info, base currency, timezone, financial year settings, etc.
tenant_idstringXERO_GET_PROFIT_LOSS_REPORTRetrieve Profit & Loss report from Xero. Shows income, expenses, and net profit for a specified period.11 params
Retrieve Profit & Loss report from Xero. Shows income, expenses, and net profit for a specified period.
fromDatestringpaymentsOnlybooleanperiodsintegerstandardLayoutbooleantenant_idstringtimeframestringtoDatestringtrackingCategoryIDstringtrackingCategoryID2stringtrackingOptionIDstringtrackingOptionID2stringXERO_GET_PROJECTRetrieve a specific project by ID from Xero. Returns project details, deadlines, and status.2 params
Retrieve a specific project by ID from Xero. Returns project details, deadlines, and status.
project_idstringtenant_idstringXERO_GET_PURCHASE_ORDERRetrieve a specific purchase order by ID from Xero. Returns full details including line items and status.2 params
Retrieve a specific purchase order by ID from Xero. Returns full details including line items and status.
purchase_order_idstringtenant_idstringXERO_GET_QUOTESTool to retrieve a list of quotes. Use when you need to list, filter, or page through sales quotes. Use after obtaining the tenant ID via connections.11 params
Tool to retrieve a list of quotes. Use when you need to list, filter, or page through sales quotes. Use after obtaining the tenant ID via connections.
ContactIDstringDateFromstringDateTostringExpiryDateFromstringExpiryDateTostringIf-Modified-SincestringQuoteNumberstringStatusstringorderstringpageintegertenant_idstringXERO_LIST_ACCOUNTSRetrieve chart of accounts from Xero. Returns all accounting codes used for categorizing transactions.3 params
Retrieve chart of accounts from Xero. Returns all accounting codes used for categorizing transactions.
orderstringtenant_idstringwherestringXERO_LIST_ASSETSRetrieve fixed assets from Xero. Assets track depreciation and book value of capital equipment.6 params
Retrieve fixed assets from Xero. Assets track depreciation and book value of capital equipment.
orderBystringpageintegerpageSizeintegersortDirectionstringstatusstringtenant_idstringXERO_LIST_ATTACHMENTSList all attachments for a specific entity in Xero (invoice, contact, etc.).3 params
List all attachments for a specific entity in Xero (invoice, contact, etc.).
entity_idstringentity_typestringtenant_idstringXERO_LIST_BANK_TRANSACTIONSRetrieve bank transactions from Xero. Includes spend (payments) and receive (receipts) transactions.6 params
Retrieve bank transactions from Xero. Includes spend (payments) and receive (receipts) transactions.
If-Modified-Sincestringorderstringpageintegertenant_idstringunitdpintegerwherestringXERO_LIST_CREDIT_NOTESRetrieve list of credit notes from Xero. Credit notes are issued to reduce amounts owed by customers.5 params
Retrieve list of credit notes from Xero. Credit notes are issued to reduce amounts owed by customers.
If-Modified-Sincestringorderstringpageintegertenant_idstringwherestringXERO_LIST_FILESRetrieve files from Xero Files. Lists documents stored in Xero's file management system.5 params
Retrieve files from Xero Files. Lists documents stored in Xero's file management system.
folderIdstringpageintegerpagesizeintegersortstringtenant_idstringXERO_LIST_FOLDERSRetrieve folders from Xero Files. Lists document folders in Xero's file management system.2 params
Retrieve folders from Xero Files. Lists document folders in Xero's file management system.
sortstringtenant_idstringXERO_LIST_INVOICESRetrieve a list of invoices from Xero. Supports filtering by status, contact, date range, and pagination.10 params
Retrieve a list of invoices from Xero. Supports filtering by status, contact, date range, and pagination.
ContactIDsstringIf-Modified-SincestringInvoiceIDsstringStatusesstringcreatedByMyAppbooleanincludeArchivedbooleanorderstringpageintegertenant_idstringwherestringXERO_LIST_ITEMSRetrieve items (inventory/products) from Xero. Items can be tracked for sales and/or purchases.4 params
Retrieve items (inventory/products) from Xero. Items can be tracked for sales and/or purchases.
orderstringtenant_idstringunitdpintegerwherestringXERO_LIST_JOURNALSRetrieve journals from Xero. Journals show the accounting entries for all transactions.4 params
Retrieve journals from Xero. Journals show the accounting entries for all transactions.
If-Modified-SincestringoffsetintegerpaymentsOnlybooleantenant_idstringXERO_LIST_MANUAL_JOURNALSRetrieve manual journals from Xero. Manual journals are used for period-end adjustments and corrections.5 params
Retrieve manual journals from Xero. Manual journals are used for period-end adjustments and corrections.
If-Modified-Sincestringorderstringpageintegertenant_idstringwherestringXERO_LIST_PAYMENTSRetrieve list of payments from Xero. Payments link invoices to bank transactions.5 params
Retrieve list of payments from Xero. Payments link invoices to bank transactions.
If-Modified-Sincestringorderstringpageintegertenant_idstringwherestringXERO_LIST_PROJECTSRetrieve projects from Xero. Projects track time and costs for client work.6 params
Retrieve projects from Xero. Projects track time and costs for client work.
contactIDstringpageintegerpageSizeintegerprojectIdsstringstatesstringtenant_idstringXERO_LIST_PURCHASE_ORDERSRetrieve list of purchase orders from Xero. Purchase orders track goods/services ordered from suppliers.7 params
Retrieve list of purchase orders from Xero. Purchase orders track goods/services ordered from suppliers.
DateFromstringDateTostringIf-Modified-SincestringStatusstringorderstringpageintegertenant_idstringXERO_LIST_TAX_RATESRetrieve tax rates from Xero. Shows available tax codes and rates for the organization.4 params
Retrieve tax rates from Xero. Shows available tax codes and rates for the organization.
TaxTypestringorderstringtenant_idstringwherestringXERO_LIST_TRACKING_CATEGORIESRetrieve tracking categories from Xero. Tracking categories are used to segment data for reporting (e.g., departments, regions).4 params
Retrieve tracking categories from Xero. Tracking categories are used to segment data for reporting (e.g., departments, regions).
includeArchivedbooleanorderstringtenant_idstringwherestringXERO_POST_INVOICE_UPDATETool to update an existing invoice. Use when you need to modify the details of an invoice after it's been created.4 params
Tool to update an existing invoice. Use when you need to modify the details of an invoice after it's been created.
InvoiceIDstringInvoiceNumberstringInvoicesarrayunitdpintegerXERO_UPDATE_CONTACTUpdate an existing contact in Xero. Only provided fields will be updated.12 params
Update an existing contact in Xero. Only provided fields will be updated.
AccountNumberstringBankAccountDetailsstringDefaultCurrencystringEmailAddressstringFirstNamestringLastNamestringNamestringTaxNumberstringcontact_idstringmobile_numberstringphone_numberstringtenant_idstringXERO_UPLOAD_ATTACHMENTUpload a file attachment to a Xero entity (invoice, contact, etc.). Supports PDF, images, and documents.6 params
Upload a file attachment to a Xero entity (invoice, contact, etc.). Supports PDF, images, and documents.
entity_idstringentity_typestringfile_to_uploadstringfilenamestringinclude_onlinebooleantenant_idstringSponsors
Configuration
XERO_TENANT_ID*Xero tenant ID (organisation). Required when AUTH_MODE is 'env'.
XERO_ACCESS_TOKEN*secretXero OAuth2 access token. Required when AUTH_MODE is 'env'.
MCP_TRANSPORTdefault: stdioTransport mode for the server. Set to 'stdio' for local CLI use; the image defaults to 'http' for gateway hosting.
AUTH_MODEdefault: envCredential source: 'env' reads vars locally, 'gateway' expects header injection from the WYRE MCP Gateway.
LOG_LEVELdefault: infoLog verbosity: debug, info, warn, error
Readme
Xero MCP Server
Model Context Protocol (MCP) server for the Xero Accounting API. Enables Claude and other MCP-compatible clients to manage Xero contacts, invoices, payments, accounts, and reports.
Features
- Contacts, invoices, payments, chart of accounts, and financial reports over stdio, HTTP, or Cloudflare Workers transports
- Interactive invoice card (MCP Apps, SEP-1865):
xero_invoices_getrenders as a rich, read-only card in MCP Apps hosts — neutral by default, brandable viawindow.__BRAND__injection orMCP_BRAND_*env vars - Gateway mode for per-request, multi-tenant credentials
One-Click Deployment
Details
- Repository
- github.com/wyre-technology/xero-mcp
- Website
- github.com/wyre-technology/xero-mcp
- Category
- Finance & Commerce
- Package
ghcr.io/wyre-technology/xero-mcp:v1.5.5- Transport
- STDIO
- Auth
- Required
- Registry
- MCP registry, active