mcpField
B
Bexio MCP

Bexio MCP

本地服务
github.com/PromptPartner金融数据394 周前更新

关于 Bexio MCP

Bexio MCP 是一个 MCP 服务,用于连接瑞士会计软件 Bexio,支持发票、联系人、项目、工时和会计等操作。适合在 Claude Desktop、n8n 或其他 MCP 客户端中处理瑞士企业账务的用户。

主要功能

  1. 01发票与报价全流程管理
  2. 02联系人与 CRM 管理
  3. 03项目与工时记录
  4. 04会计科目与日记账查询
  5. 05按类别限制可用工具

适用场景

  1. 01通过对话查询逾期发票
  2. 02在对话中创建发票草稿
  3. 03汇总项目工时并生成客户收入报表

MCP 相关

该项目是一个 MCP 服务,向 MCP 客户端暴露 Bexio 的大量工具,并支持 stdio 与 HTTP 两种传输方式。

配置

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

mcp.json · 通用配置
{
"mcpServers": {
"bexio": {
"command": "npx",
"args": [
"-y",
"@promptpartner/bexio-mcp-server"
]
}
}
}
启动命令npx -y @promptpartner/bexio-mcp-server

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

安装包
npm@promptpartner/bexio-mcp-server2.6.2

工具

200

收录的工具列表 · 更新于 3 周前

此工具无需参数。

详细介绍

@promptpartner/bexio-mcp-server

通过 Model Context Protocol (MCP) 与 Bexio 实现完整的瑞士会计集成。兼容 Claude Desktop、n8n 以及任何兼容 MCP 的客户端。

通过 AI 对话或工作流自动化管理发票、联系人、项目、时间跟踪等 300 多种工具。

⚠️ 早期发布软件

本项目仍在积极开发中。虽然目前已可正常使用并经过测试,但你可能会遇到错误或意外行为。我们会持续添加和改进功能。欢迎报告你发现的问题!

兼容性

客户端传输方式状态
Claude Desktopstdio✅ 完全支持
n8nHTTP✅ 完全支持
其他 MCP 客户端stdio/HTTP✅ 应该可用

快速开始

用于 Claude Desktop

选项 A:MCPB Bundle(最简单)

  1. 从 GitHub Releases 下载最新的 .mcpb 文件
  2. 将其安装到 Claude Desktop 中,以下任一方式均可:
    • 双击 .mcpb 文件(或将其拖到 Claude Desktop 窗口中),或
    • 前往 Settings → Extensions → Advanced settings,在 Extension Developer 下点击 Install Extension…,然后选择该文件
  3. 按提示输入 Bexio API 令牌。令牌会存储在操作系统的钥匙串中。
  4. 可选:在扩展设置中开启 Interactive panels,以启用发票预览、联系人卡片和仪表板。

无需安装 Node.js:Claude Desktop 使用内置的 Node.js 运行扩展。 从 2.6.1 或更早版本升级?如果 Claude Desktop 提示,请重新输入令牌。

选项 B:npm(手动配置)

需要 Node.js(LTS)。在 Claude Desktop 中,打开 Settings → Developer → Edit Config 并添加:

{
  "mcpServers": {
    "bexio": {
      "command": "npx",
      "args": ["-y", "@promptpartner/bexio-mcp-server"],
      "env": {
        "BEXIO_API_TOKEN": "your-token-here"
      }
    }
  }
}

配置文件位置:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json

然后完全退出并重启 Claude Desktop。请注意,此文件会以纯文本形式保存令牌;扩展(选项 A)则会将其存储在钥匙串中。

用于 n8n 和其他 HTTP 客户端

以 HTTP 模式启动服务,并设置 bearer 令牌:

BEXIO_API_TOKEN=your-token BEXIO_HTTP_TOKEN=$(openssl rand -hex 32) \
  npx @promptpartner/bexio-mcp-server --mode http --host 127.0.0.1 --port 8000

