From faostat-skills
Use when the user asks about agricultural emissions, climate impact of farming, agrifood carbon footprint, greenhouse gases from agriculture, deforestation, forest carbon sinks, temperature change, fertilizer emissions, N2O, land use change, emissions intensity, or the climate-agriculture nexus. Keywords — emissions, climate, carbon, greenhouse gas, GHG, deforestation, forest, temperature, warming, N2O, fertilizer emissions, land use, agrifood, emissions intensity, carbon sink. Do NOT use for a full country food security profile → `faostat-country-profile`. Do NOT use for trend ranking across commodities or countries → `faostat-trends`.
How this skill is triggered — by the user, by Claude, or both
Slash command
/faostat-skills:climateThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Analyze the climate-agriculture nexus using FAOSTAT emissions, temperature, land use, and agricultural inputs data. This skill has five sub-workflows. Detect the appropriate one from the user's question, or present the options and ask.
Analyze the climate-agriculture nexus using FAOSTAT emissions, temperature, land use, and agricultural inputs data. This skill has five sub-workflows. Detect the appropriate one from the user's question, or present the options and ask.
Before starting, verify that the FAOSTAT MCP tools are available: faostat_search_codes, faostat_get_data, faostat_get_rankings. If they are not available, inform the user they need the FAOSTAT MCP server configured and stop.
| Domain | Code | Content |
|---|---|---|
| Emissions Totals | GT | Agrifood systems emissions -- broadest scope, full agrifood chain |
| Crop Emissions | GCE | Emissions from crops only (narrower than GT) |
| Forest Emissions/Removals | GF | Forest sinks, net forest conversion (deforestation proxy) |
| Emissions Intensities | EI | Emissions per unit of output |
| Emissions Indicators | EM | Shares, per capita, per value of agricultural production |
| Temperature Change | ET | Country-level warming trends |
| Land Use | RL | Agricultural and forest land use |
| Fertilizers (use & trade) | RFN, RFM, RFB | Nitrogen, manufactured, bulk fertilizers |
| Pesticides Use | RP | Pesticide application data |
| Pesticides Trade | RT | Pesticide import/export data |
Every faostat_get_data call below specifies an element filter. Without one, emissions domains return dozens of sub-elements per year and the payload explodes.
Rule: For GT, GF, ET, RL, RFN, RP — the codes below are stable and may be used directly. For EM domain elements, always resolve at runtime via faostat_search_codes(domain_code='EM', dimension_id='element', query='<metric>') — never hardcode them. The verified codes shown are reference hints only.
| Metric | Domain | Filter code |
|---|---|---|
| Emissions (CO2eq) | GT | 724313 |
| Temperature change (°C) | ET | 7271 |
| Net forest conversion (area, ha) | GF | 6646 |
| Forest land emissions (CO2eq) | GF | 724313 |
| Agricultural land (area, ha) | RL | 5110 |
| Forest land (area, ha) | RL | 5110 (item 6646 Forest land) |
| N fertilizer use (tonnes) | RFN | 5157 |
| Pesticide use (tonnes) | RP | 5157 |
EM domain — resolve at runtime (hints only):
| Metric | Element query | Verified code |
|---|---|---|
| Emissions per capita | query='per capita' | 7279 |
| Share of agrifood in national total (CO2eq AR5) | query='share CO2eq' | 726313 |
| Emissions per value of agricultural production | query='per value' | 72791 |
EM domain item codes (for filtering the agrifood breakdown):
| Item | Code |
|---|---|
| Agrifood systems (broadest total) | 6518 |
| Farm gate | 6996 |
| Land-use change | 6516 |
| Pre- and post-production | 6517 |
Year-range syntax: use explicit comma-separated lists (year='2014,2015,...,2023'). Colon ranges ('2014:2023') have returned empty in practice.
Read the user's question and select the most appropriate sub-workflow:
If the question does not clearly match one sub-workflow, present the five options with a one-line description of each and ask the user to choose.
faostat_search_codes(domain_code='GT', dimension_id='area', query='<country>').
requires_confirmation is true in the response, present the matching options and ask the user to choose. Do NOT proceed until the user confirms.China (area code 351) — the roll-up of mainland + HK SAR + Macao SAR + Taiwan — not China, mainland (41), unless the user specifies 41 explicitly. Note in the output that FAOSTAT's own publications default to 41, so this profile's China total is marginally larger than the FAO data-portal default.faostat_get_data(
domain_code='GT',
area='<area_code>',
element='724313', # Emissions (CO2eq) in CO2 equivalents
year='2014,2015,2016,2017,2018,2019,2020,2021,2022,2023',
response_format='compact'
)
Identify total agrifood emissions trend and the breakdown by source category (farm gate, land use, pre/post production — these come through as different item codes within GT).faostat_search_codes(domain_code='EM', dimension_id='element', query='per capita')
faostat_search_codes(domain_code='EM', dimension_id='element', query='share CO2eq')
Use the returned codes (e.g. 7279 for per capita, 726313 for share) in the data call:
faostat_get_data(
domain_code='EM',
area='<area_code>',
item='6518', # Agrifood systems total
element='<per_capita_code>,<share_code>',
year='2019,2020,2021,2022,2023',
response_format='compact'
)
Extract per capita emissions and share of national total.faostat_get_data(
domain_code='ET',
area='<area_code>',
element='7271', # Temperature change (°C)
year='2014,2015,2016,2017,2018,2019,2020,2021,2022,2023',
response_format='compact'
)
Identify the warming trend over the available period. ET data is monthly — filter to annual items if needed or aggregate to annual averages.faostat_search_codes(domain_code='GT', dimension_id='area', query='<name>').
requires_confirmation for each entity separately. Do NOT proceed until all codes are confirmed.China → composite China (351), not China, mainland (41).faostat_get_data(
domain_code='GT',
area='<code1>,<code2>,...',
element='724313',
year='2014,2015,...,2023',
response_format='compact'
)
faostat_search_codes(domain_code='EM', dimension_id='element', query='per capita')
faostat_search_codes(domain_code='EM', dimension_id='element', query='share CO2eq')
faostat_get_data(
domain_code='EM',
area='<code1>,<code2>,...',
item='6518', # Agrifood systems total
element='<per_capita_code>,<share_code>',
year='2019,2020,2021,2022,2023',
response_format='compact'
)
Extract per capita and share metrics for normalization.faostat_search_codes(domain_code='GCE', dimension_id='item', query='<crop>').
requires_confirmation as always.faostat_get_rankings to identify top 10 producers for context.faostat_get_data(domain_code='GCE', item='<item_code>', area='<codes>', response_format='compact')faostat_get_data(domain_code='EI', item='<item_code>', area='<codes>', response_format='compact')faostat_search_codes(domain_code='GF', dimension_id='area', query='<name>').
requires_confirmation.faostat_get_data(domain_code='GF', area='<area_code>', response_format='compact')
Look for: net forest conversion (deforestation proxy), forest land emissions, forest land removals (carbon sinks).faostat_get_data(domain_code='RL', area='<area_code>', response_format='compact')
Look for: agricultural land area, forest area, changes over time.faostat_search_codes(domain_code='GT', dimension_id='area', query='<name>').
requires_confirmation.faostat_get_data(domain_code='RFN', area='<area_code>', response_format='compact')faostat_get_data(domain_code='RP', area='<area_code>', response_format='compact')faostat_get_data(domain_code='GT', area='<area_code>', response_format='compact')
Focus on N2O emissions components if available.faostat_search_codes before faostat_get_data to resolve codes. Never guess domain-specific codes.requires_confirmation is true in a search result, always present options to the user and wait for their choice.response_format='compact' when querying multiple entities or large time ranges.element filter to faostat_get_data. Emissions domains return dozens of sub-elements per year and the payload explodes without one.year list. Colon ranges like '2014:2023' have returned empty in practice.faostat_get_data call. Always resolve at runtime: faostat_search_codes(domain_code='<dom>', dimension_id='element', query='<metric name>') for elements; faostat_search_codes(domain_code='<dom>', dimension_id='item', query='<item name>') for items. Numeric codes shown in reference tables and code examples are verified hints — use them to validate the search result, not as the authoritative source. Domain letter-codes (QCL, TCL, GT, EM, FBS, FS…) are stable and may be used directly.faostat_get_rankings sometimes returns HTTP 500. If you need rankings (e.g., "top 10 emitters" before the comparison in Sub-workflow B), fall back to faostat_get_data across all reporting countries and sort client-side. Document the fallback in the output.China (351) — the roll-up of mainland + HK SAR + Macao SAR + Taiwan. Do NOT substitute China, mainland (41) unless the user specifies 41 explicitly. State the choice in the output and note that FAOSTAT's own publications default to 41, so the numbers here are marginally larger than the FAO data-portal default.item='6078') or compute an annual mean client-side.| If you need… | Use |
|---|---|
| Full country food security profile | /faostat-country-profile |
| Commodity production context | /faostat-commodity |
| Trend ranking across countries | /faostat-trends |
Provides CDSS development patterns for drug interaction checking, dose validation, clinical scoring (NEWS2, qSOFA), and alert classification integrated into EMR workflows.
npx claudepluginhub berba-q/faostat-skills