关于 CropProphEU
CropProphEU 是面向欧洲农业领域 AI Agent 的 MCP 服务,提供作物预测、市场价值、天气和风险分析。其工具还可比较不同地区与作物,并优化欧盟地区的农业投资组合。
主要功能
- 01五种作物的产量预测
- 02市场价值与实时价格
- 03天气预报与气候情景
- 04地区和作物比较
- 05投资组合分配优化
- 06环境与野猪风险分析
适用场景
- 01按地区估算作物产量和价值
- 02比较作物季节与天气状况
- 03评估产量和环境风险
- 04跨地区和作物分配农业投资组合
MCP 相关
向 MCP 客户端提供 13 种农业工具,包括产量与价值预测、天气和气候分析、地区比较、投资组合优化及环境风险评分。支持 stdio 和基于 SSE 的 HTTP 服务。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
🌾 CropProphEU — 欧盟作物智能 MCP 服务
13 个 MCP 工具、5 种作物、26 个欧盟国家、123 个 NUTS2 地区 — 为欧洲农业提供产量预测、市场价值(€/ha)、风险分析、环境风险评分和投资组合优化。由 AI Agent 构建,服务于 AI Agent。
“今年 Sachsen-Anhalt 的小麦表现如何?我该如何在 100 ha 土地上实现最佳 €/ha 配置?”
pip install git+https://github.com/DasClown/CropProphEU.git
功能(13 个 MCP 工具)
| # | 工具 | 功能 | 版本 |
|---|---|---|---|
| 1 | yield_and_value | 产量 + 市场价值(€/ha) + 通俗易懂的摘要(DE/EN) | V4.6 |
| 2 | europe_yield_forecast | 泛欧 RF 预测,包含风险产量(P10/P50/P90)+ NDVI 校正 | V4.3 |
| 3 | crop_forecast | 当前季节:GDD、降雨、土壤湿度、干旱指数、霜冻预警 | V4.0 |
| 4 | compare_regions | 批量比较 20 个地区 × 5 种作物,使用实时市场价格 | V5.1 |
| 5 | portfolio_optimizer | AI 投资引擎:预算 → 在各地区 × 作物间实现最优配置 | V5.1e |
| 6 | season_comparison | 将本季与历史年份进行比较 | V4.0 |
| 7 | region_health | 单次调用获取一个地区的所有作物信息 | V4.5 |
| 8 | weather_outlook | 16 天天气预报 | V4.0 |
| 9 | climate_scenario | 假设情景:+2°C、降雨量 -20% 等 | V4.4 |
| 10 | yield_forecast | 类比年份产量匹配(侧重德国) | V3.0 |
| 11 | list_regions | 覆盖 26 个国家的 123 个 NUTS2 地区 | V4.2 |
| 12 | list_crops | 作物参数(GDD 基数、生长季、霜冻敏感性) | V4.5 |
| 13 | environmental_risk | 全新 V5.4 — ERS(森林、侵蚀、风暴、冰雹)+ 德国的野猪破坏风险 | V5.4 |
快速开始
1. 安装
pip install git+https://github.com/DasClown/CropProphEU.git
2. 作为 MCP 服务使用
CLI(stdio):
crop-mcp
Python API:
from crop_mcp import predict_europe_yield
result = predict_europe_yield("DE11", "DE", crop="wheat", gdd=3050, precip_mm=650)
print(f"Yield: {result['predicted_yield_t_ha']} t/ha")
print(f"Revenue: ~{result['predicted_yield_t_ha'] * 239:.0f} €/ha")
3. Claude Desktop / Cursor
{
"mcpServers": {
"crop": {
"command": "python3",
"args": ["-m", "crop_mcp.server"]
}
}
}
4. HTTP 服务(远程 / Smithery)
pip install crop-mcp[http]
crop-mcp --http --port 8080
通过 SSE 连接:http://your-server:8080/sse
5. Docker
docker build -t crop-mcp .
docker run -p 8080:8080 crop-mcp crop-mcp --http --port 8080
已验证作物 — 数据完整性 ✅
每项预测都可追溯至已验证的 Eurostat 作物代码。 不会产生幻觉,也不会悄悄使用错误作物数据进行训练。
| 作物 | Eurostat 代码 | 样本数 | 国家数 | MAE(LOYO) | R² |
|---|---|---|---|---|---|
| 🌾 小麦 | C1100 | 1,603 | 26 (🇪🇺+🇺🇦) | 11.5% | 0.87 |
| 🌽 玉米 | C1500 | 1,797 | 21 (🇪🇺+🇬🇧) | 11.6% | 0.72 |
| 🌿 大麦 | C1300 | 1,885 | 26 (🇪🇺+🇬🇧) | 11.2% | 0.85 |
| 🌻 油菜籽 | I1110 | 1,825 | 25 | 10.8% | 0.83 |
| 🌻 向日葵 | I1120 | 1,229 | 17 | 16.1% | 0.74 |
⚠️ V5.1d 数据修复:油菜籽和向日葵之前使用水稻数据训练(Eurostat 代码 C2000/C2200 错误)。现已更正为工业作物代码 I1110/I1120。 德国油菜籽预测值从 7.21t 降至 2.63t——这是实际预测值,并非外推值。
为什么选择 CropProphEU?
| 能力 | CropProphEU | Open-Meteo MCP | Gro Intelligence |
|---|---|---|---|
| 产量预测 | ✅ 5 种作物 | ❌ | ✅ $10K+/yr |
| 土壤特征 | ✅ 11 项属性 | ❌ | ✅ |
| 产量风险值(P10/P90) | ✅ | ❌ | ✅ |
| 实时市场价格(€/ha) | ✅ CBOT + MATIF | ❌ | ✅ |
| 气候情景分析 | ✅ | ❌ | ✅ |
| 霜冻预警 | ✅ | ✅ | ❌ |
| NDVI 卫星校正 | ✅ | ❌ | ❌ |
| 投资组合优化器 | ✅ | ❌ | ❌ |
| 多语言(DE/EN) | ✅ | ❌ | ❌ |
| 环境风险 | ✅ V5.4 | ❌ | ❌ |
| 价格 | 免费 | 免费 | $10K+/yr |
独特之处:唯一一款免费的 MCP 服务,覆盖欧盟农业,并通过单一流程实现从土壤 → 产量 → 市场价值 → 环境风险 → 投资组合优化。
V5.4 — 环境风险评分 + 野生动物损害 🌍🐗
| 功能 | 说明 |
|---|---|
| 环境风险评分 | 根据森林覆盖率、玉米种植面积、土壤侵蚀、风暴和冰雹风险综合计算 → 🟢🟡🔴 |
| 德国野生动物损害 | DJV 狩猎统计数据 + 林缘指数 + 玉米种植面积占比 → 估算每公顷损失金额 |
| 红绿灯系统 | 🟢 low (<35), 🟡 moderate (35-65), 🔴 high (≥65) |
| MCP 工具 | environmental_risk(region='DE26') → 即时分析,包括野生动物损害 |
Maßbach 示例(DE26 下弗兰肯):
{
"overall_risk": "🔴 high",
"ers_level": "🟡 moderate",
"wild_boar_risk": {"level": "🔴 high", "loss_eur_ha": 158},
"management": ["Waldrandstreifen 3-6m", "Drückjagd Nov-Dez", "8-Tage-Anzeigefrist §36 BayJG"]
}
V5.4 — 测试与 CI 🧪
| 措施 | 状态 |
|---|---|
| pytest | 16 项测试,全部通过(tests/test_crop_mcp.py) |
| CI(GitHub Actions) | ✅ 每次推送时运行 — 页眉中的徽章显示为绿色 |
| Git LFS | *.pkl + 大型 .json 文件通过 LFS 管理(已从 Git 树中移除) |
运行测试:
pip install -e ".[test]"
pytest tests/ -v
模型准确度
| 指标 | 数值 |
|---|---|
| LOYO MAE(小麦) | 0.599 t/ha(11.5%) |
| 前向验证(训练集 ≤2022,测试集 2023-24) | 0.794 t/ha(15.0%) |
| R²(LOYO) | 0.871 |
| R²(前向) | 0.628 |
在欧盟核心地区(DE、FR、BE、NL、AT、CZ)的准确度最高,这些地区的训练数据较为密集。
各作物表现(V5.2)
| 作物 | 算法 | 主要特征 | 关键发现 |
|---|---|---|---|
| 🌾 小麦 | RF 200 trees | solar_kwh (35%) | 南北梯度起主导作用 |
| 🌽 玉米 | RF 200 trees | clay_pct (42%) | 玉米对土壤极为敏感 |
| 🌿 大麦 | Ridge | clay_pct (27%) | 所有作物中覆盖最广 |
| 🌻 油菜籽 | RF 200 trees | coarse_pct (28%) | 已修正 — 现有 1,825 个真实样本 |
| 🌻 向日葵 | Ridge | silt_pct (24%) | 覆盖 17 个国家(修复后) |
实时市场价格
| 作物 | 来源 | €/t(2026 年 5 月) | 市场 |
|---|---|---|---|
| 小麦 | ✅ CBOT ZW=F + MATIF 溢价 | 239 | Euronext MATIF |
| 玉米 | ✅ CBOT ZC=F + MATIF 溢价 | 189 | Euronext MATIF |
| 大麦 | ✅ 参考价(AMI 区域数据) | 190 | AMI 区域交易所 |
| 油菜籽 | ✅ 参考价 | 470 | Euronext MATIF(ECO) |
| 向日葵 | ✅ 参考价 | 420 | ICE / 黑海 |
生产成本按国家和作物分别计算(V5.3+)。参见 market_prices.py → COUNTRY_PRODUCTION_COSTS(28 个欧盟国家 × 5 种作物)。数据来源:FADN、KTBL、ARVALIS。示例:
| 国家 | 小麦 | 玉米 | 大麦 | 油菜籽 | 向日葵 |
|---|---|---|---|---|---|
| 🇩🇪 DE | 650 | 700 | 600 | 780 | 650 |
| 🇫🇷 FR | 700 | 650 | 600 | 750 | 600 |
| 🇵🇱 PL | 550 | 600 | 500 | 650 | 550 |
| 🇷🇴 RO | 450 | 500 | 400 | 550 | 450 |
| 🇪🇸 ES | 600 | 650 | 550 | 700 | — |
ℹ️ 完整表格:
crop_mcp/market_prices.py中的COUNTRY_PRODUCTION_COSTS字典
数据源
| 来源 | 数据 | 访问方式 |
|---|---|---|
| Eurostat | 作物产量(apro_cpshr)——25 年以上数据,代码经过验证 | 免费,无需密钥 |
| NASA POWER | GDD、降水量、太阳辐射、土壤湿度 | 免费,无速率限制 |
| Open-Meteo | 16 天预报、GDD | 免费,无需密钥 |
| SoilGrids v2(ISRIC) | 11 项属性:SOC、pH、N、CEC、黏土、沙土、粉土、bdod(容重)、cfvo(粗颗粒)、AWC、粗颗粒 | 免费 REST API |
| LUCAS Soil(ESDAC) | 约 20K 个田间采样点的土壤质地 + 粗颗粒 | 免费下载 |
| Sentinel-2 NDVI | 植被指数(Copernicus STAC + Planetary Computer 备用方案) | 免费,无需身份验证 |
| Yahoo Finance | CBOT 小麦/玉米期货、EUR/USD 实时行情 | 免费,无需密钥 |
无需任何 API 密钥——所有数据源均免费且公开。
输出示例
德语(默认):
Weizen – Region DEE0 (DE)
Ertrag: 7.35 t/ha (Spanne 6.50–8.20)
Temperatur: warm (2950°C Wärmesumme)
Niederschlag: ausreichend (480 mm)
Bodenfeuchte: feucht (48%)
Modellabweichung: ±11.5% (1603 Samples, 26 Länder)
Vergleich zu 2024: +0.15 t/ha (im Rahmen des Vorjahres)
Marktwert: 1.757 €/ha @ 239 €/t
Kosten: 650 €/ha → Deckungsbeitrag: 1.107 €/ha
英语(使用 language="en"):
Wheat – Region DEE0 (DE)
Yield: 7.35 t/ha (range 6.50–8.20)
Temperature: warm (2950°C GDD)
...
架构
crop-mcp/
├── crop_mcp/
|├── server.py # 857 Zeilen — Pydantic-Modelle + Tool-Registry + MCP-Init
│ ├── tools/ # **V5.4e** — Handler in logische Module aufgeteilt
│ │ ├── weather.py # weather_outlook, crop_forecast, season_comparison, region_health
│ │ ├── yield_tools.py # yield_forecast, europe_yield_forecast, yield_and_value, climate_scenario
│ │ ├── market.py # compare_regions, portfolio_optimizer
│ │ ├── info.py # list_regions, list_crops
│ │ ├── environmental.py # environmental_risk (V5.4)
│ │ └── helpers.py # Shared utilities (NDVI correction, frost, language)
│ ├── europe_model_api.py # RF (200 trees) + Yield-at-Risk + NDVI correction
│ ├── environmental_risk.py # V5.4 — ERS + Wildschaden DE
│ ├── ndvi_correction.py # Sentinel-2 NDVI correction factor (±30%)
│ ├── market_prices.py # Live CBOT/MATIF via Yahoo Finance
│ ├── feature_cache.py # Sub-second historical queries
│ ├── simulate_yield.py # Analog-year matching
│ ├── auto_update.py # Monthly retrain cron
│ ├── core/regions.py # 123 NUTS2 regions
│ └── sources/ # Weather, soil, NDVI, Eurostat, FAOSTAT fetchers
├── models/ # .pkl files ➜ download from Releases
├── data/ # Training data ➜ download from Releases (or generated by build)
├── tests/ # V5.4 — 16 pytest tests
├── .github/workflows/ci.yml # V5.4 — CI workflow (lokal, benötigt PAT mit workflow-Scope für Push)
├── pyproject.toml
└── README.md
关键设计原则:
- 不产生幻觉——每项产量预测都可追溯至经过验证的 Eurostat 数据
- 实时价格——通过 Yahoo Finance 获取 CBOT 小麦/玉米行情,每小时更新
- 自动更新——每月通过 cron 使用最新 Eurostat 数据重新构建模型
- 无需 API 密钥——所有数据源均免费且公开
- AI 服务 AI——专为 Agent 构建,无仪表板
构建与训练
# Build training data (25 min per crop)
python3 build_europe.py --crop corn
# Train model (2 min)
python3 train_europe_fast.py --crop corn
# Auto-update monthly (cron: 1st of month at 06:00)
商业应用场景
- 农业交易部门:“按当前 MATIF 价格,Picardie 的小麦值多少钱?”
- 农场咨询:“本季表现与过去 5 年相比如何?”
- 保险 / 风险:按地区和作物计算风险产量(P10/P50/P90)
- 欧盟政策分析:气候情景对各国产量的影响
- 投资:用于 100 公顷以上土地配置决策的投资组合优化器
🤝 获取帮助与参与贡献
| 渠道 | 用途 |
|---|---|
| 💬 GitHub Discussions | 编码前提问、功能构想、社区交流 |
| 🐛 GitHub Issues | Bug 报告、已确认的功能请求 |
| 📖 CONTRIBUTING.md | 开发环境设置、分支命名、提交规范、代码风格 |
欢迎新贡献者!请参阅 CONTRIBUTING.md 开始参与。
许可证
MIT——可免费使用、修改和分发。
为需要真实、可验证作物情报的 AI Agent 倾情打造。 ❤️
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。