客户端随后应在每个请求中发送 Authorization: Bearer <BEXIO_HTTP_TOKEN>(健康检查 GET / 除外,该端点保持开放)。

**安全性:**每个工具都可以读取或更改你的账簿。如果没有设置 BEXIO_HTTP_TOKEN,HTTP 端点将不需要身份验证:在 0.0.0.0(默认值)上运行时,任何能够访问端口的人都可以使用这些端点;由于 CORS 允许任意来源,即使服务器仅监听本地回环地址,也可以被浏览器中打开的网页调用。未设置令牌时,服务启动会发出警告。通过 HTTP 使用本地文件路径(upload_file 的 file_path、download_file 的 output_path)会被拒绝,除非 BEXIO_FILE_DIR 指定了用于限制访问范围的目录。

服务通过 HTTP 在 http://localhost:8000 提供 MCP。配置 MCP 客户端连接到此端点。

用于其他 stdio 客户端
BEXIO_API_TOKEN=your-token npx @promptpartner/bexio-mcp-server

或者从源代码构建:

git clone https://github.com/PromptPartner/bexio-mcp-server
cd bexio-mcp-server/src
npm install && npm run build
BEXIO_API_TOKEN=your-token node dist/index.js

获取 Bexio API 令牌

  1. 前往 developer.bexio.com
  2. 使用你的常规 Bexio 账户登录
  3. 前往 Personal Access Tokens
  4. 点击 Create New Token
  5. 复制令牌并在配置中使用

功能

此 MCP 服务在 Bexio 的所有领域中提供 315 种工具:

联系人和 CRM
  • 创建、更新和搜索联系人
  • 联系人群组、行业、称谓、头衔
  • 管理联系人关系
发票和销售
  • 完整的发票生命周期(创建、开具、发送、取消)
  • 支持接受/拒绝工作流的报价
  • 管理订单交付
  • 跟踪收款
  • 交互式发票预览(Claude Desktop)
银行与支付
  • 支持瑞士 QR 账单付款(QR-IBAN)
  • 标准 IBAN 付款(ISO 20022)
  • 货币管理(CHF、EUR)
  • 银行账户管理
项目与时间跟踪
  • 项目管理(含类型和状态)
  • 里程碑和工作包
  • 工时表条目(含时长跟踪)
  • 业务活动和沟通类型
会计
  • 会计科目表
  • 手动日记账分录,包括汇总分录(Sammelbuchung:一张凭证,多笔过账)
  • 按日期范围和科目查询日记账;计算科目余额(Saldenliste)
  • 会计年度和 VAT 期间
  • 科目组
采购与费用
  • 账单(应付账款发票)
  • 费用和采购订单
  • 对外付款
文件与文档
  • 上传/下载文档;可直接从本地文件路径上传(无需通过聊天传输 base64)
  • 文件管理
薪资(需要 Bexio Payroll 模块)
  • 员工管理
  • 缺勤跟踪
  • 薪资文档

示例

以下是使用 Claude 和 Bexio MCP 服务的一些实际示例:

示例 1:查找逾期发票

提示词:

“显示所有逾期发票”

执行过程: Claude 使用 get_overdue_invoices 工具查询 Bexio,获取所有已超过到期日的发票。

响应:

找到 3 张逾期发票:

发票编号客户金额到期日逾期天数
INV-2024-001Acme AGCHF 2,450.002024-01-1518 天
INV-2024-003Tech GmbHCHF 890.502024-01-2013 天
INV-2024-007Swiss CorpCHF 5,200.002024-01-258 天

逾期总额:CHF 8,540.50


示例 2:创建发票

提示词:

“为联系人 ‘Sunrise AG’ 创建一张发票,包含两个项目:10 小时咨询服务,每小时 CHF 150;以及一份 CHF 500 的软件许可证”

执行过程: Claude 使用 find_contact_by_name 查找客户,然后使用 create_invoice 创建发票,并填入指定的明细项目。

响应:

