Xero MCP Server

Official

Connect assistants to Xero accounting records, contacts, invoices and accounts using Xero’s MCP server and its documented authentication options.

Local serverstdioGo

What is the Xero MCP Server?

Xero’s MCP server exposes accounting and business operations through the Xero API. It is useful when an assistant needs the organisation’s own invoice, contact or account records rather than general financial information. The project documents custom-connection and bearer-token authentication.

Work from identifiable accounting records

Begin with the intended organisation and reporting period. Find the relevant contact or invoice before asking for a change, and retain its identifier in the explanation. For a reconciliation question, compare the returned records with the source report and keep currency and transaction status visible.

Choose the connection and scopes

The npm package is @xeroapi/xero-mcp-server. Custom connections use a client ID and secret; the alternative bearer-token mode takes precedence when configured. Scope requirements depend on the connection and its creation date. Follow the current scope lists in the README instead of reusing an old bundled-permission example.

Maintainer’s setup and tool reference. Browse accounting MCP servers for related workflows.

Recorded tools

Check the linked publisher documentation and your connected client's tool list. Names and availability can vary with the server version and account permissions.

ToolWhat it does
list-accountsRetrieve chart-of-accounts records.
list-contactsRetrieve Xero contacts.
list-invoicesRetrieve invoices.

How to install the Xero MCP Server

{
  "mcpServers": {
    "xero": {
      "command": "npx",
      "args": [
        "-y",
        "@xeroapi/xero-mcp-server@latest"
      ],
      "env": {
        "XERO_CLIENT_ID": "YOUR_XERO_CLIENT_ID",
        "XERO_CLIENT_SECRET": "YOUR_XERO_CLIENT_SECRET"
      }
    }
  }
}

Configure the current scopes for your Xero custom connection. The README also documents bearer-token authentication.

Configuration

A Xero organisation and developer credentials with the documented accounting scopes.

VariableDescriptionRequired
XERO_CLIENT_IDClient ID for custom-connection authentication.Check documentation
XERO_CLIENT_SECRETClient secret for custom-connection authentication.Check documentation
XERO_CLIENT_BEARER_TOKENAlternative bearer-token authentication; takes precedence if supplied.Optional

Example prompts to try

  • “Find unpaid invoices for this Xero organisation and retain each invoice ID and currency.”

Frequently asked questions

Xero documents @xeroapi/xero-mcp-server.