Xero MCP Server

Official
by XeroAPI
Verified

hybrid server

The server is able to function both locally and remotely, depending on the configuration or use case.

Integrations

  • Provides a bridge to Xero's accounting and business features, including contact management, chart of accounts management, and invoice creation and management, using OAuth2 authentication.

Servidor MCP de Xero

Esta es una implementación de servidor del Protocolo de Contexto de Modelo (MCP) para Xero. Proporciona un puente entre el protocolo MCP y la API de Xero, lo que permite un acceso estandarizado a las funciones de contabilidad y empresariales de Xero.

Características

  • Autenticación OAuth2 de Xero con conexiones personalizadas
  • Gestión de contactos
  • Gestión del plan de cuentas
  • Creación y gestión de facturas
  • Cumplimiento del protocolo MCP

Prerrequisitos

  • Node.js (v18 o superior)
  • npm o pnpm
  • Una cuenta de desarrollador de Xero con credenciales de API

Documentos y enlaces

Configuración

Crear una cuenta de Xero

Si aún no tiene una cuenta y una organización de Xero, puede crear una registrándose aquí usando la prueba gratuita.

Recomendamos usar una empresa de demostración para empezar, ya que incluye datos de muestra precargados. Una vez iniciada la sesión, acceda a ella mediante el menú desplegable superior izquierdo y seleccione "Empresa de demostración". Puede restablecer los datos de una empresa de demostración o cambiar el país en cualquier momento mediante el menú desplegable superior izquierdo y accediendo a Mi Xero .

NOTA: Para utilizar consultas específicas de nómina, la región debe ser Nueva Zelanda o Reino Unido.

Autenticación

Hay 2 modos de autenticación admitidos en el servidor Xero MCP:

1. Conexiones personalizadas

Esta es una mejor opción para pruebas y desarrollo, ya que permite especificar el ID de cliente y los secretos para una organización específica. También es el enfoque recomendado si se integra con clientes MCP de terceros, como Claude Desktop.

Configuración de su cuenta de desarrollador de Xero

Configure una conexión personalizada siguiendo estas instrucciones: https://developer.xero.com/documentation/guides/oauth2/custom-connections/

Actualmente se requieren los siguientes ámbitos para todas las sesiones: ámbitos

Integración del servidor MCP con Claude Desktop

Para agregar el servidor MCP a Claude, vaya a Configuración > Desarrollador > Editar configuración y agregue lo siguiente a su archivo claude_desktop_config.json:

{ "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" } } } }

NOTA: Si está utilizando la sección "command": "npx" de Node Version Manager, cámbiela para que sea la ruta completa al ejecutable, es decir: your_home_directory/.nvm/versions/node/v22.14.0/bin/npx en Mac/Linux o "your_home_directory\\.nvm\\versions\\node\\v22.14.0\\bin\\npx" en Windows

2. Token al portador

Esta es una mejor opción si desea admitir varias cuentas de Xero en tiempo de ejecución y permitir que el cliente MCP ejecute un flujo de autenticación (como PKCE) según sea necesario. En este caso, utilice la siguiente configuración:

{ "mcpServers": { "xero": { "command": "npx", "args": ["-y", "@xeroapi/xero-mcp-server@latest"], "env": { "XERO_CLIENT_BEARER_TOKEN": "your_bearer_token" } } } }

NOTA: XERO_CLIENT_BEARER_TOKEN tendrá prioridad sobre XERO_CLIENT_ID si está definido.