已为 Sunrise AG 创建发票 INV-2024-015:

  • 10x 咨询小时 @ CHF 150.00 = CHF 1,500.00
  • 1x 软件许可证 @ CHF 500.00 = CHF 500.00

小计:CHF 2,000.00 VAT(8.1%):CHF 162.00 总计:CHF 2,162.00

发票处于草稿状态。发送“签发发票 INV-2024-015”即可完成开票。


示例 3:项目工时汇总

提示词:

“这个月在项目 ‘Website Redesign’ 上记录了多少工时?”

执行过程: Claude 使用 search_projects 查找项目,然后使用 search_timesheets 按项目和日期范围筛选工时条目。

响应:

“Website Redesign”上的记录工时(2024 年 1 月):

团队成员工时活动
Anna M.24:30设计、会议
Marco K.18:15开发
Lisa B.8:00内容撰写

总计:50 小时 45 分钟

已用预算:50.75 小时,共 80 小时(63%)


示例 4:客户收入报告

提示词:

“我今年从 ‘Tech Solutions GmbH’ 获得了多少收入?”

执行过程: Claude 使用 find_contact_by_name 确认客户,然后使用 get_customer_revenue_report 计算已付款发票的总收入。

响应:

来自 Tech Solutions GmbH 的收入(2024 年):

  • Q1:CHF 12,450.00(3 张发票)
  • Q2:CHF 8,200.00(2 张发票)
  • Q3:CHF 15,800.00(4 张发票)
  • Q4:CHF 6,500.00(2 张发票,1 张待处理)

已收款总额:CHF 42,950.00 待收款:CHF 3,200.00

环境变量

变量必需默认值描述
BEXIO_API_TOKEN是*-你的 Bexio API 令牌(单家公司)
BEXIO_API_TOKENS是*-多家公司 — 参见多家公司
BEXIO_DEFAULT_COMPANY否first启动时处于活动状态的公司
BEXIO_BASE_URL否https://api.bexio.com/2.0API 端点 URL
BEXIO_ENABLED_CATEGORIES否(全部)以逗号分隔的工具类别白名单 — 参见下文
BEXIO_HTTP_TOKENHTTP 推荐设置-每个 HTTP 端点都需要的 Bearer 令牌,GET / 除外
BEXIO_FILE_DIR否-upload_file 的 file_path / download_file 的 output_path 所允许访问的目录。通过 HTTP 使用本地路径时必需;通过 stdio 使用时可选,用于额外限制访问范围
BEXIO_DOWNLOAD_INLINE_MAX_BYTES否64000download_file 会以内联 base64 形式返回不超过此大小的文件;更大的文件会写入磁盘

* 提供 BEXIO_API_TOKEN(一家公司)或 BEXIO_API_TOKENS(多家公司)之一。

减少令牌用量 — 类别白名单

默认情况下会注册所有工具。对于专注型工作流或较小的模型,仅注册部分工具可减少系统提示词的令牌开销。将 BEXIO_ENABLED_CATEGORIES 设置为以逗号分隔的列表:

BEXIO_ENABLED_CATEGORIES=contacts,invoices,purchase,banking,quotes,projects

可用类别:reference、company、banking、projects、 timetracking、accounting、purchase、files、payroll、contacts、 invoices、orders、quotes、payments、reminders、deliveries、 items、reports、users、misc、notes、tasks、stock、docs、 positions。未知名称会被忽略(并记录到 stderr);为空或未设置时,将启用所有类别 (向后兼容)。

多家公司(Mandates)

Bexio 会将每个 API 令牌绑定到单家公司(mandate) — 不存在可跨公司使用的令牌。要使用多家公司,请为每家公司生成一个令牌(先在 Bexio 中切换到该公司,然后选择“Settings → API Tokens”),并将所有令牌配置在同一个服务实例上。两个新工具 — list_companies 和 select_company — 可让你在对话中切换当前公司(“在 Globex 中,列出未结发票”)。这样就无需为每家公司运行一个服务,也避免了由此产生的重复工具上下文。

