← 返回目录
X

Xero MCP Server

官方
将 Xero 会计与业务数据接入 MCP 协议的服务器。
分类
其他
Stars
★ 376 热门
传输方式
stdio(本地进程)
运行环境
Node.js 18+
凭据
需要 API Key / 凭据
许可证
MIT
最近提交
工具数
51
49FMRS · D

Xero MCP Server 提供了全面的会计数据访问能力,通过 MCP 协议实现集成。官方维护,功能丰富,但需要谨慎配置权限和安全措施。

最强项 · 维护活跃度 14/20 最弱项 · 安全与权限 6/20

可靠性
7/20
安全与权限
6/20
维护活跃度
14/20
文档质量
12/20
安装易用性
10/20
查看各项评分依据
可靠性 7/20
源代码显示服务器定义了多种工具,涵盖会计、联系人、发票等操作,并采用MCP协议。但未提供测试框架或CI配置,无法从源码验证功能的实际运行和错误处理。因此,快乐路径看起来可行,但缺乏测试覆盖和可控的错误诊断,降低评分。
安全与权限 6/20
README建议通过环境变量传递OAuth2凭据,未发现硬编码凭据。但缺少对用户数据访问范围的明确最小权限说明,且工具列表包含大量更新和删除操作,未在文档中提示需确认。此外,未提供数据流安全披露或密钥管理建议。因此,主要风险可见但权限最小化和确认机制不完整。
维护活跃度 14/20
仓库活跃,有近期提交和版本发布,未归档,有明确MIT许可证。但存在159个未解决问题,说明issue响应可能滞后。依赖更新情况未从源码中体现。总体维护积极,但有治理和版本管理方面的小缺口。
文档质量 12/20
README提供了安装、认证和工具列表的说明,但缺少详细的工具参数描述、错误排查指南和API限制说明。例如,每个工具的输入参数并未逐一说明,且没有示例输出或常见问题解答。因此,文档可用但存在隐藏假设和排错缺口。
安装易用性 10/20
README提供了通过npx运行和Claude Desktop配置示例,步骤较清晰。但对环境变量的依赖和对Node版本的要求有明确说明,不过对Windows用户的路径转义提示略显繁琐。未提供自动化安装脚本,但整体配置示例和步骤足够,简化了安装。评分基于静态分析,未能实际执行验证。

静态评测 · 未实际运行收录于 2026-08-07

查看 FMRS 评分方法 →

选型与风险

能访问什么访问网络修改第三方账户数据

适合谁

  • 需要与 Xero 会计数据交互的 AI 助手
  • 会计和财务团队的自动化工作流

不适合谁

  • 不适合需要实时数据同步的高频交易系统
  • 不适合非 Xero 用户

所需权限

  • 需授权访问 Xero 会计数据,包括发票、联系人、银行交易、工资单等
  • 具体权限取决于 OAuth 作用域,如 accounting.invoices、accounting.contacts 等

风险与副作用

  • 敏感财务数据可能被泄露或误用
  • 如果配置不当,可能意外修改或删除会计记录
  • 需要管理 OAuth 令牌的安全存储

安装接入

准备工作

运行环境:Node.js 18+

XERO_CLIENT_SECRET 可选密钥 Xero 自定义连接的客户端密钥,在 Xero 开发者后台创建应用后获取,属于敏感凭据。
XERO_CLIENT_BEARER_TOKEN 可选密钥 运行时使用的 Bearer 访问令牌,支持多账号场景;定义时优先于 client id/secret。
其他可选配置项(2 个)
XERO_CLIENT_ID 可选 Xero 自定义连接(Custom Connection)的客户端 ID,在 Xero 开发者后台创建应用后获取。
XERO_SCOPES 可选 可选的空格分隔权限范围列表,用于覆盖默认 scopes,如 accounting.invoices accounting.contacts。
  1. 创建 Xero 开发者账户并设置自定义连接,获取客户端 ID 和密钥。
  2. 确保 Node.js v18 或更高版本,并安装 npm 或 pnpm。
  3. 在 Claude Desktop 中配置 mcpServers,使用 npx 命令启动服务器,并设置环境变量。
  4. 或者使用 Bearer 令牌方式,设置 XERO_CLIENT_BEARER_TOKEN。
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"
      }
    }
  }
}

以 Claude Desktop 为例。其他客户端的配置文件位置或字段可能不同(如 VS Code 使用 servers 字段),可用下方配置生成器转换。

.vscode/mcp.json
{
  "servers": {
    "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"
      }
    }
  }
}

写入项目的 .vscode/mcp.json(VS Code 使用 servers 字段)。

Terminal
claude mcp add xero -e XERO_CLIENT_ID=your_client_id_here -e XERO_CLIENT_SECRET=your_client_secret_here -e 'XERO_SCOPES=accounting.invoices accounting.contacts accounting.settings' -- npx -y @xeroapi/xero-mcp-server@latest

在终端运行;先把 <…> 占位符换成你自己的值。

验证是否装好

在 Claude Desktop 中添加服务器配置后,检查工具列表中是否出现 list-contacts 等工具,或直接让客户端调用 list-organisation-details 看是否返回组织信息。

常见排障

  1. 确保 XERO_CLIENT_ID 和 XERO_CLIENT_SECRET 正确配置
  2. 检查网络连接是否能访问 Xero API
  3. 确认 OAuth 作用域是否包含所需权限
  4. 查看服务器日志以获取错误信息

试试这样问

连接成功后,可以直接对 AI 助手这样说:

  • 列出 Xero 组织的所有联系人
  • 帮我创建一张给现有联系人的草稿发票
  • 显示本月的利润和亏损报告
  • 创建一个新的工资单并添加一行工时

工具能力 51

list-accounts 只读
获取账户列表
list-contacts 只读
获取联系人列表
list-credit-notes 只读
获取贷项通知单列表
list-invoices 只读
获取发票列表
list-items 只读
获取项目列表
list-manual-journals 只读
获取手动日记账列表
list-organisation-details 只读
获取组织详情
list-profit-and-loss 只读
获取损益报告
展开其余 43 个工具
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 只读
获取所有可用的休假类型列表
list-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 只读
获取工资工时表

使用场景

通过自然语言查询 Xero 中的客户、发票、账户等数据
自动化创建发票、联系人、银行交易等记录
生成财务报表如损益表、资产负债表、试算平衡表
管理工资单和工时表

支持客户端

Claude Desktop

依据项目文档列出,未经本站实测。

详细介绍

Xero MCP Server 是 Model Context Protocol (MCP) 协议的实现,用于连接 Xero API。它提供标准化的访问方式,让 MCP 客户端能够管理联系人、会计科目表、发票等会计和业务功能。支持 OAuth2 认证(自定义连接或 Bearer 令牌),并提供了丰富的命令用于查询和创建各类会计数据,包括发票、联系人、银行交易、工资单等。

同类可选方案

用Telethon驱动的Telegram MCP服务器,让MCP客户端读取聊天、管理群组、发送/修改消息、媒体、联系人及设置。

★ 1.8k · 工具数 76 与当前对比 →

源版本 f24583c867df 数据同步于 2026-10-12 查看 FMRS 评分方法