dssat-mcp
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@dssat-mcpSimulate maize at Suwon with 120 kg N/ha"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
DSSAT-MCP: AI Agent Interface for Crop Model Calibration
A proof-of-concept MCP (Model Context Protocol) server that wraps the DSSAT CSM v4.8 crop simulation model, enabling natural language interaction through LLM agents (e.g., Claude).
Paper: "MCP-Based AI Agent Interface for Crop Model Calibration: A Proof of Concept with DSSAT" (under review)
Overview
Crop model calibration traditionally requires deep technical expertise: writing experiment files, configuring parameters, parsing outputs. This project demonstrates that wrapping DSSAT in an MCP server allows an LLM agent to perform calibration tasks through natural language alone.
Available Tools (9 MCP tools)
Tool | Description |
| List supported crops, stations, and soils |
| List cultivars from DSSAT .CUL files |
| Browse available weather files |
| Browse available soil profiles |
| Run a single DSSAT simulation |
| Run multiple scenarios in one batch |
| Calculate RMSE, d-index, NSE, R² |
| One-at-a-time parameter sensitivity |
| Estimate cultivar parameters from observations |
| Download KMA weather data → WTH file |
| Retrieve stored simulation results |
Supported Crops
Crop | Model | Korean Cultivar |
Maize | MZCER048 | KR0003 (Dacheongok) |
Wheat | WHCER048 | KR0001, KR0002 |
Barley | CSCER048 | KR0001 (Tapgol), KR0002 (Seodunchal) |
Rice | RICER048 | IB0012 |
Soybean | CRGRO048 | KR2828 |
Potato | PTSUB048 | IB0001 |
Sorghum | SGCER048 | IB0001 |
Related MCP server: ladybug-tools-mcp
Prerequisites
1. DSSAT v4.8
Download and install from dssat.net (free registration required).
Default install path: C:\DSSAT48
2. Python 3.10+
pip install -r requirements.txt3. MCP-compatible client
Claude Desktop — recommended
Any MCP-compatible LLM client
Installation
Step 1: Clone this repository
git clone https://github.com/YOUR_USERNAME/dssat-mcp.git
cd dssat-mcpStep 2: Install Python dependencies
pip install -r requirements.txtStep 3: Copy data files into DSSAT
# Weather files
copy data\SUWO2501.WTH C:\DSSAT48\Weather\
copy data\SUWO2601.WTH C:\DSSAT48\Weather\
# Soil profiles
copy data\KR.SOL C:\DSSAT48\Soil\
# Korean cultivar parameters
copy genotype\WHCER048.CUL C:\DSSAT48\Genotype\WHCER048.CUL
copy genotype\BACER048.CUL C:\DSSAT48\Genotype\BACER048.CUL
copy genotype\MZCER048.CUL C:\DSSAT48\Genotype\MZCER048.CUL
copy genotype\SBGRO048.CUL C:\DSSAT48\Genotype\SBGRO048.CULNote: The CUL files in
genotype/contain Korean cultivar entries added to the original DSSAT files. Back up your originals before copying.
Step 4: Configure environment variables
copy .env.example .env
# Edit .env with your pathsStep 5: Register with Claude Desktop
Edit %APPDATA%\Claude\claude_desktop_config.json:
{
"mcpServers": {
"dssat-mcp": {
"command": "python",
"args": ["C:/path/to/dssat_mcp_server.py"],
"env": {
"DSSAT_HOME": "C:/DSSAT48",
"DSSAT_BIN": "C:/DSSAT48/DSCSM048.EXE",
"DSSAT_WORK": "C:/dssat_jobs",
"DSSAT_WEATHER": "C:/DSSAT48/Weather",
"DSSAT_SOIL": "C:/DSSAT48/Soil"
}
}
}
}Quick Start
Once Claude Desktop is running with the MCP server registered, you can interact naturally:
"Run a maize simulation for Suwon, sowing May 1 2025, 120 kg N/ha"
"Estimate cultivar parameters for Korean wheat sown Oct 25 2025,
heading date Apr 20 2026, maturity Jun 7 2026, yield 5200 kg/ha,
thousand grain weight 38g"
"Compare nitrogen rates 0, 60, 120, 180, 240 kg/ha for maize
at Suwon using sensitivity analysis"
"Evaluate simulation accuracy:
observed yield 5000, simulated 4919;
observed yield 6200, simulated 5850"Data Files
Weather (data/)
File | Station | Period | Source |
| Suwon, Korea (37.26°N, 126.98°E) | Jan–Dec 2025 | KMA ASOS |
| Suwon, Korea | Oct 2025–Dec 2026 | KMA ASOS + climatology |
Soil (data/)
Profile ID | Description |
| Suwon Jungdong — Silty Clay, 120 cm |
| Suwon Jungdong — Silt Loam, 120 cm |
Genotype (genotype/)
Korean cultivar parameters added to standard DSSAT .CUL files:
KR0003 — Maize Dacheongok (옥수수 다청옥)
KR0001, KR0002 — Wheat Tapgol / Seodunchal (밀 탑골/서둔찰)
KR0001, KR0002 — Barley Tapgol / Seodunchal (보리 탑골/서둔찰)
KR2828 — Soybean KRUG2828 (콩)
Key Features
Calibration (estimate_cultivar_params)
Estimates DSSAT cultivar parameters directly from field observations — no optimization loop required:
P5: GDD from heading to maturity (all crops)
P1V: Vernalization days (wheat, barley)
G2/G3: Kernel weight from thousand-grain weight
Verification simulation run automatically after estimation
Model Evaluation (evaluate_simulation)
Standard statistical metrics for model performance assessment:
RMSE, MAE, MBE (bias)
Willmott d-index
Nash-Sutcliffe Efficiency (NSE)
Pearson R²
Climate Scenarios (run_batch)
# Example: RCP scenario comparison
run_batch(crop="maize", scenarios=[
{"label": "baseline", "sowing_date": "2025-05-01"},
{"label": "+2°C", "delta_temp": 2},
{"label": "RCP4.5", "delta_temp": 2, "co2_ppm": 550},
{"label": "RCP8.5", "delta_temp": 4, "co2_ppm": 700},
])Limitations
Single AI agent (Claude) — extensible to other LLM clients via MCP protocol
Single crop model (DSSAT) — architecture supports adding APSIM, STICS, etc.
Definition-based calibration: accurate for phenology parameters (P5, P1V), less so for yield parameters without anthesis biomass data
Windows native; Linux/macOS require Wine
System Architecture
User (natural language)
│
▼
LLM Agent (Claude)
│ MCP Protocol (JSON-RPC over stdio)
▼
DSSAT-MCP Server (Python / FastMCP)
│
├── FileX writer (experiment file)
├── Weather handler (perturbation, KMA download)
├── Soil handler (profile lookup)
├── Cultivar estimator (parameter estimation)
└── Output parser (Summary.OUT, PlantGro.OUT, ...)
│
▼
DSSAT CSM v4.8 (DSCSM048.EXE)Citation
If you use this code, please cite:
@article{yourname2025dssat,
title = {MCP-Based AI Agent Interface for Crop Model Calibration:
A Proof of Concept with DSSAT},
author = {Your Name et al.},
journal = {Computers and Electronics in Agriculture},
year = {2025},
note = {under review}
}License
MIT License — see LICENSE for details.
DSSAT itself is subject to its own license agreement (dssat.net).
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
- 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/BeomseokForWork/dssat-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server