Deterministic mapping from land use and soil texture to SWMM runoff/subarea and Green-Ampt infiltration parameters. Use when generating first-pass subcatchment parameter tables for swmm-builder.
[SUBCATCHMENTS] + [SUBAREAS] defaults[INFILTRATION] (Green-Ampt) defaultsscripts/landuse_to_swmm_params.py
subcatchment_id + landuse_class to runoff/subarea parametersscripts/soil_to_greenampt.py
subcatchment_id + soil_texture to Green-Ampt infiltration parametersscripts/merge_swmm_params.py
swmm-builderBy default, scripts read bundled lookup CSVs:
skills/swmm-params/references/landuse_class_to_subcatch_params.csvskills/swmm-params/references/soil_texture_to_greenampt.csvYou can override lookup paths with CLI flags.
Land use input CSV:
subcatchment_id, landuse_classSoil input CSV:
subcatchment_id, soil_textureExample files are provided under examples/.
Each mapper writes explicit JSON containing:
records (row-level audit trail)sections (SWMM-oriented lists keyed by subcatchment)unmatched_* lists (rows that used fallback)counts summaryThe merge script writes:
sections (subcatchments, subareas, infiltration)by_subcatchment (combined record per subcatchment ID)incomplete_ids (IDs missing one or more sections)MCP wrapper location:
scripts/mcp/server.jsExposed tools:
map_landuse (inputCsvPath, optional lookupCsvPath, outputPath)map_soil (inputCsvPath, optional lookupCsvPath, outputPath)merge_params (landuseJsonPath, soilJsonPath, outputPath)Quick start:
npm --prefix skills/swmm-params/scripts/mcp install
npm --prefix skills/swmm-params/scripts/mcp run start
DEFAULT for land use, - or DEFAULT for soil)..inp.python3 skills/swmm-params/scripts/landuse_to_swmm_params.py \
--input skills/swmm-params/examples/landuse_input.csv \
--output runs/swmm-params/example_landuse.json
python3 skills/swmm-params/scripts/soil_to_greenampt.py \
--input skills/swmm-params/examples/soil_input.csv \
--output runs/swmm-params/example_soil.json
python3 skills/swmm-params/scripts/merge_swmm_params.py \
--landuse-json runs/swmm-params/example_landuse.json \
--soil-json runs/swmm-params/example_soil.json \
--output runs/swmm-params/example_builder_params.json