mcpField
B
battery-erp

battery-erp

ローカル
github.com/icohangar-opsビジネス・マーケティング05 週間前に更新

battery-erp について

Battery ERPは、電池材料、セル、パック、サプライチェーン在庫を管理するドメインライブラリです。MCPインターフェースは在庫の検索と状態確認、棚番チェック、監査記録付きの確認を中心に、BOM、価格、分析機能も備えています。

主な機能

  1. 01電池在庫の検索と状態確認
  2. 02棚番チェックの依頼と確認
  3. 03BOMと電池パックのコスト計算
  4. 04サプライヤー評価と発注管理
  5. 05商品価格とコストシナリオ分析
  6. 06在庫・製造レポート

活用シーン

  1. 01SKUの在庫と再発注状況の確認
  2. 02監査記録を伴う倉庫棚番確認の記録
  3. 03化学組成やパックのコスト比較
  4. 04サプライヤーと発注の進捗確認

MCP 対応

MCPサーバーは在庫検索、状態確認、レコード取得、一覧表示、棚番チェックと確認のツールを公開し、RESTアダプターとInventoryServiceを共有します。在庫を変更する棚番確認には確認トークンが必要で、JSONL監査ログへの記録も可能です。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"icohangar-ops-battery-erp": {
"command": "uvx",
"args": [
"battery-erp"
],
"env": {
"BATTERY_ERP_CONFIRM_TOKEN": "<BATTERY_ERP_CONFIRM_TOKEN>",
"BATTERY_ERP_AUDIT_LOG": "<BATTERY_ERP_AUDIT_LOG>"
}
}
}
}
起動コマンドuvx battery-erp
設定が必要な環境変数
BATTERY_ERP_CONFIRM_TOKENシークレットShared secret required for record_bin_confirmation (mutating).
BATTERY_ERP_AUDIT_LOGOptional path for append-only JSONL audit events.

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
pypibattery-erp0.1.1

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

Battery ERP — リアルタイムの商品価格と Fabric Lakehouse 分析を備えた、材料、セル、パック、サプライチェーン管理。

リチウム、コバルト、ニッケル、マンガン、グラファイトから、セル化学組成(NMC-811、NCA、LFP、LMO)、さらに BOM コスト計算、サプライヤー評価、在庫管理、コストの仮定シナリオに対応したバッテリーパックまで、バッテリーのバリューチェーン全体をカバーします。

Python PyPI License Tests Fabric

mcp-name: io.github.icohangar-ops/battery-erp


これは何ですか

Battery ERP は、原材料の調達からセル製造、パック組み立てまで、バッテリーのバリューチェーン全体を管理します。すべてのコストは、特定の材料、サプライヤー、価格に紐づけて追跡できます。

レイヤー役割
データモデルRawMaterial、CellChemistry、BatteryCell、BatteryPack、BOMItem、Supplier、InventoryRecord、PurchaseOrder、ManufacturingBatch
ビジネスルールBOM コストの集計、在庫状況の管理、サプライヤー評価(複合 A〜D 評価)、製造歩留まりの追跡、価格トレンド分析、コストの仮定シナリオ
価格エンジン材料のデフォルト価格テーブル(20 種類以上の材料)、AlphaVantage との連携による商品価格のリアルタイム取得、FRED のマクロ経済指標の反映
分析在庫健全性レポート、サプライチェーンレポート、製造歩留まりレポート、化学組成別のコスト比較ダッシュボード
Fabric Lakehouse永続ストレージと SQL 分析に対応する 11 個の Delta テーブル

クイックスタート

# From PyPI — https://pypi.org/project/battery-erp/
python3 -m pip install 'battery-erp[mcp]'   # MCP tools
python3 -m pip install 'battery-erp[api]'   # REST adapter

# From source
git clone https://github.com/icohangar-ops/battery-erp.git
cd battery-erp
python3 -m pip install -e '.[dev]'
PYTHONPATH=src python3 -m pytest tests/ -v

# Domain modules
python3 -c "
from battery_erp.pricing import calculate_cell_cost_summary, get_material_price_table
prices = get_material_price_table()
for chem in ['NMC-811', 'NMC-622', 'NCA', 'LFP', 'LMO']:
    r = calculate_cell_cost_summary(chem, 50.0, prices)
    print(f'{chem}: \${r[\"cost_per_kwh\"]:.1f}/kWh (BOM: \${r[\"bom_cost_usd\"]:.2f})')
