Bexio MCP について
Bexio MCP は、スイスの会計ソフト Bexio に接続する MCP サーバーで、請求書、取引先、プロジェクト、工数管理、会計の操作に対応します。Claude Desktop や n8n などの MCP クライアントからスイス企業の帳簿を扱いたい利用者に向いています。
主な機能
- 01請求書と見積書のライフサイクル管理
- 02取引先と CRM の管理
- 03プロジェクトと工数の記録
- 04勘定科目と仕訳の照会
- 05カテゴリ指定による公開ツールの制限
活用シーン
- 01会話による期限超過請求書の一覧表示
- 02チャットからの請求書下書きの作成
- 03プロジェクト工数と顧客別売上の集計
MCP 対応
本プロジェクトは MCP サーバーであり、Bexio の操作を MCP クライアントへツールとして提供します。stdio と HTTP の両方の転送方式に対応します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
200掲載時のツール一覧 · 3 週間前に更新
このツールにパラメーターはありません。
詳細
@promptpartner/bexio-mcp-server
Bexio の完全なスイス会計連携機能を、Model Context Protocol (MCP) 経由で提供します。Claude Desktop、n8n、および MCP 互換のあらゆるクライアントで動作します。
AI との会話やワークフローの自動化を通じて、請求書、連絡先、プロジェクト、時間追跡、その他 300 以上のツールを管理できます。
⚠️ 早期リリースソフトウェア
このプロジェクトは現在も活発に開発中です。機能は動作し、テスト済みですが、バグや予期しない動作が発生する場合があります。今後も機能の追加や改善を続けていきます。問題を見つけた場合は、ご報告ください。
互換性
| クライアント | トランスポート | ステータス |
|---|---|---|
| Claude Desktop | stdio | ✅ 完全にサポート |
| n8n | HTTP | ✅ 完全にサポート |
| その他の MCP クライアント | stdio/HTTP | ✅ 動作するはずです |
クイックスタート
Claude Desktop の場合
オプション A:MCPB バンドル(最も簡単)
- GitHub Releases から最新の
.mcpbファイルをダウンロードします - 次のいずれかの方法で Claude Desktop にインストールします:
.mcpbファイルをダブルクリックする(または Claude Desktop のウィンドウにドラッグする)、または- Settings → Extensions → Advanced settings に移動し、Extension Developer の下にある Install Extension… をクリックしてファイルを選択します
- 求められたら Bexio API トークンを入力します。トークンはオペレーティングシステムのキーチェーンに保存されます。
- 任意:請求書のプレビュー、連絡先カード、ダッシュボードを利用するには、拡張機能の設定で 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 モードでサーバーを起動します:
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 はすべてのオリジンを許可するため、ループバック限定のサーバーであっても、ブラウザーで開いたウェブページから呼び出すことができます。トークンが 設定されていない場合、サーバーは起動時に警告を表示します。ローカルファイルパス(upload_fileのfile_path、download_fileのoutput_path)は、BEXIO_FILE_DIRでアクセスを制限するディレクトリを指定しない限り、HTTP 経由では拒否されます。
サーバーは http://localhost:8000 で MCP を HTTP 経由で公開します。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 トークンの取得
- developer.bexio.com にアクセスします
- 通常の Bexio アカウントでログインします
- Personal Access Tokens に移動します
- Create New Token をクリックします
- トークンをコピーし、設定で使用します
機能
この MCP サーバーは、Bexio のすべてのドメインにわたって 315 個のツールを提供します:
連絡先と CRM
- 連絡先の作成、更新、検索
- 連絡先グループ、業種、敬称、役職
- 連絡先の関係管理
請求書と販売
- 請求書の全ライフサイクル(作成、発行、送信、キャンセル)
- 承諾/辞退のワークフローに対応した見積もり
- 配送管理に対応した注文
- 入金の追跡
- インタラクティブな請求書プレビュー(Claude Desktop)
銀行・決済
- スイス QR 請求書による支払いに対応(QR-IBAN)
- 標準 IBAN による支払い(ISO 20022)
- 通貨管理(CHF、EUR)
- 銀行口座管理
プロジェクト・時間追跡
- 種類とステータスを設定できるプロジェクト管理
- マイルストーンと作業パッケージ
- 作業時間を記録できるタイムシート
- ビジネス活動とコミュニケーションの種類
会計
- 勘定科目一覧
- 手動仕訳。グループ仕訳(Sammelbuchung:1 枚の伝票に複数の仕訳)を含みます
- 期間と勘定科目を指定した仕訳帳、勘定残高の計算(残高一覧)
- 事業年度と VAT 期間
- 勘定グループ
購買・経費
- 請求書(仕入先からの請求書)
- 経費と発注書
- 支払
ファイル・ドキュメント
- ドキュメントのアップロード/ダウンロード。ローカルファイルパスから直接アップロードできます(チャット経由で base64 を送信する必要はありません)
- ファイル管理
給与計算(Bexio Payroll モジュールが必要)
- 従業員管理
- 休暇・欠勤の追跡
- 給与関連ドキュメント
例
Claude で Bexio MCP サーバーを使用する実際の例を紹介します。
例 1:支払期限超過の請求書を検索する
プロンプト:
「支払期限を過ぎた請求書をすべて表示してください」
処理内容:
Claude は get_overdue_invoices ツールを使用して、支払期限を過ぎたすべての請求書を Bexio に問い合わせます。
応答:
支払期限を過ぎた請求書が 3 件見つかりました:
請求書番号 顧客 金額 支払期限 超過日数 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 支払期限超過の合計:CHF 8,540.50
例 2:請求書を作成する
プロンプト:
「連絡先『Sunrise AG』宛ての請求書を作成してください。項目は 2 つで、コンサルティング 10 時間(1 時間あたり CHF 150)と、CHF 500 のソフトウェアライセンスです」
処理内容:
Claude は find_contact_by_name を使用して顧客を特定し、指定された明細項目を含む請求書を create_invoice で作成します。
応答:
Sunrise AG 宛ての請求書 INV-2024-015 を作成しました:
- コンサルティング時間 10 時間 × CHF 150.00 = CHF 1,500.00
- ソフトウェアライセンス 1 件 × CHF 500.00 = CHF 500.00
小計:CHF 2,000.00 VAT(8.1%):CHF 162.00 合計:CHF 2,162.00
請求書は下書き状態です。確定するには「issue invoice 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 分
使用済み予算:80 時間中 50.75 時間(63%)
例 4:顧客売上レポート
プロンプト:
「今年の『Tech Solutions GmbH』からの売上はいくらですか?」
処理内容:
Claude は find_contact_by_name で顧客を特定し、次に get_customer_revenue_report を使用して、支払済み請求書の売上合計を計算します。
応答:
Tech Solutions GmbH からの売上(2024 年):
- 第 1 四半期:CHF 12,450.00(請求書 3 件)
- 第 2 四半期:CHF 8,200.00(請求書 2 件)
- 第 3 四半期:CHF 15,800.00(請求書 4 件)
- 第 4 四半期: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.0 | API エンドポイント URL |
BEXIO_ENABLED_CATEGORIES | いいえ | (all) | カンマ区切りのツールカテゴリ許可リスト — 以下を参照 |
BEXIO_HTTP_TOKEN | HTTP の場合は推奨 | - | GET / 以外のすべての HTTP エンドポイントで必要なベアラートークン |
BEXIO_FILE_DIR | いいえ | - | upload_file の file_path と download_file の output_path の使用をこのディレクトリ内に制限します。HTTP 経由でローカルパスを使用する場合は必須、stdio 経由では追加の制限として任意です |
BEXIO_DOWNLOAD_INLINE_MAX_BYTES | いいえ | 64000 | download_file は、このサイズ以下のファイルをインラインの base64 形式で返し、それを超えるファイルはディスクに書き込みます |
* BEXIO_API_TOKEN(1 社)または 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 にログ出力)、空または未設定の場合は
すべて有効になります(後方互換性があります)。
複数の会社(委任先)
Bexio では各 API トークンが単一の会社(委任先)に紐付けられます。複数の会社にまたがるトークンはありません。複数の会社を扱うには、会社ごとにトークンを生成し(先に Bexio でその会社に切り替えてから、「Settings → API Tokens」を開きます)、それらすべてを単一のサーバーインスタンスに設定してください。新しい 2 つのツール — list_companies と select_company — を使うと、会話中にアクティブな会社を切り替えられます(「Globex で未処理の請求書を一覧表示」)。会社ごとにサーバーを起動する必要がなくなり、それに伴うツールコンテキストの重複も避けられます。
BEXIO_API_TOKEN の代わりに(または併せて)BEXIO_API_TOKENS を設定してください。値には label:token のペアをカンマ区切りで指定するか、JSON オブジェクトを指定します。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 が記載されるため、結果がどの会社のものか常に確認できます。トークンがログに記録されたり、返されたりすることはありません。この 2 つの制御ツールは BEXIO_API_TOKENS が設定されている場合にのみ表示されるため、単一会社の構成には変更ありません。
HTTP/n8n に関する注意: アクティブな会社はプロセス全体で共有されます。複数テナントが同時にアクセスする HTTP 環境では、会社ごとに 1 つのインスタンスを実行してください。
コマンドラインオプション
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」エラー
- インターネット接続を確認してください
- BEXIO_BASE_URL が正しいことを確認してください(デフォルト:https://api.bexio.com/2.0)
給与計算ツールで「module not available」と表示される
- 給与計算ツールを使用するには、Bexio Payroll モジュールのサブスクリプションが必要です
- モジュールを有効にするには、Bexio サポートにお問い合わせください
Claude Desktop でサーバーが表示されない場合
- Claude Desktop を完全に終了し(ウィンドウを閉じるだけではなく)、設定を変更した後に再起動してください
- 接続されていることを確認してください:メッセージボックスで + をクリック → コネクター → コネクターを管理
- JSON 設定については、お使いの OS に対応するファイルパスと、JSON が有効であることを確認してください
- ログを確認してください:
~/Library/Logs/Claude/mcp-server-*.log(macOS)または%APPDATA%\Claude\logs(Windows)
プライバシーポリシー
この MCP サーバーは Bexio API へのパススルーとして動作し、データを保存しません。詳細については、プライバシーポリシーをご覧ください。
データは Bexio のプライバシーポリシーに従って処理されます。
サポート
- 問題とバグの報告: GitHub Issues
- メール: [email protected]
プロジェクトを支援する
このプロジェクトが時間の節約やビジネスの役に立った場合は、コーヒーをおごっていただけると幸いです!☕
皆さまの支援により、このプロジェクトの保守と改善を続けることができます!
作成者
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 をご覧ください。
スター履歴
リンク
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。