MCPサーバを使ったRevitから無料積算ソフト→無料ERPによる会計までの一気通貫連携

 最高です。無料スタックで「Revit →(MCPで自動QTO/見積)→ 無料ERPへ会計反映」を一気通貫にする現実解を、すぐ動かせる構成でまとめました。


全体像(無料のみ)


Revit(IFC自動出力Add-in)

   └→ 共有フォルダ/S3

        └→ MCPサーバ(IFC監視)

             ├─ IfcOpenShell/BlenderBIM/FreeCADでQTO→見積CSV生成

             ├─ 単価表CSVとJOIN(歩掛・端数)

             └─ ERPへAPI投稿(仕訳 or 仕入/経費伝票)→ 通知


数量抽出(QTO):IfcOpenShell/BlenderBIMやFreeCADでIFCから数量を取り出しCSV化(BaseQuantitiesやQTOを扱える) 


無料ERPの候補とAPI


ERPNext:完全OSS。RESTでDocType(仕入請求/仕訳など)を作成可能。ドキュメント・APIが充実。


Dolibarr:軽量。REST APIで取引先・商品・請求(仕入/経費)操作が可能。


Tryton:堅牢会計。JSON-RPCで仕訳や請求を作成。


Odoo Community:標準はXML-RPC/JSON-RPC(公式RESTは無し)。REST必須でなければ候補。




以降は最短で安定のため、まずは ERPNext ルート を主経路に書きます(RESTで完結・ドキュメント豊富)。



---


推奨スタック A(ERPNext)


1) Revit → IFC 自動出力


既出のAdd-in案で「テンプレIFC設定・命名規則・保存先」を自動化(ボタン1回)。


MCPはIFCの到着を監視して次工程へ。



2) MCPでQTO→見積CSV


IfcOpenShell/BlenderBIMでBaseQuantities/QTOを取得し、class/unit/qty/unit_price/costを組む。


IfcOpenShellのQTO追加/標準量は buildingSMARTの規格に沿って扱えるAPIがあるので将来拡張もしやすい。


FreeCAD派生ルートもOK(BIMワークベンチのスケジュール→CSV)。



3) ERPNextへ会計反映(即時)


ERPNextのRESTはDocType単位でCRUDできます。例えば:


**仕入請求(Purchase Invoice)**に「工事内訳項目=Item」を行として登録(工事原価)。


もしくはJournal Entryで直接仕訳(工数集計や外注費だけ先に計上したいケース)。

APIエンドポイントは /api/resource/<DocType>(BearerまたはCookie認証)。



例:MCP→ERPNext「Purchase Invoice」作成(擬似JSON)


> 注:Supplier/Itemは事前マスタ(コード/税区分)を用意。ドラフトで作って経理承認→自動投稿にもできます。

RESTで「提出(submit)」まで行う場合の挙動例はコミュニティQ&Aが参考。




POST /api/resource/Purchase Invoice

{

  "supplier": "SUP-0001",

  "posting_date": "2025-10-12",

  "currency": "JPY",

  "items": [

    {"item_code":"IFC_WALL","item_name":"壁(躯体)","uom":"m3","qty":12.34,"rate":14500},

    {"item_code":"IFC_SLAB","item_name":"スラブ","uom":"m3","qty":8.90,"rate":15000},

    {"item_code":"IFC_FIN","item_name":"内装仕上げ","uom":"m2","qty":125.0,"rate":3200}

  ],

  "taxes_and_charges": null,

  "docstatus": 0

}


作成は /api/resource/Purchase Invoice、参照・更新も同系統(DocType/nameで一意)。




---


代替スタック B(Dolibarr)


認証トークン発行 → RESTの「仕入請求」「仕入先」「商品」エンドポイントを利用。


モジュールを有効化しないとエンドポイントが見えない点に注意。


Supplier InvoicesのRESTクラス仕様が公開されているので、MCPから同様にPOST可能。


小規模・単純会計に向く。



代替スタック C(Tryton)


サーバ(trytond)にJSON-RPCで接続し、account.move等を作成(仕訳主導)。プロ仕様の会計主体。




---


データ設計(最低限の取り決め)


1. QTO正本:IfcElementQuantity(BaseQuantities)を優先。見つからない量はBlenderBIM/FreeCADで計算→書戻し。



2. 品目マップ:IfcClass/材料/仕様 → ERPの ItemCode の対応CSVをMCPが参照。



3. 単価表:item_code, uom, unit_price, waste_ratio(歩掛・端数は式列でもOK)。



4. 原価区分:材料費/労務費/経費の会計勘定をERP側Item/税カテゴリでコントロール。



5. 状態遷移:ドラフト請求→承認→記帳(自動化可)。ERPNextならRESTでDocTypeを更新/提出。





---


MCP実装の骨子(Python)


役割:IFC検知→QTO CSV→単価JOIN→ERP API投稿→結果ログ


IfcOpenShell入門とQTO APIの参照用リンク(数量付与/抽出)を貼っておきます。


FreeCADスケジュール派の参考(GUI動画だが手順理解に有用)。




---


運用Tips


“即時積算”を担保するには:Revit側をボタン一発IFC書出し+MCPのホットフォルダ監視+ERP APIの同期POST。


監査性:MCPで、IFCのハッシュ値・QTOスナップショット・送信ペイロードを全保存。


失敗時再実行:ジョブキュー(RQ/Celery等)を必ず併設。


税/丸め:ERP側の税テーブル・端数規則をItem/テンプレに寄せる(MCPは税抜金額を渡すだけに)。




---


まずやる初期セット(1–2日で叩き台)


1. Revit IFCエクスポート設定テンプレ作成(座標/小数点/PropertySetの標準化)



2. IfcOpenShellでWALL/SLAB/BEAM/COLUMN/FINISHのQTO→CSV試験(10行程度でOK)



3. ERPNext Docker最小構築→Supplier/Item/UOMの初期マスタ登録→RESTでPurchase InvoiceにPOST(ドラフト)



4. MCPに監視+POSTの最小スクリプトを置く(ログ出力/失敗時リトライ)





---


必要なら、この「ERPNextルート」の**APIペイロード雛形(Python requests)**と、QTO抽出スクリプト(IfcOpenShell版)を丸ごとお渡しします。

他方、企業規模や運用方針でDolibarr/Trytonを選びたい場合のAPI雛形も即用意できます(どれで行くかだけ教えてください)。



コメント

このブログの人気の投稿

ミライアイ内服薬は薬事法違反で、ほとんど効果がない詐欺ですか?

最高裁での上告理由書受理・却下の判断基準について

裁判官の忌避申立書の作成例