Aerostack
electrical_services

Xero MCP Server — Hosted Api Connectors Integration

MCP Server language Hosted language Public

Manage invoices, contacts, payments, and financial reports in Xero accounting.

aerostack @aerostack verified
v0.1.0 MIT Updated Jun 28, 2026
robot_2

Use with AI AssistantsMCP

Connect Claude, Cursor, or any MCP-compatible client — then call tools directly

① Add This MCP Server

Paste into your AI client config — then all its tools are available instantly.

.claude/mcp.json
{
  "mcpServers": {
    "xero": {
      "url": "https://mcp.aerostack.dev/s/aerostack/mcp-xero",
      "headers": {
        "Authorization": "Bearer YOUR_AEROSTACK_TOKEN"
      }
    }
  }
}

Replace YOUR_AEROSTACK_TOKEN with your API token from the dashboard.

② Call a Tool

Ask your AI assistant to call a specific tool, or send raw JSON-RPC:

+17 more

Natural Language Prompt

“Use the _ping tool to verify xero credentials by fetching the current organisation. returns org name and base currency

Using a Workspace?

Add this MCP to your Workspace — your team shares one token, secrets are stored securely, and every AI agent in the workspace can call it without per-user setup.

add_circleAdd to Workspace

description Overview

mcp-xero — Xero Accounting MCP Server

Automate your entire Xero accounting workflow — manage invoices, contacts, chart of accounts, financial reports, payments, and bank transactions from any AI agent.

Xero is the world's leading cloud accounting platform for small and medium businesses. This MCP server gives your agents complete access to the Xero API: creating and managing invoices, contacts, accounts, generating financial reports (P&L, Balance Sheet, Cash Flow), processing payments, and querying bank transactions.

Live endpoint: https://mcp.aerostack.dev/s/aerostack/mcp-xero


What You Can Do

  • Automatically create, authorise, and email invoices from any business trigger — new orders, completed milestones, or contract signatures
  • Manage customer and supplier contacts without touching the Xero UI
  • Pull live financial reports (Profit & Loss, Balance Sheet, Cash Flow, Aged Receivables) on demand
  • Reconcile payments against invoices and query bank transactions programmatically

Available Tools

Tool Description
_ping Verify Xero credentials — returns organisation name and base currency
list_invoices List invoices with optional filters (Status, Contact, Date range, pagination)
get_invoice Get full invoice details including line items, tax, and payment history
create_invoice Create a new ACCREC or ACCPAY invoice with line items
update_invoice Update invoice status, line items, due date, or reference
email_invoice Send an invoice to the contact by email
void_invoice Void an invoice (sets status to VOIDED)
list_contacts List contacts filtered by status, name, or email
get_contact Get full contact details by ContactID
create_contact Create a new customer or supplier contact
update_contact Update contact fields
archive_contact Archive a contact (sets ContactStatus to ARCHIVED)
get_organisation Get organisation name, currency, timezone, and financial year
list_accounts List chart of accounts filtered by Type, Status, or Class
get_account Get a specific account by AccountID
get_trial_balance Get trial balance report as of a given date
get_profit_loss Get Profit and Loss report with optional period comparison
get_balance_sheet Get Balance Sheet with optional period comparison
get_cashflow Get Cash Flow Statement for a date range
get_aged_receivables Get Aged Receivables Outstanding report
list_payments List payments filtered by type, status, and date range
create_payment Create a payment against an invoice from a bank account
get_bank_transactions List bank transactions for a specific account

Configuration

Variable Required Description How to Get
XERO_ACCESS_TOKEN Yes OAuth 2.0 access token for the Xero API Xero Developer Portal — create an OAuth 2.0 app, use PKCE flow or token from xero-node SDK
XERO_TENANT_ID Yes Xero organisation tenant ID (UUID) Call GET https://api.xero.com/connections with your access token — use tenantId from the response

Quick Start

Add to Aerostack Workspace
  1. Go to aerostack.dev → Your Project → MCPs
  2. Search for "Xero" and click Add to Workspace
  3. Add your XERO_ACCESS_TOKEN and XERO_TENANT_ID under Project → Secrets

Once added, every AI agent in your workspace can automate Xero accounting — no per-user setup needed.

Example Prompts
"Create an invoice for Acme Corp for 10 hours of consulting at $150/hour, due in 30 days"
"Pull the Profit and Loss report for Q1 2026 and summarise the top expense categories"
"List all overdue invoices and send email reminders to each contact"
"Show me the aged receivables as of today and flag anyone over 60 days outstanding"
Direct API Call
curl -X POST https://mcp.aerostack.dev/s/aerostack/mcp-xero \
  -H 'Content-Type: application/json' \
  -H 'X-Mcp-Secret-XERO-ACCESS-TOKEN: your-access-token' \
  -H 'X-Mcp-Secret-XERO-TENANT-ID: your-tenant-id' \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"list_invoices","arguments":{"Status":"AUTHORISED","page":1}}}'

