Xero MCP Server
официальныйВзаимодействуйте с бухгалтерскими данными вашего бизнеса с помощью нашего официального MCP сервера
Документация
Xero MCP Server
Это реализация сервера Model Context Protocol (MCP) для Xero. Он служит мостом между протоколом MCP и API Xero, обеспечивая стандартизированный доступ к бухгалтерским и бизнес-функциям Xero.
Возможности
- Аутентификация Xero OAuth2 с пользовательскими подключениями
- Управление контактами
- Управление планом счетов
- Создание и управление счетами
- Соответствие протоколу MCP
Предварительные требования
- Node.js (v18 или выше)
- npm или pnpm
- Учетная запись разработчика Xero с учетными данными API
Документация и ссылки
- Документация по публичному API Xero
- Xero API Explorer
- Спецификации Xero OpenAPI
- Документация по Xero-Node Public API SDK
- Документация для разработчиков
Настройка
Создание учетной записи Xero
Если у вас еще нет учетной записи и организации Xero, вы можете создать их, зарегистрировавшись здесь с помощью бесплатной пробной версии.
Мы рекомендуем начать с использования Демо-компании, так как она содержит предварительно загруженные образцы данных. После входа в систему переключитесь на нее с помощью выпадающего списка в левом верхнем углу и выберите «Демо-компания». Вы можете сбросить данные в Демо-компании или изменить страну в любое время, используя выпадающий список в левом верхнем углу и перейдя в My Xero.
ПРИМЕЧАНИЕ: Для использования запросов, специфичных для расчета заработной платы, регион должен быть NZ или UK.
Аутентификация
Сервер Xero MCP поддерживает 2 режима аутентификации:
1. Пользовательские подключения
Это лучший выбор для тестирования и разработки, который позволяет указать идентификатор клиента и секреты для конкретной организации. Это также рекомендуемый подход, если вы интегрируете это в сторонние MCP-клиенты, такие как Claude Desktop.
Настройка учетной записи разработчика Xero
Настройте пользовательское подключение, следуя этим инструкциям: https://developer.xero.com/documentation/guides/oauth2/custom-connections/
Необходимые области действия
Для пользовательских подключений требуются разные области действия в зависимости от того, когда они были созданы. Все области действия из соответствующего списка должны быть добавлены в ваше пользовательское подключение:
| Создание пользовательского подключения | Необходимые области действия |
|---|---|
| До 29 апреля 2026 г. | SCOPES_V1 (пакетные разрешения) |
| С 29 апреля 2026 г. | SCOPES_V2 (детальные разрешения) |
Примечание: Сервер MCP автоматически сначала пробует области V1 и при необходимости переключается на V2.
Вы можете переопределить их, установив переменную окружения
XERO_SCOPESв виде списка областей, разделенных пробелами.
Интеграция сервера MCP с Claude Desktop
Чтобы добавить сервер MCP в Claude, перейдите в Settings > Developer > Edit config и добавьте следующее в файл 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",
"XERO_SCOPES": "accounting.invoices accounting.contacts accounting.settings"
}
}
}
}
Переменная XERO_SCOPES является необязательной. Если она опущена, будут использоваться области действия по умолчанию, перечисленные выше.
ПРИМЕЧАНИЕ: Если вы используете Node Version Manager, в разделе "command": "npx" измените его на полный путь к исполняемому файлу, например: your_home_directory/.nvm/versions/node/v22.14.0/bin/npx на Mac / Linux или "your_home_directory\\.nvm\\versions\\node\\v22.14.0\\bin\\npx" на Windows
2. Токен-носитель
Это лучший выбор, если вам нужно поддерживать несколько учетных записей Xero во время выполнения и позволить MCP-клиенту выполнять поток аутентификации (например, PKCE) по мере необходимости. В этом случае используйте следующую конфигурацию:
{
"mcpServers": {
"xero": {
"command": "npx",
"args": ["-y", "@xeroapi/xero-mcp-server@latest"],
"env": {
"XERO_CLIENT_BEARER_TOKEN": "your_bearer_token"
}
}
}
}
ПРИМЕЧАНИЕ: XERO_CLIENT_BEARER_TOKEN будет иметь приоритет над XERO_CLIENT_ID, если он определен.
Необходимые области действия для токена-носителя
При получении токена-носителя вы должны запросить соответствующие области действия. Запрашиваемые области должны быть следующими:
Примечание: Некоторые области действия выводятся из употребления в пользу более детальных. Подробности о сроках вывода см. в документации по областям действия Xero OAuth 2.0.
accounting.transactions (Deprecated)
accounting.transactions.read (Deprecated)
accounting.invoices
accounting.invoices.read
accounting.payments
accounting.payments.read
accounting.banktransactions
accounting.banktransactions.read
accounting.manualjournals
accounting.manualjournals.read
accounting.reports.read (Deprecated)
accounting.reports.aged.read
accounting.reports.balancesheet.read
accounting.reports.profitandloss.read
accounting.reports.trialbalance.read
accounting.contacts
accounting.settings
payroll.settings
payroll.employees
payroll.timesheets
Доступные команды MCP
list-accounts: Получить список счетовlist-contacts: Получить список контактов из Xerolist-credit-notes: Получить список кредит-нотlist-invoices: Получить список счетов-фактурlist-items: Получить список товаров/услугlist-manual-journals: Получить список ручных журналовlist-organisation-details: Получить сведения об организацииlist-profit-and-loss: Получить отчет о прибылях и убыткахlist-quotes: Получить список предложенийlist-tax-rates: Получить список налоговых ставокlist-payments: Получить список платежейlist-trial-balance: Получить отчет по оборотно-сальдовой ведомостиlist-bank-transactions: Получить список банковских операций по счетуlist-payroll-employees: Получить список сотрудников для расчета зарплатыlist-report-balance-sheet: Получить отчет по балансовому отчетуlist-payroll-employee-leave: Получить записи об отпусках сотрудникаlist-payroll-employee-leave-balances: Получить остатки отпусков сотрудникаlist-payroll-employee-leave-types: Получить список типов отпусков для расчета зарплатыlist-payroll-leave-periods: Получить список периодов отпусков сотрудникаlist-payroll-leave-types: Получить список всех доступных типов отпусков в Xero Payrolllist-timesheets: Получить список табелей учета рабочего времениlist-aged-receivables-by-contact: Получить просроченную дебиторскую задолженность по контактуlist-aged-payables-by-contact: Получить просроченную кредиторскую задолженность по контактуlist-contact-groups: Получить список контактных группlist-tracking-categories: Получить список категорий отслеживанияcreate-bank-transaction: Создать новую банковскую операциюcreate-contact: Создать новый контактcreate-credit-note: Создать новую кредит-нотуcreate-invoice: Создать новый счет-фактуруcreate-item: Создать новый товар/услугуcreate-manual-journal: Создать новый ручной журналcreate-payment: Создать новый платежcreate-quote: Создать новое предложениеcreate-payroll-timesheet: Создать новый табель учета рабочего времениcreate-tracking-category: Создать новую категорию отслеживанияcreate-tracking-option: Создать новый параметр отслеживанияupdate-bank-transaction: Обновить существующую банковскую операциюupdate-contact: Обновить существующий контактupdate-invoice: Обновить существующий черновик счета-фактурыupdate-item: Обновить существующий товар/услугуupdate-manual-journal: Обновить существующий ручной журналupdate-quote: Обновить существующий черновик предложенияupdate-credit-note: Обновить существующий черновик кредит-нотыupdate-tracking-category: Обновить существующую категорию отслеживанияupdate-tracking-options: Обновить параметры отслеживанияupdate-payroll-timesheet-line: Обновить строку в существующем табеле учета рабочего времениapprove-payroll-timesheet: Утвердить табель учета рабочего времениrevert-payroll-timesheet: Отменить утвержденный табель учета рабочего времениadd-payroll-timesheet-line: Добавить новую строку в существующий табель учета рабочего времениdelete-payroll-timesheet: Удалить существующий табель учета рабочего времениget-payroll-timesheet: Получить существующий табель учета рабочего времени
Подробную документацию по API см. в Спецификации протокола MCP.
Для разработчиков
Установка
# Using npm
npm install
# Using pnpm
pnpm install
Запуск сборки
# Using npm
npm run build
# Using pnpm
pnpm build
Интеграция с Claude Desktop
Чтобы связать ваш сервер Xero MCP в разработке с Claude Desktop, перейдите в Settings > Developer > Edit config и добавьте следующее в файл claude_desktop_config.json:
ПРИМЕЧАНИЕ: Для Windows убедитесь, что путь args экранирует \ между папками, например, "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"
}
}
}
}
Лицензия
MIT
Безопасность
Пожалуйста, не добавляйте файл .env или какие-либо конфиденциальные учетные данные в систему контроля версий (он включен в .gitignore как безопасное значение по умолчанию.)