将 BEXIO_API_TOKENS 设置为以逗号分隔的 label:token 键值对列表(或 JSON 对象),以替代或配合 BEXIO_API_TOKEN。BEXIO_DEFAULT_COMPANY 用于指定启动时处于活动状态的公司(默认为第一家公司):

{
  "mcpServers": {
    "bexio": {
      "command": "npx",
      "args": ["@promptpartner/bexio-mcp-server"],
      "env": {
        "BEXIO_API_TOKENS": "Acme:token-for-acme,Globex:token-for-globex",
        "BEXIO_DEFAULT_COMPANY": "Acme"
      }
    }
  }
}

然后,只需向 Claude 提出类似 “切换到 Globex 并显示本月的发票。” 这样的请求。list_companies 会显示已配置的公司以及当前处于活动状态的公司;在多公司模式下,每个响应也会注明 active_company,因此始终能明确结果来自哪家公司。令牌绝不会被记录或返回。只有在设置了 BEXIO_API_TOKENS 时,才会显示这两个控制工具,因此单公司配置不受影响。

HTTP/n8n 注意事项: 当前活动公司是进程级全局设置。对于并发的多租户 HTTP 部署,请为每家公司运行一个实例。

命令行选项

npx @promptpartner/bexio-mcp-server [options]

Options:
  --mode <stdio|http>  Transport mode (default: stdio)
  --host <address>     HTTP host (default: 0.0.0.0)
  --port <number>      HTTP port (default: 8000)

故障排查

“Invalid API token” 错误
  • 在 developer.bexio.com > Personal Access Tokens 中验证令牌
  • 确认令牌尚未过期
  • 检查令牌是否具有所需权限
“Connection refused” 错误
工资工具返回 “module not available”
  • 工资工具需要订阅 Bexio Payroll 模块
  • 联系 Bexio 支持以启用该模块
Claude Desktop 看不到服务
  • 完全退出 Claude Desktop(不只是关闭窗口),并在更改配置后重启
  • 检查是否已连接:点击消息框中的 + → 连接器 → 管理连接器
  • 对于 JSON 配置:检查适用于你操作系统的文件路径,并确认 JSON 有效
  • 检查日志:~/Library/Logs/Claude/mcp-server-*.log(macOS)或 %APPDATA%\Claude\logs(Windows)

隐私政策

此 MCP 服务充当 Bexio API 的直通层,不存储任何数据。详情请参阅我们的隐私政策。

你的数据将按照 Bexio 的隐私政策进行处理。

支持

支持此项目

如果此项目为你节省了时间或帮助了你的业务,不妨请我喝杯咖啡!☕

请我喝杯咖啡

你的支持有助于持续维护和改进此项目!

作者

由 PromptPartner.ai 的 Lukas Hertig 创建

致谢

此项目基于 bryner.tech 的 Sebastian Bryner 创建的原始 Bexio MCP 服务。其 v1.0 实现提供了基础架构和最初的 83 个工具,使扩展后的 v2.0 成为可能。

开发工具

从 83 个工具扩展到 314 个工具的开发使用了:

  • GSD Framework - 用于结构化 AI 辅助开发工作流的 “Get Shit Done” 规划框架

这些工具帮助将预计需要 4 周的项目变成了 2 天即可完成的现实,展现了 AI 增强型软件开发的潜力。

免责声明

这是一个独立的社区驱动项目,与 Bexio AG 没有任何关联、未获其认可,也并非由其官方提供。“Bexio” 是 Bexio AG 的商标。此项目仅提供一个与公开提供的 Bexio API 对接的集成层。

使用本软件的风险由你自行承担。作者不对因将本软件与 Bexio 账户配合使用而产生的任何问题负责。

许可证

MIT - 详情请参阅 LICENSE。

Star 历史

Star 历史图表

链接

评论

支持 Markdown

第一次接触 MCP?

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

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