A laptop showing Xero invoices and a chart of accounts, linked by a connector to a friendly AI assistant

Xero MCP Server: What It Does and How to Connect Xero to AI in 2026

Yes — Xero has an official MCP server. It’s published by XeroAPI, the team behind Xero’s developer platform, and it gives any MCP-compatible AI read and write access to your Xero organisation — invoices, contacts, the chart of accounts, payments, payroll, and financial reports. The catch worth knowing up front: it’s a self-hosted, local server you run yourself with developer credentials, not a hosted mcp.xero.com you click to authorize. Don’t confuse it with JAX (Just Ask Xero), Xero’s own in-product AI companion — that’s a different thing, built into Xero rather than a connector for outside AI clients.

And even once it’s running, an MCP server hands Xero to an AI inside a conversation you start. It’s a doorway, not a worker. Nothing watches your ledger for you, nothing fires when an invoice goes overdue, and nothing runs while the chat is closed. Here’s exactly what the Xero MCP does, how to turn it on, where it stops — and what to use when you want Xero work that runs on its own.


What the Xero MCP server does

Model Context Protocol (MCP) is the open standard that lets an AI client — Claude, ChatGPT, Cursor, VS Code, and others — talk to an outside app through a shared interface. Xero maintains an official server, XeroAPI/xero-mcp-server, that runs locally through your AI client and connects to Xero’s accounting and payroll API.

With it connected, an AI client can:

  • Look up records — “pull the last three invoices for Acme and their payment status” answered from your live Xero data.
  • Query and report — run a profit-and-loss, trial balance, or aged-receivables report and reason over the numbers in plain language.
  • Create and update — draft an invoice, add a contact, log a bank transaction or credit note without opening Xero.
  • Reach payroll and tracking — read employees, timesheets, and leave records, and work across tracking categories and the chart of accounts.

It’s genuinely useful for ad-hoc work: ask a question, get an answer grounded in your real books, make a change on the spot.

How to set up the Xero MCP server

There’s no hosted URL to point at — you run the server yourself, so this is a developer-flavored setup even though it’s official:

  1. Register a developer app in Xero. In the Xero developer portal, create an app and set up a custom connection (Xero’s machine-to-machine OAuth2 flow) to get a client ID and secret. A custom connection is tied to a single Xero organisation.
  2. Add the server to your AI client’s config. Point it at npx -y @xeroapi/xero-mcp-server@latest and pass your XERO_CLIENT_ID and XERO_CLIENT_SECRET as environment variables.
  3. Restart the client so the Xero tools register, then start a chat and ask it to read a report or list your invoices.

Two things to keep in mind: a custom connection covers one organisation at a time, and Xero’s scope model got more granular in April 2026, so you grant the AI exactly the read/write permissions the connection carries. Xero’s docs on custom connections cover the OAuth side.

Where the Xero MCP stops

None of this is a knock on MCP — it’s just the shape of the protocol. Four limits show up the moment you want more than a conversation:

  • It only works inside a chat you start. Close the window and nothing happens. The AI doesn’t watch Xero; it waits for you to ask.
  • No triggers. An invoice going overdue, a payment landing, a bill needing approval — none of these can start anything through MCP. There’s no “when this happens in Xero, do that.”
  • It’s one app, one org at a time. The Xero MCP knows the organisation its custom connection points at. Getting an overdue invoice into a Slack reminder, a follow-up email, and a Google Sheet means wiring up (and authing) a separate MCP server for each and hoping your client can juggle them in one turn.
  • You own the plumbing and the scopes. You registered the app, you host the process, and the client ID, secret, and read/write blast radius on your live books are all on you.

So the Xero MCP is a great way to ask your books questions and make one-off edits. It is not a way to make Xero run — to have work happen on a schedule or in reaction to an event, across the other tools an invoice or payment touches.

Running Xero work that doesn’t need a chat open

That “run on its own, across apps” gap is exactly where Carly fits. Carly connects to Xero natively — no local server to host, no developer app to register, no client secret to manage — and to the ~260 other apps it supports natively, plus anything with a public API through your own key. The difference from MCP is the important part: Carly’s workflows are triggered and scheduled, so Xero work happens whether or not anyone has a chat window open.

A few things that MCP can’t do but a Carly workflow can:

  • When an invoice goes overdue in Xero → send the client a reminder email, post a note in the #finance Slack channel, and flag the account for follow-up — automatically, the moment it happens.
  • Every morning → pull yesterday’s new invoices and payments and send a cash-flow summary to the owner.
  • When a deal closes in your CRM → create the matching contact and draft invoice in Xero and log the amount to a Google Sheet.

The non-AI steps — the moving, matching, and routing between apps — are free and unlimited, the Zapier-style backbone of the workflow. The AI steps (drafting, summarizing, deciding) start at $35/month. You describe the outcome in plain language and Carly wires up the Xero connection and everything downstream.

If you just want to interrogate your books from a chat, Xero’s official MCP server is the right tool, once you’ve run through its developer setup. If you want Xero to actually do things — on a trigger, on a schedule, across every app an invoice flows through — that’s the job MCP wasn’t built for, and it’s the one Carly was.

FAQ

Does Xero have an official MCP server? Yes. XeroAPI publishes XeroAPI/xero-mcp-server, an official server that gives MCP-compatible AI tools read/write access to your Xero organisation. It’s self-hosted and runs locally through your AI client rather than as a hosted remote URL, and it’s separate from JAX, Xero’s built-in AI companion.

What do I need to run the Xero MCP server? A Xero developer app with a custom connection (client ID and secret) and a client that can run the server via npx. The server itself is free; you still need a Xero plan that supports custom connections, and each connection covers one organisation.

Can the Xero MCP trigger automations? No. MCP is request/response inside an AI chat — it has no triggers and nothing runs when the conversation is closed. For event- or schedule-driven Xero work across apps, you need a workflow tool like Carly rather than an MCP server.

Can I connect Xero to AI without coding or hosting a server? Yes. You don’t have to register a developer app or run a local server at all. Carly connects to Xero for you and lets you build the automation in plain language — describe what you want to happen and it wires up the accounting connection and the other apps involved, with no server to host and no code to write.

Ready to automate your busywork?

Carly schedules, researches, and briefs you—so you can focus on what matters.

See what people say

"Before Carly, I relied on a Calendly link, but the whole process felt impersonal and not very professional. Carly changed that by handling all the back-and-forth, so I'm no longer stuck in endless email threads trying to line up schedules.

Now Carly reaches out to candidates, shares my real-time availability, lets them pick a slot, then sends a Zoom link and drops it straight into my calendar. She sends reminders to both of us before each call, which has significantly reduced no-shows and last-minute confusion.

On top of scheduling, Carly acts like a full executive assistant, sending me my schedule the night before so I can prepare for each call. It reminds me of the old x.ai assistant, but Carly is noticeably smarter, faster, and better suited to my healthcare recruitment business."

Gus Ibrahim, Founder & Director, IHR