Skip to main content

Set up the Xero MCP server

The Xero MCP server gives AI agents access to Xero accounting data, including contacts, invoices, bank transactions, and financial reports. This guide covers creating a Xero app, configuring per-user OAuth or a Custom Connection, and adding the server from the MintMCP store.

Prerequisites

Set up Xero

Xero is pre-listed as a recommended server in the MintMCP MCP store. Pick an authentication method; each path first sets up credentials in the Xero developer portal, then installs and configures the connector in MintMCP.

Per-user OAuth authenticates each team member with their own Xero identity through a Web app you register on the Xero developer portal.

Create a Xero app

  1. Go to developer.xero.com/app/manage and sign in with your Xero account. No separate developer account is needed.

  2. Click New app.

  3. Fill in the form:

    FieldValue
    App nameMintMCP
    Integration typeWeb app
    Company or application URLhttps://app.mintmcp.com
  4. Under Redirect URIs, add https://app.mintmcp.com/oauth/callback.

Add a new Xero app form showing App name set to MintMCP and Web app selected as the integration typeAdd a new Xero app form showing the company URL and OAuth 2.0 redirect URI fields with the Create app button
  1. Click Create app.

  2. Open the Configuration tab, scroll down to Connection, copy the Client id, then click Generate a secret and copy the Client secret; it is not shown again after you navigate away.

Xero app sidebar with the Configuration tab selectedXero app Configuration tab showing the Client id field and the Generate a secret button

Add Xero to MintMCP

  1. In MintMCP, go to MCP store > Manage store.

  2. Find Xero in the recommended servers list and click Install.

  3. The Configure Xero dialog opens with Authentication Method set to OAuth and every field pre-filled except your app credentials, so enter those:

    FieldValue
    Client IDClient id from your Xero app
    Client SecretClient secret from your Xero app
  4. Click Install.

When users first connect to the Xero MCP server through MintMCP, they are redirected to Xero to sign in with their own account. The offline_access scope enables automatic token refresh.

To give agents access to payroll data as well, add payroll.employees, payroll.timesheets, or payroll.settings to the Scopes field.

Troubleshooting

  • invalid_scope on connect: a scope in the list is not valid for your app type. Apps created on or after March 2, 2026 accept only granular scopes. Remove accounting.transactions, accounting.reports.read, or any other broad scope name.
  • Blank redirect after Xero sign-in: the redirect URI https://app.mintmcp.com/oauth/callback is not in your Xero app's Redirect URIs list, or there is a trailing slash or protocol mismatch. Xero requires an exact match.
  • Token refresh fails: the offline_access scope was omitted from the authorization request. Delete the connection in MintMCP, re-authorize with offline_access included, and reconnect.

Security considerations

  • Keep the client secret secure; anyone with it can request tokens against your Xero organization.
  • Per-user OAuth ties each API call to an individual Xero identity, giving you a clearer audit trail than a shared Custom Connection.
  • Custom Connections grant organization-level access shared by all users on the connector.
  • Rotating the client secret in Xero immediately invalidates all active tokens and requires users to re-authorize.

Next steps