库存优化服务器

基于预测需求数据实现库存管理优化的智能服务器,提供最优每日订单计划。

  • by omeletJK
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 omeletjk/inventory-mcp-server

使用说明

🏭 库存管理优化MCP服务器

模型上下文协议(MCP)서버使用实现的智能库存管理优化工具

🎯 概述

该MCP服务器根据预测的需求数据优化库存管理。输入当前库存水平和预测的每日需求。 最佳的每日订单计划提供。

🌟 主要功能

  • ✅ 基于安全库存的优化:智能计算以防止缺货
  • ✅ 考虑提前:订单-反映到达延迟
  • ✅ 基于需求预测:考虑未来需求的先发制人订单
  • ✅ 应用约束条件:实际订单量限制
  • ✅ 克劳德桌面연동:用自然语言轻松操作

🚀 快速入门

1.安装

# Python 가상환경 생성 (권장)
python -m venv venv
source venv/bin/activate  # Windows: venv\Scripts\activate

# 의존성 설치
pip install -r requirements.txt

2.运行服务器

# 개발 모드로 실행
python api.py

# 또는 uvicorn으로 직접 실행
uvicorn api:app --host 0.0.0.0 --port 8000 --reload

3.在浏览器中确认

  • API文档: http://localhost:8000/docs
  • 健康检查: http://localhost:8000/health
  • 验证示例: http://localhost:8000/example

📊 使用方法

API调用示例

curl -X POST "http://localhost:8000/optimize" \
     -H "Content-Type: application/json" \
     -d '{
       "inventory_level": 100,
       "forecasted_demand": [12, 10, 15, 18, 9, 11, 13, 14, 10, 12],
       "lead_time": 2
     }'

响应示例

{
  "order_plan": [0, 10, 18, 0, 0, 5, 8, 0, 0, 7],
  "total_orders": 48,
  "max_daily_order": 18,
  "avg_daily_order": 4.8
}

🤖 在Claude Desktop中使用

MCP设置

在Claude Desktop的配置文件中添加以下内容:

{
  "mcpServers": {
    "inventory-optimization": {
      "command": "python",
      "args": ["/path/to/inventory-mcp-server/api.py"],
      "env": {}
    }
  }
}

自然语言提示示例

현재 재고가 100개이고, 향후 10일간 수요가 [12, 10, 15, 18, 9, 11, 13, 14, 10, 12]일 때 
최적의 주문 계획을 세워주세요. 주문 후 도착까지는 2일이 걸립니다.

🐳 作为Docker运行

# 이미지 빌드
docker build -t inventory-optimizer .

# 컨테이너 실행
docker run -p 8000:8000 inventory-optimizer

📁 项目结构

inventory-mcp-server/
├── main.py                 # 핵심 최적화 알고리즘
├── api.py                  # FastAPI 웹서버
├── mcp_config.json        # MCP 서버 설정
├── task_description.md    # 상세 사용법 가이드
├── sample_inputs/         # 예제 입력 파일들
│   ├── input1.json       # 기본 시나리오
│   ├── input2.json       # 높은 변동성
│   └── input3.json       # 계절성 패턴
├── requirements.txt       # Python 의존성
├── Dockerfile            # Docker 설정
├── start.sh              # 실행 스크립트
└── README.md            # 이 파일

🧮 算法详细信息

优化逻辑

  1. 安全库存计算:平均需求×3天
  2. 未来库存预测:当前库存-交货期需求
  3. 订单触发器:预计库存<安全库存
  4. 计算订单量:安全库存+未来需求-当前库存

约束条件

  • 最大订单量:平均需求的7天
  • 最低订购量:0(负)
  • 预测时间:最高365天

🔧 高级设置

调整参数

调整算法的安全库存倍数或最大订单限制的步骤 main.py修改的下一部分:

# 안전 재고 수준 (평균 수요의 3일치)
safety_stock = math.ceil(avg_demand * 3)  # 3을 다른 값으로 변경

# 최대 주문량 제한 (평균 수요의 7일치)
max_order = math.ceil(avg_demand * 7)     # 7을 다른 값으로 변경

📈 示例方案

方案1:稳定需求

  • 当前库存:100个
  • 每日需求:10-18个(稳定)
  • 领先时间:2天
  • 结果:高效的订单计划

方案2:高波动性需求

  • 当前库存:50个
  • 每日需求:5-45个(高变动)
  • 领先时间:3天
  • 结果:安全库存强化计划

场景3:季节性模式

  • 当前库存:200个
  • 需求模式:递增后递减
  • 提前:1天
  • 结果:先发制人的峰值订单

🤝 贡献

  1. Fork此存储库
  2. 创建特征分支(git checkout -b feature/AmazingFeature)
  3. 提交更改(git commit -m 'Add some AmazingFeature')
  4. 推送到分支(git push origin feature/AmazingFeature)
  5. 打开Pull Request

📄 许可证

该项目在MIT许可下分发。有关详细信息,请访问 许可证 请参考文件。

🔗 相关链接

📞 支持

如果您有问题或问题:


⭐ 如果这个项目有帮助,请点击明星!