Xero Mcp Servidor
Un servidor MCP que se integra con el protocolo MCP. https://modelcontextprotocol.io/introduction
Resumen
¿Qué es xero-mcp-server?
El ### xero-mcp-server es una implementación de un servidor que se integra con el Protocolo de Contexto del Modelo (MCP). Este servidor permite a los desarrolladores construir aplicaciones que pueden comunicarse de manera efectiva utilizando el MCP, facilitando el intercambio de datos e interacción entre diferentes sistemas. El MCP está diseñado para proporcionar una forma estandarizada para que las aplicaciones compartan contexto y datos, lo que facilita el desarrollo de servicios interconectados.
Características de xero-mcp-server
- Integración con MCP: El servidor está construido para integrarse sin problemas con el Protocolo de Contexto del Modelo, asegurando compatibilidad y facilidad de uso para los desarrolladores.
- Repositorio Público: El xero-mcp-server está disponible como un repositorio público, lo que permite a los desarrolladores acceder al código fuente, contribuir y colaborar en mejoras.
- Licencia MIT: El proyecto está licenciado bajo la licencia MIT, que permite el uso, modificación y distribución gratuita del software.
- Comunidad Activa: Con un número creciente de estrellas y bifurcaciones, el xero-mcp-server tiene una comunidad activa que contribuye a su desarrollo y soporte.
Cómo Usar xero-mcp-server
-
Clona el Repositorio: Comienza clonando el repositorio de xero-mcp-server desde GitHub a tu máquina local usando el comando:
git clone https://github.com/XeroAPI/xero-mcp-server.git
-
Instala Dependencias: Navega al directorio del proyecto e instala las dependencias necesarias. Esto normalmente implica ejecutar:
npm install
-
Ejecuta el Servidor: Después de instalar las dependencias, puedes iniciar el servidor con:
npm start
-
Integra con Tu Aplicación: Usa la API del servidor para integrarlo con tu aplicación, siguiendo la documentación proporcionada en el repositorio.
-
Contribuye: Si deseas contribuir al proyecto, siéntete libre de bifurcar el repositorio, hacer tus cambios y enviar una solicitud de extracción.
Preguntas Frecuentes
¿Qué es el Protocolo de Contexto del Modelo (MCP)?
El Protocolo de Contexto del Modelo (MCP) es un protocolo diseñado para facilitar el intercambio de contexto y datos entre aplicaciones. Proporciona una forma estandarizada para que diferentes sistemas se comuniquen, lo que facilita el desarrollo de servicios interconectados.
¿Es xero-mcp-server gratuito para usar?
Sí, xero-mcp-server está licenciado bajo la licencia MIT, que permite el uso, modificación y distribución gratuita.
¿Cómo puedo contribuir al proyecto xero-mcp-server?
Puedes contribuir bifurcando el repositorio, haciendo tus cambios y enviando una solicitud de extracción. La comunidad da la bienvenida a contribuciones que mejoren la funcionalidad y usabilidad del servidor.
¿Dónde puedo encontrar la documentación para xero-mcp-server?
La documentación para xero-mcp-server generalmente se puede encontrar en el archivo README del repositorio o en una carpeta de documentación dedicada dentro del repositorio.
¿Cómo puedo reportar problemas o errores en xero-mcp-server?
Puedes reportar problemas o errores navegando a la sección "Issues" del repositorio de GitHub de xero-mcp-server y enviando un nuevo problema con detalles sobre el problema que encontraste.
Detalle
Xero MCP Server
This is a Model Context Protocol (MCP) server implementation for Xero. It provides a bridge between the MCP protocol and Xero's API, allowing for standardized access to Xero's accounting and business features.
Features
- Xero OAuth2 authentication with custom connections
- Contact management
- Chart of Accounts management
- Invoice creation and management
- MCP protocol compliance
Prerequisites
- Node.js (v18 or higher)
- npm or pnpm
- A Xero developer account with API credentials
Docs and Links
- Xero Public API Documentation
- Xero API Explorer
- Xero OpenAPI Specs
- Xero-Node Public API SDK Docs
- Developer Documentation
Setup
Create a Xero Account
If you don't already have a Xero account and organisation already, can create one by signing up here using the free trial.
We recommend using a Demo Company to start with because it comes with some pre-loaded sample data. Once you are logged in, switch to it by using the top left-hand dropdown and selecting "Demo Company". You can reset the data on a Demo Company, or change the country, at any time by using the top left-hand dropdown and navigating to My Xero.
NOTE: To use Payroll-specific queries, the region should be either NZ or UK.
Authentication
There are 2 modes of authentication supported in the Xero MCP server:
1. Custom Connections
This is a better choice for testing and development which allows you to specify client id and secrets for a specific organisation. It is also the recommended approach if you are integrating this into 3rd party MCP clients such as Claude Desktop.
Configuring your Xero Developer account
Set up a Custom Connection following these instructions: https://developer.xero.com/documentation/guides/oauth2/custom-connections/
Currently the following scopes are required for all sessions: scopes
Integrating the MCP server with Claude Desktop
To add the MCP server to Claude go to Settings > Developer > Edit config and add the following to your claude_desktop_config.json file:
{
"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"
}
}
}
}
NOTE: If you are using Node Version Manager "command": "npx"
section change it to be the full path to the executable, ie: your_home_directory/.nvm/versions/node/v22.14.0/bin/npx
on Mac / Linux or "your_home_directory\\.nvm\\versions\\node\\v22.14.0\\bin\\npx"
on Windows
2. Bearer Token
This is a better choice if you are to support multiple Xero accounts at runtime and allow the MCP client to execute an auth flow (such as PKCE) as required. In this case, use the following configuration:
{
"mcpServers": {
"xero": {
"command": "npx",
"args": ["-y", "@xeroapi/xero-mcp-server@latest"],
"env": {
"XERO_CLIENT_BEARER_TOKEN": "your_bearer_token"
}
}
}
}
NOTE: The XERO_CLIENT_BEARER_TOKEN
will take precedence over the XERO_CLIENT_ID
if defined.
Available MCP Commands
list-accounts
: Retrieve a list of accountslist-contacts
: Retrieve a list of contacts from Xerolist-credit-notes
: Retrieve a list of credit noteslist-invoices
: Retrieve a list of invoiceslist-items
: Retrieve a list of itemslist-organisation-details
: Retrieve details about an organisationlist-profit-and-loss
: Retrieve a profit and loss reportlist-quotes
: Retrieve a list of quoteslist-tax-rates
: Retrieve a list of tax rateslist-payments
: Retrieve a list of paymentslist-trial-balance
: Retrieve a trial balance reportlist-profit-and-loss
: Retrieve a profit and loss reportlist-bank-transactions
: Retrieve a list of bank account transactionslist-payroll-employees
: Retrieve a list of Payroll Employeeslist-report-balance-sheet
: Retrieve a balance sheet reportlist-payroll-employee-leave
: Retrieve a Payroll Employee's leave recordslist-payroll-employee-leave-balances
: Retrieve a Payroll Employee's leave balanceslist-payroll-employee-leave-types
: Retrieve a list of Payroll leave typeslist-payroll-leave-periods
: Retrieve a list of a Payroll Employee's leave periodslist-payroll-leave-types
: Retrieve a list of all avaliable leave types in Xero Payrolllist-aged-receivables-by-contact
: Retrieves aged receivables for a contactlist-aged-payables-by-contact
: Retrieves aged payables for a contactlist-contact-groups
: Retrieve a list of contact groupscreate-contact
: Create a new contactcreate-credit-note
: Create a new credit notecreate-invoice
: Create a new invoicecreate-payment
: Create a new paymentcreate-quote
: Create a new quotecreate-credit-note
: Create a new credit notecreate-payroll-timesheet
: Create a new Payroll Timesheetupdate-contact
: Update an existing contactupdate-invoice
: Update an existing draft invoiceupdate-quote
: Update an existing draft quoteupdate-credit-note
: Update an existing draft credit noteupdate-payroll-timesheet-line
: Update a line on an existing Payroll Timesheetapprove-payroll-timesheet
: Approve a Payroll Timesheetrevert-payroll-timesheet
: Revert an approved Payroll Timesheetadd-payroll-timesheet-line
: Add new line on an existing Payroll Timesheetdelete-payroll-timesheet
: Delete an existing Payroll Timesheetget-payroll-timesheet
: Retrieve an existing Payroll Timesheet
For detailed API documentation, please refer to the MCP Protocol Specification.
For Developers
Installation
### Using npm
npm install
### Using pnpm
pnpm install
Run a build
### Using npm
npm run build
### Using pnpm
pnpm build
Integrating with Claude Desktop
To link your Xero MCP server in development to Claude Desktop go to Settings > Developer > Edit config and add the following to your claude_desktop_config.json
file:
NOTE: For Windows ensure the args
path escapes the \
between folders ie. "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"
}
}
}
}
License
MIT
Security
Please do not commit your .env
file or any sensitive credentials to version control (it is included in .gitignore
as a safe default.)
Configuración del Servidor
{
"mcpServers": {
"xero-mcp-server": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"ghcr.io/metorial/mcp-container--xeroapi--xero-mcp-server--xero-mcp-server",
"node ./dist/index.js"
],
"env": {
"XERO_CLIENT_ID": "xero-client-id",
"XERO_CLIENT_SECRET": "xero-client-secret"
}
}
}
}