Lets MCP clients work with Xero accounting data, including authentication, transactions and invoices.
Setup
Choose your client, copy the config, then fill in any required environment variables.
claude mcp add xero-john-zhang-dev --env XERO_CLIENT_ID='<XERO_CLIENT_ID>' --env XERO_CLIENT_SECRET='<XERO_CLIENT_SECRET>' --env XERO_REDIRECT_URI='<XERO_REDIRECT_URI>' -- npx -y xero-mcp@latest~/.codex/config.toml
[mcp_servers.xero-john-zhang-dev]
command = "npx"
args = ["-y", "xero-mcp@latest"]
env = { XERO_CLIENT_ID = "<XERO_CLIENT_ID>", XERO_CLIENT_SECRET = "<XERO_CLIENT_SECRET>", XERO_REDIRECT_URI = "<XERO_REDIRECT_URI>" }
# codex mcp add xero-john-zhang-dev --env XERO_CLIENT_ID='<XERO_CLIENT_ID>' --env XERO_CLIENT_SECRET='<XERO_CLIENT_SECRET>' --env XERO_REDIRECT_URI='<XERO_REDIRECT_URI>' -- npx -y xero-mcp@latest~/.cursor/mcp.json
{
"mcpServers": {
"xero-john-zhang-dev": {
"command": "npx",
"args": [
"-y",
"xero-mcp@latest"
],
"env": {
"XERO_CLIENT_ID": "<XERO_CLIENT_ID>",
"XERO_CLIENT_SECRET": "<XERO_CLIENT_SECRET>",
"XERO_REDIRECT_URI": "<XERO_REDIRECT_URI>"
}
}
}
}.vscode/mcp.json
{
"servers": {
"xero-john-zhang-dev": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"xero-mcp@latest"
],
"env": {
"XERO_CLIENT_ID": "<XERO_CLIENT_ID>",
"XERO_CLIENT_SECRET": "<XERO_CLIENT_SECRET>",
"XERO_REDIRECT_URI": "<XERO_REDIRECT_URI>"
}
}
}
}~/.gemini/settings.json
{
"mcpServers": {
"xero-john-zhang-dev": {
"command": "npx",
"args": [
"-y",
"xero-mcp@latest"
],
"env": {
"XERO_CLIENT_ID": "<XERO_CLIENT_ID>",
"XERO_CLIENT_SECRET": "<XERO_CLIENT_SECRET>",
"XERO_REDIRECT_URI": "<XERO_REDIRECT_URI>"
}
}
}
}claude_desktop_config.json
{
"mcpServers": {
"xero-john-zhang-dev": {
"command": "npx",
"args": [
"-y",
"xero-mcp@latest"
],
"env": {
"XERO_CLIENT_ID": "<XERO_CLIENT_ID>",
"XERO_CLIENT_SECRET": "<XERO_CLIENT_SECRET>",
"XERO_REDIRECT_URI": "<XERO_REDIRECT_URI>"
}
}
}
}.trae/mcp.json
{
"mcpServers": {
"xero-john-zhang-dev": {
"command": "npx",
"args": [
"-y",
"xero-mcp@latest"
],
"env": {
"XERO_CLIENT_ID": "<XERO_CLIENT_ID>",
"XERO_CLIENT_SECRET": "<XERO_CLIENT_SECRET>",
"XERO_REDIRECT_URI": "<XERO_REDIRECT_URI>"
}
}
}
}Environment variables
XERO_CLIENT_IDXERO_CLIENT_SECRETXERO_REDIRECT_URI
Replace the placeholders with your own credentials and keep them out of version control.