Skip to main content
Glama
XeroAPI

Xero MCP Server

Official

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
XERO_CLIENT_IDYesYour Xero client ID from your Custom Connection
XERO_CLIENT_SECRETYesYour Xero client secret from your Custom Connection

Tools

Functions exposed to the LLM to take actions

NameDescription
delete-timesheet

Delete an existing payroll timesheet in Xero by its ID.

get-timesheet

Retrieve a single payroll timesheet from Xero by its ID. This provides details such as the timesheet ID, employee ID, start and end dates, total hours, and the last updated date.

create-contact

Create a contact in Xero. When a contact is created, a deep link to the contact in Xero is returned. This deep link can be used to view the contact in Xero directly. This link should be displayed to the user.

create-credit-note

Create a credit note in Xero. When a credit note is created, a deep link to the credit note in Xero is returned. This deep link can be used to view the credit note in Xero directly. This link should be displayed to the user.

create-manual-journal

Create a manual journal in Xero. Retrieve a list of account codes in Xero to use for the journal lines. Journal lines must contain at least two individual journal lines with account codes, use basic accounting account types pairing when not specified, and make sure journal line pairs have credit and debit balanced.

create-invoice

Create an invoice in Xero. When an invoice is created, a deep link to the invoice in Xero is returned. This deep link can be used to view the invoice in Xero directly. This link should be displayed to the user.

create-quote

Create a quote in Xero. When a quote is created, a deep link to the quote in Xero is returned. This deep link can be used to view the quote in Xero directly. This link should be displayed to the user.

create-payment

Create a payment against an invoice in Xero. This tool records a payment transaction against an invoice. You'll need to provide the invoice ID, account ID to make the payment from, and the amount. The amount must be positive and should not exceed the remaining amount due on the invoice. A payment can only be created for an invoice that is status AUTHORIZED A payment can only be created for an invoice that is not fully paid When a payment is created, a deep link to the payment in Xero is returned. This deep link can be used to view the payment in Xero directly. This link should be displayed to the user.

create-item

Create an item in Xero.

create-bank-transaction

Create a bank transaction in Xero. When a bank transaction is created, a deep link to the bank transaction in Xero is returned. This deep link can be used to view the bank transaction in Xero directly. This link should be displayed to the user.

create-timesheet

Create a new payroll timesheet in Xero. This allows you to specify details such as the employee ID, payroll calendar ID, start and end dates, and timesheet lines.

create-tracking-category

Create a tracking category in Xero.

create-tracking-options

Create tracking options for a tracking category in Xero.

list-accounts

Lists all accounts in Xero. Use this tool to get the account codes and names to be used when creating invoices in Xero

list-contacts

List all contacts in Xero. This includes Suppliers and Customers.

list-credit-notes

List credit notes in Xero. Ask the user if they want to see credit notes for a specific contact, or to see all credit notes before running. Ask the user if they want the next page of credit notes after running this tool if 10 credit notes are returned. If they want the next page, call this tool again with the next page number and the contact if one was provided in the previous call.

list-invoices

List invoices in Xero. This includes Draft, Submitted, and Paid invoices. Ask the user if they want to see invoices for a specific contact, invoice number, or to see all invoices before running. Ask the user if they want the next page of invoices after running this tool if 10 invoices are returned. If they want the next page, call this tool again with the next page number and the contact or invoice number if one was provided in the previous call.

list-items

Lists all items in Xero. Use this tool to get the item codes and descriptions to be used when creating invoices in Xero

list-manual-journals

List all manual journals from Xero. Ask the user if they want to see a specific manual journal or all manual journals before running. Can optionally pass in manual journal ID to retrieve a specific journal, or a date to filter journals modified after that date. The response presents a complete overview of all manual journals currently registered in your Xero account, with their details. Ask the user if they want the next page of manual journals after running this tool if 10 manual journals are returned. If they want the next page, call this tool again with the next page number, modified date, and the manual journal ID if one was provided in the previous call.

list-quotes

List all quotes in Xero. Ask the user if they want to see quotes for a specific contact before running. Ask the user if they want the next page of quotes after running this tool if 10 quotes are returned. If they do, call this tool again with the page number and the contact provided in the previous call.

list-tax-rates

Lists all tax rates in Xero. Use this tool to get the tax rates to be used when creating invoices in Xero

list-trial-balance

Lists trial balance in Xero. This provides a snapshot of the general ledger, showing debit and credit balances for each account.

list-payments

List payments in Xero. This tool shows all payments made against invoices, including payment date, amount, and payment method. You can filter payments by invoice number, invoice ID, payment ID, or invoice reference. Ask the user if they want to see payments for a specific invoice, contact, payment or reference before running. If many payments are returned, ask the user if they want to see the next page.

