USDA Food Data Central
liveHealthFoodComprehensive nutrient database for US foods (~600k items). Branded, Foundation, SR Legacy, Survey, Experimental data types.
Platform key handled by Pipeworx. Or BYO: ?_apiKey=<key>.
{
"mcpServers": {
"pipeworx-usda-fdc": {
"command": "npx",
"args": [
"-y",
"mcp-remote",
"https://gateway.pipeworx.io/usda-fdc/mcp?_apiKey=your_key"
]
}
}
}Tools
search_foodsrequired: querySearch USDA Food Data Central for food items by name, brand, or ingredient. Supports filtering by data type (Branded, Foundation, SR Legacy, Survey FNDDS, Experimental) and brand owner. Returns FDC id
queryreqstring—data_typeoptstring—brand_owneroptstring—page_sizeoptnumber—page_numberoptnumber—sort_byoptstring—sort_orderoptstring—Try it
get_foodrequired: fdc_idFull food record by FDC id.
fdc_idreqnumber—formatoptstring—nutrientsoptstring—Try it
list_foodsPaginated browse of FDC foods.
data_typeoptstring—page_sizeoptnumber—page_numberoptnumber—sort_byoptstring—sort_orderoptstring—Try it
list_food_groupsUSDA food group reference (categories).
No parameters required.
Try it
nutrients_for_foodrequired: fdc_idConvenience: nutrient values only for a food.
fdc_idreqnumber—nutrient_numbersoptstring—Try it
Test with curl
The gateway speaks JSON-RPC 2.0 over HTTP POST. You can test any pack directly from the terminal.
curl -X POST https://gateway.pipeworx.io/usda-fdc/mcp \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'curl -X POST https://gateway.pipeworx.io/usda-fdc/mcp \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":2,"method":"tools/call","params":{"name":"search_foods","arguments":{"query": "hello"}}}'Use with the SDK
Install @pipeworx/sdk to call tools from any TypeScript/Node project.
import { Pipeworx } from '@pipeworx/sdk';
const px = new Pipeworx();
const result = await px.call("search_foods", {"query":"example"});// Or ask in plain English:
const answer = await px.ask("comprehensive nutrient database for us foods (~600k items)");