usda_soil_components
Pack: usda-soil · Connect: https://pipeworx.io/mcp (see Connect below for a single-pack URL)
No MCP client? Call it directly: GET https://gateway.pipeworx.io/v1/tools/usda_soil_components for the schema, then POST the same URL with its arguments for the data.
The soil components inside one USDA SSURGO map unit — each named soil series with its percentage of the unit, official taxonomic class, drainage class, slope range, hydrologic soil group, land capability class and runoff potential. Answers “what soil series is this and how does it drain/behave”. Keyless. Get the mukey from usda_soil_mapunit_at_point.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
mukey | string | yes | SSURGO map unit key, e.g. “412898”. From usda_soil_mapunit_at_point. |
include_horizons | boolean | no | Also return the soil horizons (depth layers) for each component with sand/silt/clay percentages, organic matter, pH and available water capacity. Default false. |
Example call
Arguments
{
"mukey": "412898",
"include_horizons": true
}
curl
curl -X POST https://gateway.pipeworx.io/usda-soil/mcp \
-H 'Content-Type: application/json' \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"usda_soil_components","arguments":{"mukey":"412898","include_horizons":true}}}'
TypeScript (@pipeworx/sdk)
import { Pipeworx } from '@pipeworx/sdk';
const pipeworx = new Pipeworx();
const result = await pipeworx.call('usda_soil_components', {
"mukey": "412898",
"include_horizons": true
});
More examples
{
"mukey": "412898"
}
Connect
Add this to your MCP client config — every tool in the catalog, including this one — or use one-click install buttons:
{
"mcpServers": {
"pipeworx": {
"url": "https://pipeworx.io/mcp"
}
}
}
Connect to just the usda-soil pack
{
"mcpServers": {
"usda-soil": {
"url": "https://gateway.pipeworx.io/usda-soil/mcp"
}
}
}
See Getting Started for client-specific install steps.