list-profit-and-loss

Lists profit and loss report in Xero. This provides a summary of revenue, expenses, and profit or loss over a specified period of time.

list-bank-transactions

List all bank transactions in Xero. Ask the user if they want to see bank transactions for a specific bank account, or to see all bank transactions before running. Ask the user if they want the next page of quotes after running this tool if 10 bank transactions are returned. If they do, call this tool again with the next page number and the bank account if one was provided in the provided in the previous call.

list-payroll-employees

List all payroll employees in Xero. This retrieves comprehensive employee details including names, User IDs, dates of birth, email addresses, gender, phone numbers, start dates, engagement types (Permanent, FixedTerm, or Casual), titles, and when records were last updated. The response presents a complete overview of all staff currently registered in your Xero payroll, with their personal and employment information. If there are many employees, ask the user if they would like to see more detailed information about specific employees before proceeding.

list-report-balance-sheet

List the Balance Sheet report from Xero.

list-organisation-details

Lists the organisation details from Xero. Use this tool to get information about the current Xero organisation.

list-payroll-employee-leave

List all leave records for a specific employee in Xero. This shows all leave transactions including approved, pending, and processed time off. Provide an employee ID to see their leave history.

list-payroll-leave-periods

List all leave periods for a specific employee in Xero. This shows detailed time off periods including start and end dates, period status, payment dates, and leave types. Provide an employee ID to see their leave periods.

list-payroll-employee-leave-types

List all leave types available for a specific employee in Xero. This shows detailed information about the types of leave an employee can take, including schedule of accrual, leave type name, and entitlement.

list-payroll-employee-leave-balances

List all leave balances for a specific employee in Xero. This shows current leave balances for all leave types available to the employee, including annual, sick, and other leave types.

list-payroll-leave-types

Lists all available leave types in Xero Payroll. This provides information about all the leave categories configured in your Xero system, including statutory and organization-specific leave types.

list-aged-receivables-by-contact

Lists the aged receivables in Xero. This shows aged receivables for a certain contact up to a report date.

list-aged-payables-by-contact

Lists the aged payables in Xero. This shows aged payables for a certain contact up to a report date.

list-timesheets

List all payroll timesheets in Xero. This retrieves comprehensive timesheet details including timesheet IDs, employee IDs, start and end dates, total hours, and the last updated date.

list-contact-groups

List all contact groups in Xero. You can optionally specify a contact group ID to retrieve details for that specific group, including its contacts.

list-tracking-categories

List all tracking categories in Xero, along with their associated tracking options.

update-contact

Update a contact in Xero. When a contact is updated, a deep link to the contact in Xero is returned. This deep link can be used to view the contact in Xero directly. This link should be displayed to the user.

update-credit-note

Update a credit note in Xero. Only works on draft credit notes. All line items must be provided. Any line items not provided will be removed. Including existing line items. Do not modify line items that have not been specified by the user. When a credit note is updated, a deep link to the credit note in Xero is returned. This deep link can be used to view the credit note in Xero directly. This link should be displayed to the user.

update-invoice

Update an invoice in Xero. Only works on draft invoices. All line items must be provided. Any line items not provided will be removed. Including existing line items. Do not modify line items that have not been specified by the user. When an invoice is updated, a deep link to the invoice in Xero is returned. This deep link can be used to view the contact in Xero directly. This link should be displayed to the user.

update-manual-journal

Update a manual journal in Xero. Only works on draft manual journals. Do not modify line items or parameters that have not been specified by the user.

update-quote

Update a quote in Xero. Only works on draft quotes. All line items must be provided. Any line items not provided will be removed. Including existing line items. Do not modify line items that have not been specified by the user. When a quote is updated, a deep link to the quote in Xero is returned. This deep link can be used to view the quote in Xero directly. This link should be displayed to the user.

update-item

Update an item in Xero.

update-bank-transaction

Update a bank transaction in Xero. When a bank transaction is updated, a deep link to the bank transaction in Xero is returned. This deep link can be used to view the bank transaction in Xero directly. This link should be displayed to the user.

approve-timesheet

Approve a payroll timesheet in Xero by its ID.

add-timesheet-line

Add a new timesheet line to an existing payroll timesheet in Xero.

update-timesheet-line

Update an existing timesheet line in a payroll timesheet in Xero.

revert-timesheet

Revert a payroll timesheet to draft in Xero by its ID.

update-tracking-category

Updates an existing tracking category in Xero.

update-tracking-options

Updates tracking options for a tracking category in Xero.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/XeroAPI/xero-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server