get_capacity_alerts
ChatGPTReturn capacity alert summary and dated rows.
Flowlity MCP Server lets authorized users inspect supply-chain sites, products, suppliers, orders, inventory, forecasts, promotions, capacity, alerts, imports, saved views, comments, and dashboard KPIs from Flowlity data through ChatGPT.
get_forecast_accuracy to classify a bad MAPE as explained (promo, one-off order, data issue) vs unexplained; - pair with get_order_alerts / get_stock_coverage for stockout post-mortems; - cross-reference manual-override comments (rationale + author + date) with forecast value added; - reconcile commented promos against list_promotions. Filter with product_site_id and/or order_id to focus on one product or order, and date_from / date_to (inclusive, YYYY-MM-DD) to pull comments from a given period. Set unread_only=True for unread comments only. Results are ordered most-recent-first so recency weights relevance. Notes: - Text is inconsistent, multilingual (FR/EN/SV) and jargon-heavy (GC = grand compte, S11 = week 11, 1037363 --> 1041355 = substitution). Cite the source comment; never silently auto-action. - Coverage is uneven — absence of a comment is not absence of a problem. Comments are scoped to the site through their product, so legacy order-only comments without a product link are not returned.get_forecast_accuracy to classify a bad MAPE as explained (promo, one-off order, data issue) vs unexplained; - pair with get_order_alerts / get_stock_coverage for stockout post-mortems; - cross-reference manual-override comments (rationale + author + date) with forecast value added; - reconcile commented promos against list_promotions. Filter with product_site_id and/or order_id to focus on one product or order, and date_from / date_to (inclusive, YYYY-MM-DD) to pull comments from a given period. Set unread_only=True for unread comments only. Results are ordered most-recent-first so recency weights relevance. Notes: - Text is inconsistent, multilingual (FR/EN/SV) and jargon-heavy (GC = grand compte, S11 = week 11, 1037363 --> 1041355 = substitution). Cite the source comment; never silently auto-action. - Coverage is uneven — absence of a comment is not absence of a problem. Comments are scoped to the site through their product, so legacy order-only comments without a product link are not returned.updated_date) ascending, so the latest run is at the bottom of each target-month block. Forecasts are sourced from the Flowlity ML output at the site's configured granularity — ml.demand_forecast_flowlity_day_aggregated, _week_aggregated, or _month_aggregated depending on config.site_global.forecast_granularity (daily / weekly / monthly, default weekly). Day and week buckets are aggregated into calendar months via date_trunc('month', target_date); a bucket whose start date straddles a month boundary is attributed to the month containing its start. Forecast runs that happen within the same calendar month as the target are excluded so partial-month sums don't appear as a sudden revision (matches the dbt accuracy convention). Dates must be in YYYY-MM-DD format. target_month_start and target_month_end are inclusive and bound the target months covered.updated_date) ascending, so the latest run is at the bottom of each target-month block. Forecasts are sourced from the Flowlity ML output at the site's configured granularity — ml.demand_forecast_flowlity_day_aggregated, _week_aggregated, or _month_aggregated depending on config.site_global.forecast_granularity (daily / weekly / monthly, default weekly). Day and week buckets are aggregated into calendar months via date_trunc('month', target_date); a bucket whose start date straddles a month boundary is attributed to the month containing its start. Forecast runs that happen within the same calendar month as the target are excluded so partial-month sums don't appear as a sudden revision (matches the dbt accuracy convention). Dates must be in YYYY-MM-DD format. target_month_start and target_month_end are inclusive and bound the target months covered.kpi values: demand_plan, inventory_level, supply_plan, stock_coverage, zero_stock_days. Units: demand_plan / inventory_level / supply_plan trends carry a quantity (default unit) and a value (EUR). stock_coverage is expressed in days of coverage (site average) — it has no value/currency dimension. zero_stock_days is a 0-1 rate shown as a percentage.kpi values: demand_plan, inventory_level, supply_plan, stock_coverage, zero_stock_days. Units: demand_plan / inventory_level / supply_plan trends carry a quantity (default unit) and a value (EUR). stock_coverage is expressed in days of coverage (site average) — it has no value/currency dimension. zero_stock_days is a 0-1 rate shown as a percentage.start_date and end_date (inclusive, YYYY-MM-DD). Actual Demand is summed from public.demand (typically populated for past months); Final Forecast and Flowlity Forecast are summed from public.final_forecast (typically populated for current/future months). Use a date range that spans the years you want to compare.start_date and end_date (inclusive, YYYY-MM-DD). Actual Demand is summed from public.demand (typically populated for past months); Final Forecast and Flowlity Forecast are summed from public.final_forecast (typically populated for current/future months). Use a date range that spans the years you want to compare.product_ids and/or tag_ids. For supplier-specific MOQ/lead time/price/lot size use get_product_supplier_constraints`.product_ids and/or tag_ids. For supplier-specific MOQ/lead time/price/lot size use get_product_supplier_constraints`.primary_supplier_only=False to list every supplier grouped by product x supplier. Filter with product_ids and/or tag_ids. For supplier-wide constraints (basket MOQ, full truck) use get_supplier_constraints; for product planning policy (coverage, min/max stock, shelf life) use get_product_constraints; for tag-based supply agreements use get_tag_constraints. When a row has a non-null Tag Family / Family MOQ, the line MOQ is enforced at the **tag-family scope** (sum over every product in the family >= Family MOQ) at sites where config.site_or.tag_family_moq is on. Audits like "MOQ vs forecast" should aggregate demand at the family level in that case, not per product. Use list_products(tag_ids=[<family_id>])` to enumerate the family.primary_supplier_only=False to list every supplier grouped by product x supplier. Filter with product_ids and/or tag_ids. For supplier-wide constraints (basket MOQ, full truck) use get_supplier_constraints; for product planning policy (coverage, min/max stock, shelf life) use get_product_constraints; for tag-based supply agreements use get_tag_constraints. When a row has a non-null Tag Family / Family MOQ, the line MOQ is enforced at the **tag-family scope** (sum over every product in the family >= Family MOQ) at sites where config.site_or.tag_family_moq is on. Audits like "MOQ vs forecast" should aggregate demand at the family level in that case, not per product. Use list_products(tag_ids=[<family_id>])` to enumerate the family.supplier_ids (partner_site IDs). For per-product MOQ/lead time/price/lot size use get_product_supplier_constraints`.supplier_ids (partner_site IDs). For per-product MOQ/lead time/price/lot size use get_product_supplier_constraints`.product_ids and/or tag_ids. Per-supplier MOQ/lead time/price lives in get_product_supplier_constraints; supplier-wide rules in get_supplier_constraints`.product_ids and/or tag_ids. Per-supplier MOQ/lead time/price lives in get_product_supplier_constraints; supplier-wide rules in get_supplier_constraints`.