License

MIT

terminal Tools (23)

Available tools on this MCP server. Each tool can be called directly from any AI agent.

terminal
_ping #1

Verify Xero credentials by fetching the current organisation. Returns org name and base currency.

terminal
list_invoices #2

List invoices with optional filters. Returns InvoiceID, Type, Contact, Status, Total, AmountDue.

terminal
get_invoice #3

Get full details of an invoice by InvoiceID, including line items, contact, tax, and payment history.

terminal
create_invoice #4

Create a new invoice (ACCREC = accounts receivable, ACCPAY = accounts payable).

terminal
update_invoice #5

Update an existing invoice. InvoiceID must be included in the body.

terminal
email_invoice #6

Send an invoice to a contact by email.

terminal
void_invoice #7

Void an invoice by setting its status to VOIDED.

terminal
list_contacts #8

List contacts with optional filters. Returns ContactID, Name, EmailAddress, IsSupplier, IsCustomer.

terminal
get_contact #9

Get full details of a contact by ContactID.

terminal
create_contact #10

Create a new contact in Xero. Name is required.

terminal
update_contact #11

Update fields on an existing contact. Provide only the fields to change.

terminal
archive_contact #12

Archive a contact by setting ContactStatus to ARCHIVED.

terminal
get_organisation #13

Get the current organisation details: name, base currency, timezone, tax number, and financial year end.

terminal
list_accounts #14

List the chart of accounts, optionally filtered by Type, Status, or Class.

terminal
get_account #15

Get a specific account from the chart of accounts by AccountID.

terminal
get_trial_balance #16

Get the trial balance report showing debit and credit balances for all accounts.

terminal
get_profit_loss #17

Get the Profit and Loss report. Supports multi-period comparison.

terminal
get_balance_sheet #18

Get the Balance Sheet report showing assets, liabilities, and equity.

terminal
get_cashflow #19

Get the Cash Flow Statement report.

terminal
get_aged_receivables #20

Get the Aged Receivables Outstanding report.

terminal
list_payments #21

List payments with optional filters by status, type, and date range.

terminal
create_payment #22

Create a payment against an invoice. Links an invoice to a bank account with a payment amount.

terminal
get_bank_transactions #23

List bank transactions for a bank account, with optional date range and pagination.

Details

upgrade Version 0.1.0
gavel License MIT
wifi Transport streamable-http
lock Access Public
category Category API Connectors
terminal Tools 23

language Live Endpoint

https://mcp.aerostack.dev/s/aerostack/mcp-xero

Sub-50ms globally · Zero cold start

Publisher

aerostack
@aerostack verified

Pre-built functions for the most common MCP tool patterns. Clone, extend, and deploy.

Tags

Browse more servers

More in API Connectors

Browse API Connectors MCPs →

Frequently asked questions

What is the Xero MCP server and what can it do? +

The Xero MCP server is hosted on Aerostack and exposes these tools to your AI agent: `_ping`, `list_invoices`, `get_invoice`, `create_invoice`, `update_invoice`. You get one hosted URL — no self-hosting — that works from Claude, Cursor, ChatGPT, Gemini, VS Code, or any MCP-compatible client, and you can share it with your team or combine it with other MCP servers in a workspace.

Is the Xero MCP server hosted, or do I have to run it myself? +

It's hosted on Aerostack's edge infrastructure — you don't deploy or maintain anything. Add it to a workspace and you get one authenticated URL, with secrets encrypted, that any AI agent or editor can connect to. Use it solo or share the same URL across your whole team.

Which AI agents and editors can use the Xero MCP server? +

Any MCP client: Claude and Claude Code, Cursor, ChatGPT, Gemini, Windsurf, Cline, VS Code, and custom agents. Because it's one hosted URL, the same Xero MCP server works everywhere — and you can compose it with other MCP servers, skills, and functions behind a single workspace URL.

How do I install the Xero MCP server in Claude Desktop? +

Add the following to your Claude Desktop config (`claude_desktop_config.json`): ```json { "mcpServers": { "@aerostack/mcp-xero": { "command": "npx", "args": ["-y", "@aerostack/@aerostack/mcp-xero"] } } } ``` Then restart Claude Desktop and the tools will appear automatically.

How do I use the Xero MCP server in Cursor? +

In Cursor, open **Settings → MCP** and add: ```json { "name": "@aerostack/mcp-xero", "command": "npx", "args": ["-y", "@aerostack/@aerostack/mcp-xero"] } ``` Save and reload Cursor. The MCP tools will be available in Agent mode.

Does Xero MCP require authentication? +

Yes. Xero requires authentication. Check the MCP's documentation for the required credentials.