mcpField
U
uae-einvoice-mcp

uae-einvoice-mcp

本地服务
github.com/mirzaabubakr金融数据06 天前更新

关于 uae-einvoice-mcp

uae-einvoice-mcp 是面向财务和 ERP 团队的 MCP 服务,用于核对阿联酋电子发票的 PINT AE 要求。它提供 TRN/TIN 检查、51 项必填字段清单、XML 生成和 Schematron 验证。

主要功能

  1. 01TRN/TIN 格式与校验位检查
  2. 0251 项必填字段清单
  3. 03发票结构与范围检查
  4. 04生成 UBL 2.1 XML
  5. 05PINT AE Schematron 验证
  6. 06查询强制实施阶段与要求

适用场景

  1. 01核对企业税务识别号
  2. 02检查发票字段缺失或无效
  3. 03生成并验证 PINT AE XML
  4. 04判断交易是否在强制范围内

MCP 相关

通过 stdio 提供工具,让 MCP 客户端调用阿联酋电子发票检查、生成和要求查询功能。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"mirzaabubakr-uae-einvoice": {
"command": "npx",
"args": [
"-y",
"uae-einvoice-mcp"
]
}
}
}
启动命令npx -y uae-einvoice-mcp

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
npmuae-einvoice-mcp0.2.2

工具

5

收录的工具列表 · 更新于 5 天前

参数类型必填说明
taxIdstring是15 位 TRN 或 10 位 TIN(允许空格/连字符)

详细介绍

uae-einvoice-mcp

Uae Einvoice MCP server

用于 UAE 电子发票 / PINT AE 的 MCP 服务 — TRN/TIN 验证、结构合规性检查、51 项强制字段清单、UBL XML 模板生成,以及授权时间线辅助工具。

基于 MCP TypeScript SDK v2(@modelcontextprotocol/server)构建,通过 stdio 运行。可免费在本地运行;v0.2 无需 API 密钥。

仅供参考 — 不构成法律或税务建议,也不能替代认可服务提供商(ASP)的 XSD 验证、数字签名或实时 FTA 注册信息检查。validate_pint_ae_xml 会运行官方 OpenPeppol PINT AE 1.0.4 Schematron。

为什么要开发这个工具

阿联酋电子发票(Peppol + PINT AE)要求 ERP 和财务团队在 ASP 传输任何内容之前,正确处理数十个强制字段、TIN 与 TRN 的区别以及 Peppol 端点 ID。此服务为 AI 助手提供了一套小巧、可安装的检查工具。

工具

工具功能
lookup_business_trn验证 15 位 TRN 或 10 位 TIN 格式、阿联酋 1… 前缀和 Peppol AE:TIN 校验位,并返回 0235:<TIN>
check_invoice_compliance结构检查(参与方、总额计算、税额明细、行项目),并返回错误/警告/评分
check_pint_ae_fields完整的 51 项强制字段矩阵:已填写 / 缺失 / 无效 / 不适用 + 缺项
generate_pint_ae_xml构建 UBL 2.1 PINT AE 发票/贷项通知单(可选 strict 模式)
validate_pint_ae_xml官方 PINT AE 1.0.4 Schematron(通用规则 + 阿联酋规则);首次调用时下载并编译规则
get_einvoicing_requirements授权阶段、排除的交易、MoF 最新修订、技术基线、后续操作
check_einvoicing_scope按交易检查适用范围:B2B/B2G/B2C、Tax Group、主权机构、航空、免税金融 — 强制 / 排除 / 自愿

要求

  • Node.js 20+

安装 / 运行

npm install
npm run build
npm start

开发(直接运行 TypeScript):

npm run dev

自检(无需 MCP 客户端):

npm run selfcheck
MCP Inspector
npm run inspector

将 examples/compliant-invoice.json、examples/credit-note.json、examples/usd-invoice.json 或 examples/broken-invoice.json 中的示例数据粘贴到工具中。

Cursor / Claude Desktop(stdio)

已发布的软件包(推荐):

{
  "mcpServers": {
    "uae-einvoice": {
      "command": "npx",
      "args": ["-y", "uae-einvoice-mcp"]
    }
  }
}

本地检出:

{
  "mcpServers": {
    "uae-einvoice": {
      "command": "node",
      "args": ["/absolute/path/to/uae-einvoice-mcp/dist/index.js"]
    }
  }
}

另请参阅 .cursor/mcp.json.example。

建议的测试流程

  1. 使用 examples/compliant-invoice.json 调用 check_pint_ae_fields
  2. 使用相同的载荷调用 generate_pint_ae_xml(strict: true 应能成功)
  3. 对生成的 XML 调用 validate_pint_ae_xml(首次调用会下载 PINT AE 1.0.4 规则)
  4. 使用 examples/credit-note.json 和 examples/usd-invoice.json 重复步骤 1–2
  5. 使用 examples/broken-invoice.json 调用 generate_pint_ae_xml 并设置 strict: true(应拒绝)
  6. 使用 transactionKind: b2b 和年收入调用 check_einvoicing_scope

路线图

  • 51 项字段清单 + PINT AE XML 模板生成
  • 官方 PINT AE 1.0.4 Schematron 验证(validate_pint_ae_xml)
  • 按交易检查适用范围的辅助工具(check_einvoicing_scope)
  • 贷项通知单和非 AED 示例数据 + CI 自检
  • 为托管 / 付费层级提供可选的 HTTP + API 密钥传输方式
  • 发布到 npm([email protected])
  • 列入 MCP 注册表(io.github.mirzaabubakr/uae-einvoice-mcp)

许可证

MIT

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。