"

アーキテクチャ

                    ┌──────────────────────────────────────┐
                    │  Raw Materials (20+ tracked)          │
                    │  Lithium · Cobalt · Nickel · Mn · Gr  │
                    └──────────────┬───────────────────────┘
                                   │ BOM
                    ┌──────────────▼───────────────────────┐
                    │  Cell Chemistries                     │
                    │  NMC-811 · NMC-622 · NCA · LFP · LMO  │
                    └──────────────┬───────────────────────┘
                                   │ cells + components
                    ┌──────────────▼───────────────────────┐
                    │  Battery Packs                        │
                    │  EV · ESS · Consumer · Industrial     │
                    └──────────────────────────────────────┘

Side modules:
  ┌─────────────────┐  ┌──────────────────┐  ┌──────────────────┐
  │ Supplier Scoring │  │ Inventory Mgmt   │  │ Cost Scenarios    │
  │ Composite 0-100  │  │ Reorder logic    │  │ What-if analysis  │
  │ A/B/C/D grades   │  │ Status tracking  │  │ Price shock model │
  └─────────────────┘  └──────────────────┘  └──────────────────┘

コアモジュール

battery_erp.core.models

すべてのドメインデータクラス:

  • RawMaterial — 価格、HS コード、危険性情報を含む材料カタログ
  • CellChemistry — エネルギー密度とサイクル寿命を含む NMC-111/622/811、NCA、LFP、LMO
  • BatteryCell — セル仕様(容量、電圧、形状、重量)
  • BatteryPack — パックの組み立て(セル + BMS + 熱管理)
  • BOMItem — 廃棄率を含む部品表の明細項目
  • Supplier — 品質評価、リードタイム、認証を含むサプライヤーカタログ
  • InventoryRecord — 発注点管理ロジックを備えた倉庫在庫
  • PurchaseOrder — 発注書のライフサイクル追跡
  • ManufacturingBatch — 生産バッチの歩留まり追跡
  • PriceHistory — 商品価格の時系列データ
battery_erp.core.rules

決定論的なビジネスルール:

  • rollup_bom_cost() — 材料別の内訳と廃棄コストを含む BOM コストの合計
  • calculate_cell_bom() — 任意の化学組成に対応する代表的な BOM を生成
  • calculate_pack_bom() — パックレベルの BOM(セル + 筐体 + BMS + 冷却)
  • update_inventory_status() — in_stock/low/out_of_stock を再計算
  • check_reorder_suggestions() — 発注提案を生成
  • calculate_batch_metrics() — 製造歩留まりを集計
  • analyze_price_history() — 変動率を含む価格トレンド分析
  • estimate_cell_cost_impact() — コストの仮定シナリオをモデル化
  • calculate_pack_metrics() — パックのエネルギー密度と効率
battery_erp.supply_chain

サプライチェーン管理:

  • score_supplier() — 複合スコア(品質 35%、納期遵守率 35%、リードタイム 20%、認証 10%)
  • rank_suppliers() — スコア順に並べ替え、材料で絞り込み
  • create_purchase_order() — サプライヤーデータから発注書を作成
  • analyze_po_pipeline() — 発注書パイプラインの分析(期限超過の検出、リードタイムの追跡)
  • suggest_dual_sourcing() — デュアルソーシング戦略を提案
battery_erp.pricing

商品価格:

  • get_material_price_table() — 20 種類以上のバッテリー材料のデフォルト価格
  • calculate_cell_cost_summary() — 化学組成ごとの簡易コスト見積もり
  • update_prices_from_alpha_vantage() — 商品価格をリアルタイムで取得
  • update_prices_from_fred() — マクロ経済指標を取得
battery_erp.analytics

レポート:

  • generate_inventory_report() — 在庫の健全性を網羅したダッシュボード
  • generate_supply_chain_report() — サプライヤーと発注書の進捗レポート
  • generate_manufacturing_report() — 歩留まり指標
  • generate_pricing_report() — 化学組成ごとのコスト比較と価格動向

化学組成ごとのコスト比較(デフォルト価格、50Ah セル)