Comandos MCP disponibles

  • list-accounts : Recuperar una lista de cuentas
  • list-contacts : recupera una lista de contactos de Xero
  • list-credit-notes : Recuperar una lista de notas de crédito
  • list-invoices : Recuperar una lista de facturas
  • list-items : recupera una lista de elementos
  • list-organisation-details : recupera detalles sobre una organización
  • list-profit-and-loss : Recuperar un informe de ganancias y pérdidas
  • list-quotes : Recuperar una lista de citas
  • list-tax-rates : recupera una lista de tasas impositivas
  • list-payments : recupera una lista de pagos
  • list-trial-balance : Recuperar un informe de balance de comprobación
  • list-profit-and-loss : Recuperar un informe de ganancias y pérdidas
  • list-bank-transactions : recupera una lista de transacciones de cuentas bancarias
  • list-payroll-employees : Recuperar una lista de empleados de nómina
  • list-report-balance-sheet : Recuperar un informe de balance general
  • list-payroll-employee-leave : recupera los registros de licencia de un empleado de nómina
  • list-payroll-employee-leave-balances : Recuperar los saldos de licencias de un empleado de nómina
  • list-payroll-employee-leave-types : recupera una lista de tipos de licencia de nómina
  • list-payroll-leave-periods : recupera una lista de los períodos de licencia de un empleado de nómina
  • list-payroll-leave-types : recupera una lista de todos los tipos de licencia disponibles en Xero Payroll
  • list-aged-receivables-by-contact : recupera cuentas por cobrar vencidas de un contacto
  • list-aged-payables-by-contact : recupera las cuentas por pagar vencidas de un contacto
  • list-contact-groups : recupera una lista de grupos de contactos
  • create-contact : Crea un nuevo contacto
  • create-credit-note : Crea una nueva nota de crédito
  • create-invoice : Crea una nueva factura
  • create-payment : Crea un nuevo pago
  • create-quote : Crea una nueva cotización
  • create-credit-note : Crea una nueva nota de crédito
  • create-payroll-timesheet : Crea una nueva hoja de horas de nómina
  • update-contact : Actualizar un contacto existente
  • update-invoice : Actualizar un borrador de factura existente
  • update-quote : Actualizar un borrador de cotización existente
  • update-credit-note : Actualizar un borrador de nota de crédito existente
  • update-payroll-timesheet-line : Actualizar una línea en una hoja de horas de nómina existente
  • approve-payroll-timesheet : Aprobar una planilla de nómina
  • revert-payroll-timesheet : Revertir una hoja de horas de nómina aprobada
  • add-payroll-timesheet-line : Agregar nueva línea en una hoja de horas de nómina existente
  • delete-payroll-timesheet : Eliminar una hoja de horas de nómina existente
  • get-payroll-timesheet : Recuperar una hoja de horas de nómina existente

Para obtener documentación detallada de la API, consulte la Especificación del protocolo MCP .

Para desarrolladores

Instalación

# Using npm npm install # Using pnpm pnpm install

Ejecutar una compilación

# Using npm npm run build # Using pnpm pnpm build

Integración con Claude Desktop

Para vincular su servidor Xero MCP en desarrollo a Claude Desktop, vaya a Configuración > Desarrollador > Editar configuración y agregue lo siguiente a su archivo claude_desktop_config.json :

NOTA: Para Windows, asegúrese de que la ruta args escape el \ entre carpetas, por ejemplo, "C:\\projects\xero-mcp-server\\dist\\index.js"

{ "mcpServers": { "xero": { "command": "node", "args": ["insert-your-file-path-here/xero-mcp-server/dist/index.js"], "env": { "XERO_CLIENT_ID": "your_client_id_here", "XERO_CLIENT_SECRET": "your_client_secret_here" } } } }

Licencia

Instituto Tecnológico de Massachusetts (MIT)

Seguridad

No envíe su archivo .env ni ninguna credencial confidencial al control de versiones (está incluido en .gitignore como un valor predeterminado seguro).

You must be authenticated.

A
security – no known vulnerabilities
A
license - permissive license
A
quality - confirmed to work

Una implementación de servidor de Protocolo de Contexto de Modelo que proporciona acceso estandarizado a las funciones comerciales y contables de Xero, lo que permite operaciones como administración de contactos, creación de facturas y administración de planes de cuentas a través de MCP.

  1. Features
    1. Prerequisites
      1. Docs and Links
        1. Setup
          1. Create a Xero Account
          2. Authentication
          3. Available MCP Commands
        2. For Developers
          1. Installation
          2. Run a build
          3. Integrating with Claude Desktop
        3. License
          1. Security
            ID: 4rsnaczg6q