供应链弹性代理
监控食品价格波动,以发现供应链风险。
→ SETUP_GUIDE.md –MCP、GitHub Pages和警报的一步一步。在供应链理论中,当物流网络运行良好时,标准化商品(如1公斤大米)的价格在整个地区应该相似。 低方差=稳定的供应链。高差异=可能囤积、交付失败或当地短缺。
该项目结合了:
- MCP服务器 –通过Cursor进行LLM驱动的调查和按需警报
- 每日批量扫描 –通过GitHub Actions自动分析和生成报告
- 静态仪表板 –GitHub页面上的暗模式UI
- 警报 –当商品达到临界状态时,通过重新发送电子邮件
______________________________________________________________________
项目概述
| 组件 | 描述 |
|---|---|
| 价格分散=风险 | 变异系数(CV=标准值/平均值)映射到临界值(>0.5)、警告值(>0.3)或稳定值(≤0.3) |
| 开放价格API | 数据来源: https://prices.openfoodfacts.org/api/v1/prices |
| 商品 | 大米、牛奶、鸡蛋、油、小麦 |
______________________________________________________________________
MCP设置
使用Cursor或其他MCP客户的供应链弹性工具。
- 安装依赖项:
pip install -r src/requirements.txt- 项目配置:
.cursor/mcp.json已配置。确保cwd指向项目根。
- 重新启动游标 所以它拿起MCP服务器。这些工具将出现在MCP面板中:
- investigate_commodity –商品的实时风险分析 - get_supply_chain_report –最新缓存报告 - list_commodities –跟踪商品清单 - compare_commodities –不同商品的比较风险 - send_supply_chain_alert –发送电子邮件/短信提醒
- 手动运行(可选):
python src/server.py______________________________________________________________________
警报设置
为自动(批量)和按需(MCP)警报配置电子邮件(重新发送)。
- 复制模板:
cp .env.example .env- 电子邮件(重新发送):
- 集 RESEND_API_KEY (免费套餐:100封邮件/天) - 可选:设置 RESEND_FROM (已验证的发件人)。默认为 onboarding@resend.dev.
- 批量警报: 集
ALERT_EMAIL当任何商品变得关键时,自动接收电子邮件。
GitHub操作: 将这些添加为存储库机密(设置→ 秘密与变量→ 行动)。发送警报时,日常工作流程将使用它们。
______________________________________________________________________
启用GitHub页面
- 首选 存储库设置→ Pages
- 在...之下 构建和部署,选择 从分支部署
- 分行:
main(或您的默认分支) - 文件夹:
/ (root) - 保存
您的仪表板将位于: https://.github.io//frontend/
______________________________________________________________________
每日扫描的工作原理
- 日程 GitHub Actions每天08:00 UTC运行(
cron: '0 8 * * *') - 步骤: 结账→ 设置Python→ 安装deps→ Run
python src/agent.py - 代理人: 获取大米、牛奶、鸡蛋、油、小麦的价格数据;计算CV和状态;写
data/latest_report.json - 警报: 如果任何商品至关重要
ALERT_EMAIL已设置,发送电子邮件 - 承诺: 推动
data/latest_report.json返回仓库,以便GitHub Pages和仪表板可以读取它
______________________________________________________________________
本地开发
# Run the batch agent (generates data/latest_report.json)
python src/agent.py
# Run the MCP server (for Cursor integration)
python src/server.py使用 .env (复制自 .env.example)在本地测试警报。
______________________________________________________________________
项目结构
.github/workflows/daily_scan.yml # Daily cron workflow
.cursor/mcp.json # Cursor MCP config
src/
analyzer.py # Price fetch, CV, risk analysis
agent.py # Batch script, writes report
alerts.py # Email/SMS delivery
server.py # FastMCP server with tools
requirements.txt
.env.example # Env var template
frontend/
index.html
style.css
app.js
data/
latest_report.json # Generated report
.gitignore
README.md