化学組成BOM コスト$/kWh正極の割合主な特長
LFP最低~$50-55~35%Co/Ni 不使用、非常に安全、4000 サイクル以上
LMO低~$55-60~40%低コスト、電動工具向け
NMC-111中~$70-80~50%バランス型、旧世代
NMC-622中~$75-85~48%エネルギーとコストのバランスが良好
NMC-811高め~$80-90~52%高エネルギー、EV で主流
NCA最高~$85-95~55%Tesla の主力、270 Wh/kg

Microsoft Fabric 統合

Fabric ノートブック
ノートブック用途
fabric_setup_lakehouse.pyシードデータを含む 11 個すべての Delta テーブルを作成
fabric_cost_dashboard.pyコスト分析ダッシュボード全体(化学組成の比較、パックのコスト計算、在庫、サプライヤー、価格動向、シナリオ)
Delta テーブルのスキーマ
テーブル主な列
raw_materialsmaterial_id, name, category, unit_price_usd, price_source, hs_code
cell_chemistrieschemistry_id, name, cathode_type, energy_density_wh_per_kg, cycle_life
battery_cellscell_id, sku, chemistry, form_factor, nominal_capacity_ah, energy_wh, weight_kg
battery_packspack_id, sku, cell_sku, total_cells, nominal_capacity_kwh, pack_weight_kg
bill_of_materialsbom_id, parent_sku, material_name, quantity_per_unit, unit_cost_usd, waste_factor_pct
supplierssupplier_id, name, country, materials_supplied, quality_rating, lead_time_days
inventoryrecord_id, sku, material_name, quantity_on_hand, quantity_reserved, reorder_point
purchase_orderspo_id, po_number, supplier_name, quantity, total_usd, status, expected_delivery
price_historymaterial_name, price_usd, as_of, source
manufacturing_batchesbatch_id, product_sku, chemistry, quantity_produced, quantity_pass, yield_pct
cost_scenariosscenario_id, scenario_name, material_name, current_price_usd, scenario_price_usd, pct_change
Fabric クイックスタート
  1. fabric_setup_lakehouse.py を実行して、11 個すべての Delta テーブルを作成します
  2. fabric_cost_dashboard.py を実行して、分析ダッシュボード全体を表示します
  3. ダッシュボードには、化学組成ごとのコスト比較、パック単位のコスト計算、在庫の健全性、サプライヤースコアカード、価格動向、製造歩留まり、コストシナリオが含まれます

在庫アダプター(REST + MCP)

Battery ERP はホスト型 ERP ではなく、ドメインライブラリです。SMS/テキスト回線および エージェントのワークフローでは、共有の InventoryService を薄い REST API と MCP サーバーの両方で利用します。詳細は docs/INTEGRATION.md をご覧ください。

SMS / ClickSend          Cursor / Claude (stdio MCP)
        │                         │
        ▼                         ▼
  REST API (port 8088)      battery_erp.mcp
        └──────────┬──────────────┘
                   ▼
           InventoryService
                   ▼
        InMemoryInventoryStore (demo)
                   ▼
          Human bin confirmation

ブラウザーから MCP を呼び出さないでください。REST と MCP は別々のターミナルで実行してください。

インストール(macOS / zsh)

python3 を使用します。zsh がワイルドカード展開しないよう、pip の extras は引用符で囲んでください。

cd ~/Desktop/icohangar-repos/battery-erp
python3 -m pip install -e '.[dev]'   # api + mcp + pytest
ターミナル A — REST(テキスト回線バックエンド)
cd ~/Desktop/icohangar-repos/battery-erp
export BATTERY_ERP_CONFIRM_TOKEN=dev-secret
export BATTERY_ERP_AUDIT_LOG=/tmp/battery-erp-audit.jsonl
PYTHONPATH=src python3 -m battery_erp.api
# Uvicorn → http://127.0.0.1:8088
curl -s http://127.0.0.1:8088/health
curl -s http://127.0.0.1:8088/inventory/lookup/lithium
ターミナル B — MCP(エージェント/Cursor 専用)

ターミナル A は実行したままにします。新しいターミナルで次を実行します。

cd ~/Desktop/icohangar-repos/battery-erp
export BATTERY_ERP_CONFIRM_TOKEN=dev-secret
PYTHONPATH=src python3 -m battery_erp.mcp

