xero
An MCP server that integrates with the MCP protocol. https://modelcontextprotocol.io/introduction
claude mcp add --transport stdio xeroapi-xero-mcp-server npx -y @xeroapi/xero-mcp-server@latest \ --env XERO_CLIENT_ID="your_client_id_here" \ --env XERO_CLIENT_SECRET="your_client_secret_here"
How to use
The Xero MCP Server serves as a bridge between the MCP protocol and Xero's API, enabling standardized access to Xero data such as contacts, accounts, invoices, and more. It authenticates with Xero via OAuth2 (custom connections) or a bearer token, and exposes a set of MCP commands (for example, list-contacts, create-invoice, list-accounts, list-invoices, update-invoice, etc.) that MCP clients can invoke in a consistent way. This makes it possible to integrate Xero data into other MCP-compliant clients or tooling (including Claude Desktop) by issuing the standard MCP commands and receiving structured responses.
Key capabilities include: authenticating via custom connections or a bearer token, retrieving and manipulating core Xero resources (contacts, invoices, accounts, bank transactions, payroll data, etc.), and performing common operations like creating invoices or updating contacts. The server handles the mapping between MCP requests and the corresponding Xero API calls and returns MCP-compatible responses.
How to install
Prerequisites:
- Node.js v18 or higher installed on your system
- npm or pnpm (npm is used in the examples below)
- A Xero developer account with API credentials (Client ID/Client Secret) or a bearer token as an alternative authentication method
Installation steps:
- Install the MCP server package locally (or you can run via npx directly):
# Option A: Local installation
npm install @xeroapi/xero-mcp-server
# Option B: Quick run with npx (no local install)
npx -y @xeroapi/xero-mcp-server@latest
- Configure the MCP server in your Claude Desktop integration or MCP client against the package. Example configuration (custom connections):
{
"mcpServers": {
"xero": {
"command": "npx",
"args": ["-y", "@xeroapi/xero-mcp-server@latest"],
"env": {
"XERO_CLIENT_ID": "your_client_id_here",
"XERO_CLIENT_SECRET": "your_client_secret_here"
}
}
}
}
-
Start or invoke the server via your chosen method. If you used npx directly, the command will start the MCP server process and expose the MCP endpoints as per the package defaults. If you installed locally, you can run the direct Node entry or use npx as shown above.
-
Ensure network access to Xero APIs and that your OAuth2 redirect/callbacks are correctly configured in the Xero developer console.
-
Optional: If you prefer bearer-token authentication, set the XERO_CLIENT_BEARER_TOKEN environment variable instead of client id/secret:
"env": {
"XERO_CLIENT_BEARER_TOKEN": "your_bearer_token"
}
Additional notes
Notes and tips:
- The server supports two authentication modes: Custom Connections (client_id/secret per organisation) and Bearer Token (single token for multi-account access). Choose the mode that best fits your deployment scenario.
- Required OAuth scopes typically include: accounting.invoices, accounting.invoices.read, accounting.contacts, accounting.accounts, accounting.payments, accounting.banktransactions, accounting.manualjournals, and relevant payroll scopes. Check the latest Xero OAuth scopes documentation for updates.
- If you rely on Claude Desktop or similar clients, update claude_desktop_config.json with the provided xero mcpServers block to enable integration.
- If you see issues with Node version resolution, you can pin to a specific npx path as noted in the docs (e.g., your_home_directory/.nvm/versions/node/vXX.X.X/bin/npx).
- Ensure you’re using a Demo Company or proper test data in Xero to avoid affecting production data during development.
- The MCP server exposes a broad set of list and create/update commands (e.g., list-contacts, create-invoice, update-invoice, list-accounts, list-bank-transactions, etc.). Refer to the README for the complete command list and usage patterns.
Related MCP Servers
iterm
A Model Context Protocol server that executes commands in the current iTerm session - useful for REPL and CLI assistance
mcp
Octopus Deploy Official MCP Server
furi
CLI & API for MCP management
editor
MCP Server for Phaser Editor
DoorDash
MCP server from JordanDalton/DoorDash-MCP-Server
mcp
MCP сервер для автоматического создания и развертывания приложений в Timeweb Cloud