Cloud accounting
## Xero MCP Server: Cloud Accounting for Modern Businesses The **Xero MCP Server** brings professional cloud accounting into Google Antigravity, enabling businesses to manage invoicing, bank reconciliation, payroll, and financial reporting through intelligent automation and natural language commands. ### Why Xero MCP? - **Complete accounting** - Full double-entry bookkeeping with automation - **Bank feeds** - Automatic transaction import from 21,000+ financial institutions - **Invoice management** - Professional invoicing with payment tracking - **Multi-currency** - Handle transactions in 160+ currencies with live rates - **Extensive ecosystem** - Connect with 1,000+ business apps ### Key Features #### 1. Invoice Operations ```python # Create and send professional invoices invoice = await mcp.call("xero", "create_invoice", { "type": "ACCREC", "contact_id": "contact_xxx", "line_items": [ { "description": "Consulting Services - January", "quantity": 20, "unit_amount": 200, "account_code": "200", "tax_type": "OUTPUT" } ], "due_date": "2024-02-15", "reference": "PO-12345" }) # Email invoice to customer await mcp.call("xero", "email_invoice", { "invoice_id": invoice["InvoiceID"], "subject": "Invoice from ABC Consulting", "body": "Please find attached your invoice for January services." }) ``` #### 2. Bank Reconciliation ```python # Get unreconciled bank transactions transactions = await mcp.call("xero", "get_bank_transactions", { "bank_account_id": "acc_xxx", "status": "UNRECONCILED", "date_from": "2024-01-01" }) # AI-assisted reconciliation for txn in transactions: matches = await mcp.call("xero", "find_matches", { "transaction_id": txn["BankTransactionID"], "suggest": True }) if matches["confidence"] > 0.9: await mcp.call("xero", "reconcile", { "transaction_id": txn["BankTransactionID"], "matched_item": matches["suggestions"][0]["id"] }) ``` #### 3. Financial Reporting ```python # Generate comprehensive financial reports profit_loss = await mcp.call("xero", "get_report", { "report_type": "ProfitAndLoss", "from_date": "2024-01-01", "to_date": "2024-01-31", "periods": 3, "timeframe": "MONTH" }) balance_sheet = await mcp.call("xero", "get_report", { "report_type": "BalanceSheet", "date": "2024-01-31" }) print(f"Revenue: ${profit_loss[\"Reports\"][0][\"Rows\"][1][\"Cells\"][1][\"Value\"]}") print(f"Total Assets: ${balance_sheet[\"Reports\"][0][\"Rows\"][0][\"Cells\"][1][\"Value\"]}") ``` #### 4. Contact Management ```python # Manage customers and suppliers contact = await mcp.call("xero", "create_contact", { "name": "Acme Corporation", "email": "accounts@acme.com", "is_customer": True, "is_supplier": False, "payment_terms": { "bills_due": 30, "sales_due": 14 }, "tax_number": "123-456-789" }) # Get contact statement statement = await mcp.call("xero", "get_contact_statement", { "contact_id": contact["ContactID"], "from_date": "2023-01-01", "to_date": "2024-01-31" }) ``` ### Configuration ```json { "mcpServers": { "xero": { "command": "npx", "args": ["-y", "@anthropic/mcp-xero"], "env": { "XERO_CLIENT_ID": "your-client-id", "XERO_CLIENT_SECRET": "your-client-secret", "XERO_TENANT_ID": "your-tenant-id", "XERO_SCOPES": "accounting.transactions accounting.contacts accounting.reports.read" } } } } ``` ### Use Cases **Automated Bookkeeping**: Categorize transactions, reconcile accounts, and maintain accurate books with minimal manual effort. **Cash Flow Management**: Monitor receivables, payables, and bank balances for better financial planning. **Multi-Entity Reporting**: Consolidate financials across multiple companies or branches for group reporting. **Tax Compliance**: Maintain GST/VAT compliant records and generate ready-to-file tax reports. The Xero MCP Server transforms complex accounting into conversational finance management.
{
"mcpServers": {
"xero": {
"mcpServers": {
"xero": {
"env": {
"XERO_CLIENT_ID": "your-client-id",
"XERO_CLIENT_SECRET": "your-secret"
},
"args": [
"-y",
"xero-mcp-server"
],
"command": "npx"
}
}
}
}
}