このプロセスは stdio 上で何も出力しません。MCP ホストでは正常な動作です。これを API のターミナルに貼り付けないでください。

Cursor MCP 設定

~/.cursor/mcp.json に追加します(絶対パスを使用し、python ではなく python3 を使用してください)。

{
  "mcpServers": {
    "battery-erp": {
      "command": "python3",
      "args": ["-m", "battery_erp.mcp"],
      "env": {
        "PYTHONPATH": "/Users/YOU/Desktop/icohangar-repos/battery-erp/src",
        "BATTERY_ERP_CONFIRM_TOKEN": "replace-me",
        "BATTERY_ERP_AUDIT_LOG": "/tmp/battery-erp-audit.jsonl"
      }
    }
  }
}

その後、Cursor で MCP サーバーを再読み込みします。公開されるツール:lookup_inventory、 get_inventory_status、get_inventory_record、list_inventory、 create_bin_check_request、record_bin_confirmation。

サーフェスエントリー共有レイヤー
RESTGET /inventory/lookup/{part}、ビン確認/ビン確定battery_erp.services.InventoryService
MCP上記のツール(mcp SDK 2.x MCPServer)同じ

ビン確定の変更操作には BATTERY_ERP_CONFIRM_TOKEN が必要です。任意で、 JSONL 監査ログを BATTERY_ERP_AUDIT_LOG に書き込みます。

ディレクトリ/レジストリへのパッケージ化については、PUBLISH.md(glama.json、 Dockerfile、server.json)を参照してください。

ディレクトリリンク
PyPIhttps://pypi.org/project/battery-erp/
MCP Registryio.github.icohangar-ops/battery-erp
Glamahttps://glama.ai/mcp/servers/@icohangar-ops/battery-erp

テスト

PYTHONPATH=src python3 -m pytest tests/ -v
# Domain tests + inventory service / REST / MCP scaffold

ユースケース

  • セルメーカー — 化学組成をまたいだ BOM コスト追跡、歩留まりの最適化
  • パックインテグレーター — パックレベルのコスト見積もり、サプライヤーの選定
  • 調達 — サプライヤーのスコアリング、複数調達、発注パイプラインの管理
  • 財務 — 商品価格リスク、what-if シナリオ、在庫評価
  • 経営幹部 — $/kWh の推移、サプライチェーンのレジリエンス、コスト削減の機会を示すダッシュボード

ライセンス

MIT。LICENSE を参照してください。


CHP ガバナンス

このリポジトリは、マルチエージェント AI システム向けの Cubiczan の意思決定ガバナンスレイヤーであるコンセンサス強化プロトコル(CHP)によって強化されています。

プロトコルレイヤー
  • R0 ゲート:すべての意思決定は、Solvable、Scoped、Valid、Worth_it のチェックに合格する必要があります
  • 基盤の開示:最も弱い前提を1~3件、無効化条件を1~2件、主要な脆弱性を1件
  • 敵対的レイヤー:Phase 0 と Round 3 でデビルズアドボケートを必須とします
  • 状態マシン:EXPLORING → PROVISIONAL → PROVISIONAL_LOCK → LOCKED
  • 第三者による検証:ロック前に独立した CONFIRM/REJECT を実施します
ドメイン設定
  • カテゴリ:鉱業/サプライチェーン
  • 基盤しきい値:75
  • CFO 精度ガード:無効
コンプライアンス関連ファイル
ファイル目的
.chp/STATE_MACHINE.md意思決定の状態遷移
.chp/R0_CONFIG.yamlドメインに合わせて調整されたしきい値
.chp/ADVERSARIAL_PROMPTS.md標準化された異議申し立て用テンプレート
.chp/CHP_COMPLIANCE.mdコンプライアンスの追跡と監査証跡
CHP バージョン

cognitive-mesh-orchestrator 0.1.0 | プロトコルドキュメント

デモ

ハンドヘルド — Parts Bin Text Line

稼働中のリードページからのモバイルキャプチャ (parts-bin-text-line--icohangar.replit.app)。 SMS → テキストライン → Battery ERP の在庫確認 → 人によるビン確定。

Parts Bin Text Line のハンドヘルドデモ

デモ動画

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。