Per source: endpoint, license/terms summary + link, status, date checked. Filled in as each source is actually verified — never speculatively.
https://fpma.fao.org/giews/v4/global/price_module/api/v1/FpmaSerieDomestic/?newerThan=<N> months ago(series list/metadata) and https://fpma.fao.org/giews/v4/global/price_module/api/v1/FpmaSeriePrice/?uuid__in=<uuid>&periodicity=monthly (per-series monthly datapoints, including a price_value_dollar field — FAO already does the local-currency-to-USD conversion server-side, so no FX handling is needed on our side). Not in FAO's official API docs; endpoint *structure* was read from github.com/tezamo/FPMA's notebooks (per the spec's explicit allowance), then independently verified live by this build against real UUIDs and real price data on 2026-07-22 — see mci/sources/fpma.py module docstring and tests/fixtures/fpma_sample.json.
<https://www.fao.org/giews/food-prices/home/en/> nor <https://www.fao.org/giews/food-prices/price-tool/en/> states reuse or redistribution terms (checked live 2026-07-22). Domestic series are contributed by many third-party national/international sources — a live sample series carried "source_name": "Vulnerability Analysis and Mapping (VAM) - WFP" — and FAO's general terms explicitly carve out third-party-sourced data as requiring separate consent from the original provider, which was not sought or obtained.
mci/sources/fpma.py has afull fetch/parse implementation (tested against a real captured fixture) gated behind FPMA_LICENSE_CONFIRMED (defaults to false) per ground rule 3. See OPEN_QUESTIONS.md.
https://thedocs.worldbank.org/en/doc/74e8be41ceb20fa0da750cda2f6b9e4e-0050012026/related/CMO-Historical-Data-Monthly.xlsx("Monthly Prices" sheet). Located via the live "Commodity Markets" page (<https://www.worldbank.org/en/research/commodity-markets>) and verified by downloading and parsing it on 2026-07-22 — see mci/sources/pinksheet.py. No pulse/legume series exists in this workbook at all (checked every column header); MCI-G is reweighted over the other five staples — see methodology/METHODOLOGY.md §7.
(World Bank Dataset Terms: "Unless specifically labeled otherwise, these Datasets are provided to you under a Creative Commons Attribution 4.0 International License", with an added mediation/arbitration clause and an attribution-format requirement). This is distinct from — and overrides, for cataloged Datasets — the more restrictive default terms on the Bank's general "Materials"; no restrictive label was found on the Commodity Markets page itself.
https://bulks-faostat.fao.org/production/FoodBalanceSheets_E_All_Data_(Normalized).zip(FBS — "Food Balances (2010-)" dataset, bulk-download CSV, normalized format). FAO's documented REST APIs were checked first and found unusable on the date below: fenixservices.fao.org/faostat/api/v1/... returned HTTP 521 (origin down); faostatservices.fao.org/api/v1/... returned HTTP 401 "Missing Authorization Header" (gated, no key available). The bulk-download service is FAO's own official public distribution channel for the same underlying data and was used instead — see scripts/derive_weights.py.
(FAO's Open Data Licensing Policy for statistical databases, adopted 2025, superseding the earlier CC BY-NC-SA 3.0 IGO policy). Attribution to FAO required; redistribution of derived/aggregated statistics (e.g. methodology/weights.json) permitted.
https://api.nal.usda.gov/fdc/v1/foods/search (public,documented API). Verified live 2026-07-22 (see tests/fixtures/fdc_search_wheat_flour.json for a captured real response).
— public domain. Citing FoodData Central as source is requested, not required. Rate limits: 1,000 req/hour with a real key (free signup at data.gov), 30 req/hour + 50 req/day on the shared DEMO_KEY.
FDC_API_KEY unset(per spec — DEMO_KEY is available and was used only to verify the API shape and build the test fixture, never for runtime density values).
derived data; the human maintainer is seeking written permission separately.
mci/sources/igc.py (documented no-op behind IGC_PERMISSION_GRANTED, which defaults to false and is not sufficient on its own even when set).