Bexio MCP Server

Complete Swiss accounting integration for Bexio via MCP.

README.md

@promptpartner/bexio-mcp-server

Complete Swiss accounting integration for Bexio via the Model Context Protocol (MCP). Works with Claude Desktop, n8n, and any MCP-compatible client.

Manage invoices, contacts, projects, time tracking, and 300+ more tools through AI conversation or workflow automation.

⚠️ Early Release Software

This project is under active development. While it's functional and tested, you may encounter bugs or unexpected behavior. Features will continue to be added and improved over time. Please report any issues you find!

Compatibility

Client Transport Status
Claude Desktop stdio ✅ Fully supported
n8n HTTP ✅ Fully supported
Claude Code stdio ✅ Fully supported
Other MCP clients stdio/HTTP ✅ Should work

Quick Start

For Claude Desktop

Option A: MCPB Bundle (Easiest)

  1. Download the latest .mcpb file from GitHub Releases
  2. In Claude Desktop, go to Settings → Extensions
  3. Install the extension using one of these methods:
    • Double-click the downloaded .mcpb file, or
    • Drag and drop the file onto the Extensions window, or
    • Click Advanced Settings → Install Extension and select the file
  4. Enter your Bexio API token when prompted

Option B: npm

Add to claude_desktop_config.json:

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

Config location:

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

For n8n and Other HTTP Clients

Start the server in HTTP mode:

BEXIO_API_TOKEN=your-token npx @promptpartner/bexio-mcp-server --mode http --port 8000

The server exposes MCP over HTTP at http://localhost:8000. Configure your MCP client to connect to this endpoint.

For Other stdio Clients

BEXIO_API_TOKEN=your-token npx @promptpartner/bexio-mcp-server

Or build from source:

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

Getting Your Bexio API Token

  1. Go to developer.bexio.com
  2. Log in with your regular Bexio account
  3. Navigate to Personal Access Tokens
  4. Click Create New Token
  5. Copy the token and use it in your configuration

Features

This MCP server provides 310 tools across all Bexio domains:

Contacts & CRM

  • Create, update, search contacts
  • Contact groups, sectors, salutations, titles
  • Contact relations management

Invoices & Sales

  • Full invoice lifecycle (create, issue, send, cancel)
  • Quotes with accept/decline workflows
  • Orders with delivery management
  • Incoming payments tracking
  • Interactive invoice preview (Claude Desktop)

Banking & Payments

  • Swiss QR-bill payment support (QR-IBAN)
  • Standard IBAN payments (ISO 20022)
  • Currency management (CHF, EUR)
  • Bank account management

Projects & Time Tracking

  • Project management with types and statuses
  • Milestones and work packages
  • Timesheet entries with duration tracking
  • Business activities and communication types

Accounting

  • Chart of accounts
  • Manual journal entries
  • Business years and VAT periods
  • Account groups

Purchase & Expenses

  • Bills (creditor invoices)
  • Expenses and purchase orders
  • Outgoing payments

Files & Documents

  • Document upload/download
  • File management

Payroll (requires Bexio Payroll module)

  • Employee management
  • Absence tracking
  • Payroll documents

Examples

Here are some real-world examples of using the Bexio MCP server with Claude:

Example 1: Finding Overdue Invoices

Prompt:

"Show me all overdue invoices"

What happens: Claude uses the get_overdue_invoices tool to query Bexio for all invoices past their due date.

Response:

Found 3 overdue invoices:

Invoice # Customer Amount Due Date Days Overdue
INV-2024-001 Acme AG CHF 2,450.00 2024-01-15 18 days
INV-2024-003 Tech GmbH CHF 890.50 2024-01-20 13 days
INV-2024-007 Swiss Corp CHF 5,200.00 2024-01-25 8 days

Total overdue: CHF 8,540.50


Example 2: Creating an Invoice

Prompt:

"Create an invoice for contact 'Sunrise AG' with two items: 10 hours of consulting at CHF 150/hour and a software license for CHF 500"

What happens: Claude uses find_contact_by_name to locate the cust

Tools 2

get_overdue_invoicesRetrieves a list of all invoices that have passed their due date.
find_contact_by_nameSearches for a contact record by their name.

Environment Variables

BEXIO_API_TOKENrequiredPersonal Access Token generated from developer.bexio.com

Try it

Show me all overdue invoices
Create an invoice for contact 'Sunrise AG' with two items: 10 hours of consulting at CHF 150/hour and a software license for CHF 500
List all active projects and their current status
What is the total outstanding balance for all customers?

Frequently Asked Questions

What are the key features of Bexio?

Full invoice lifecycle management including creation, issuance, and cancellation. Comprehensive CRM tools for managing contacts, groups, and relations. Project management and time tracking capabilities with milestones. Support for Swiss QR-bill payments and standard IBAN transactions. Accounting tools for chart of accounts, journal entries, and VAT periods.

What can I use Bexio for?

Automating the creation of invoices directly from project management conversations. Quickly identifying and following up on overdue customer payments. Syncing time tracking data from AI-assisted workflows into Bexio projects. Generating financial reports or summaries of outstanding balances via natural language.

How do I install Bexio?

Install Bexio by running: npx @promptpartner/bexio-mcp-server

What MCP clients work with Bexio?

Bexio works with any MCP-compatible client including Claude Desktop, Claude Code, Cursor, and other editors with MCP support.

Turn this server into reusable context

Keep Bexio docs, env vars, and workflow notes in Conare so your agent carries them across sessions.

Open Conare