search_foodsLABSCO SUMMARY
The USDA database, with the right call for each shape of question.
The abridged detail mode and the nutrient filter are what keep this usable: a full FoodData Central record is large, and most questions only need a handful of nutrients. The batch call matters for the same reason — comparing several foods is one response rather than several.
What it is
An MCP server over the USDA's FoodData Central API. It covers the three ways you normally query that database: find a food by keyword, open one record by its FDC ID, and fetch several records in a single call.
What you get
search_foods— keyword search with optional filters for data type, brand owner and a date range, pluspage_sizeget_food_details— the full nutritional and ingredient record for one food byfdc_id, with an abridged format and a specific nutrient list available when you do not want everythingget_multiple_foods— details for a list offdc_idsin one response, up to 20 items
Requirements
A free USDA FoodData Central API key, supplied as USDA_API_KEY. Docker, to build the image from a clone — or Python 3.12 or newer if you install it with uv pip install -e . instead. TRANSPORT selects stdio or SSE — the SSE mode binds HOST and PORT (8050 by default) and clients connect to http://localhost:8050/sse.
Setup effort
Run a container — build the image from the repository, then point your client at it
USE CASES
Finding the right record for a food
Search by keyword and narrow by brand or data type until you have the FDC ID of the exact product.
Reading the full nutrition panel
Open one food by ID and get the nutrients, ingredients and serving sizes as the USDA publishes them.
Comparing several products at once
Fetch a batch of foods in one call so the comparison happens on one response instead of several round trips.
3 tools
Listed in project docs. Your client may show a different list.
get_food_detailsget_multiple_foodsBEFORE YOU INSTALL
What to know first
Tools you get
3 tools named in the project's documentation.
Requires
- docker on PATH
- Python 3.12+
- USDA_API_KEY in your environment
Where it runs
The documented client runs the server on your machine.
INSTALLATION
Connect your client
Build the image from the repository, then point your client at it.
Server setup
git clone https://github.com/FelipeAdachi/mcp-food-data-central.git
cd mcp-food-data-central
docker build -t food-data-central-mcp --build-arg PORT=8050 .MCP Clients
Any MCP client
{
"mcpServers": {
"food-data-central": {
"command": "docker",
"args": [
"run",
"--rm",
"-i",
"-e",
"TRANSPORT",
"-e",
"USDA_API_KEY",
"food-data-central-mcp"
],
"env": {
"TRANSPORT": "stdio",
"USDA_API_KEY": "<YOUR_USDA_API_KEY>"
}
}
}
}