battery-erp
Battery ERP — управление материалами, ячейками, пакетами и цепочкой поставок с ценами на сырьё в реальном времени
и аналитикой Microsoft Fabric Lakehouse.
Покрывает всю цепочку создания стоимости батарей: литий, кобальт, никель, марганец, графит
через химию ячеек (NMC-811, NCA, LFP, LMO) до батарейных пакетов с расчётом стоимости BOM,
оценкой поставщиков, управлением запасами и сценариями «что если» для затрат.
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 | 11 таблиц Delta для постоянного хранения и SQL-аналитики |
Related MCP server: Factory Insight MCP Server
Быстрый старт
# 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
Все доменные dataclass:
RawMaterial— каталог материалов с ценами, кодами HS, опасностямиCellChemistry— NMC-111/622/811, NCA, LFP, LMO с плотностью энергии и сроком службыBatteryCell— характеристики ячейки (ёмкость, напряжение, форм-фактор, вес)BatteryPack— сборка пакета (ячейки + BMS + терморегулирование)BOMItem— позиция спецификации (BOM) с коэффициентом отходов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_stockcheck_reorder_suggestions()— генерация предложений по заказам на поставкуcalculate_batch_metrics()— агрегированный производственный выходanalyze_price_history()— анализ ценовых трендов с волатильностьюestimate_cell_cost_impact()— моделирование сценариев «что если» для затратcalculate_pack_metrics()— плотность энергии и эффективность пакета
battery_erp.supply_chain
Управление цепочкой поставок:
score_supplier()— композитная оценка (качество 35%, OTD 35%, срок поставки 20%, сертификаты 10%)rank_suppliers()— ранжирование по оценке, фильтрация по материалуcreate_purchase_order()— создание заказа на поставку из данных поставщикаanalyze_po_pipeline()— анализ конвейера заказов (обнаружение просрочек, отслеживание сроков поставки)suggest_dual_sourcing()— рекомендация стратегии двойного 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 | $/кВт·ч | Доля катода | Ключевая особенность |
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 Вт·ч/кг |
Интеграция с Microsoft Fabric
Записные книжки Fabric
Записная книжка | Назначение |
| Создание всех 11 таблиц Delta с начальными данными |
| Полная панель аналитики затрат (сравнение химии, стоимость пакетов, запасы, поставщики, ценовые тренды, сценарии) |
Схема таблиц Delta
Таблица | Ключевые столбцы |
| material_id, name, category, unit_price_usd, price_source, hs_code |
| chemistry_id, name, cathode_type, energy_density_wh_per_kg, cycle_life |
| cell_id, sku, chemistry, form_factor, nominal_capacity_ah, energy_wh, weight_kg |
| pack_id, sku, cell_sku, total_cells, nominal_capacity_kwh, pack_weight_kg |
| bom_id, parent_sku, material_name, quantity_per_unit, unit_cost_usd, waste_factor_pct |
| supplier_id, name, country, materials_supplied, quality_rating, lead_time_days |
| record_id, sku, material_name, quantity_on_hand, quantity_reserved, reorder_point |
| po_id, po_number, supplier_name, quantity, total_usd, status, expected_delivery |
| material_name, price_usd, as_of, source |
| batch_id, product_sku, chemistry, quantity_produced, quantity_pass, yield_pct |
| scenario_id, scenario_name, material_name, current_price_usd, scenario_price_usd, pct_change |
Быстрый старт с Fabric
Запустите
fabric_setup_lakehouse.pyдля создания всех 11 таблиц DeltaЗапустите
fabric_cost_dashboard.pyдля полной панели аналитикиПанель охватывает: сравнение затрат по химии, расчёт стоимости пакетов, состояние запасов, оценку поставщиков, ценовые тренды, производственный выход, сценарии затрат
Адаптеры инвентаризации (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. Заключайте pip extras в кавычки, чтобы zsh не интерпретировал их как glob:
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:8088curl -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.
Конфигурация MCP для Cursor
Добавьте в ~/.cursor/mcp.json (абсолютные пути; python3, а не python):
{
"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"
}
}
}
}Затем перезагрузите MCP-серверы в Cursor. Доступные инструменты: lookup_inventory,
get_inventory_status, get_inventory_record, list_inventory,
create_bin_check_request, record_bin_confirmation.
Поверхность | Вход | Общий слой |
REST |
|
|
MCP | инструменты выше (mcp SDK 2.x | тот же |
Для изменения подтверждения bin требуется BATTERY_ERP_CONFIRM_TOKEN и опционально
записывается JSONL-аудит в BATTERY_ERP_AUDIT_LOG.
Упаковка каталога / реестра: см. PUBLISH.md (glama.json,
Dockerfile, server.json). После слияния в main заявите на Glama как
@icohangar-ops/battery-erp.
Тесты
PYTHONPATH=src python3 -m pytest tests/ -v
# Domain tests + inventory service / REST / MCP scaffoldВарианты использования
Производители ячеек — отслеживание затрат BOM по химиям, оптимизация выхода
Интеграторы пакетов — оценка затрат на уровне пакета, выбор поставщиков
Закупки — оценка поставщиков, двойной sourcing, управление конвейером заказов
Финансы — ценовой риск на сырьё, сценарии «что если», оценка запасов
Руководство — панель с трендами $/кВт·ч, устойчивость цепочки поставок, возможности снижения затрат
Лицензия
MIT. См. LICENSE.
Управление CHP
Этот репозиторий укреплён с помощью Consensus Hardening Protocol (CHP), уровня управления решениями Cubiczan для мультиагентных ИИ-систем.
Уровни протокола
R0 Gate: Все решения должны проходить проверки Solvable, Scoped, Valid, Worth_it
Foundation Disclosure: 1-3 самых слабых допущения, 1-2 условия инвалидации, 1 ключевая уязвимость
Adversarial Layer: Обязательный адвокат дьявола на Фазе 0 и Раунде 3
State Machine: EXPLORING → PROVISIONAL → PROVISIONAL_LOCK → LOCKED
Third-Party Validation: Независимое CONFIRM/REJECT перед блокировкой
Конфигурация домена
Категория: Горнодобыча / Цепочка поставок
Порог Foundation: 75
CFO Accuracy Guard: Отключён
Артефакты соответствия
Файл | Назначение |
| Переходы состояний решений |
| Пороги, откалиброванные по домену |
| Стандартизированные шаблоны вызовов |
| Отслеживание соответствия и аудит |
Версия CHP
cognitive-mesh-orchestrator 0.1.0 | Документация протокола
Демо
Портативное устройство — текстовое поле для контейнеров с деталями
Мобильный захват с живой страницы лида (parts-bin-text-line--icohangar.replit.app). SMS → текст → проверка запасов в ERP для аккумуляторов → подтверждение контейнера оператором.
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceA custom implementation for real-time supply chain optimization that enables parallel tool calling to provide intelligent inventory management recommendations and actionable insights in response to live supply chain events.6
- FlicenseNot gradedqualityDmaintenanceProvides manufacturing enterprise production capability analysis including capacity assessment, equipment details, manufacturing processes, and factory distribution. Enables users to search factories, evaluate suppliers, analyze production capabilities, and make informed procurement and investment decisions.1
- FlicenseAqualityAmaintenanceCross-OEM industrial machine intelligence. Normalizes telemetry across 16 manufacturer families (Fanuc, Siemens, Haas, DMG Mori, Mazak), enables plain-English operational automation, and produces tamper-evident work records. 14 MCP tools.14
- FlicenseNot gradedqualityBmaintenanceAn AI-powered EV Digital Twin platform for battery health monitoring, predictive maintenance, fleet analytics, and intelligent decision support using MCP tools for SOH prediction and RUL estimation.3
Related MCP Connectors
Real-time supply chain risk intelligence — 24 tools, proprietary indices, predictive signals
Cross-OEM industrial machine intelligence: identity, normalization, automation, attestation.
Manage products, EU Digital Product Passports, operator parties, and GS1 EPCIS supply-chain events.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/icohangar-ops/battery-erp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server