SELECT 
  cfp.category_filter_id, 
  cfp.product_id, 
  cfp.value, 
  cfp.value_min, 
  cfp.value_max, 
  cfp.options, 
  cf.category_id, 
  cf.type, 
  cf.options as filter_options, 
  cfd.title, 
  cfd.lang_code 
FROM 
  cscart_category_filter_products AS cfp 
  LEFT JOIN cscart_category_filters AS cf ON cf.category_filter_id = cfp.category_filter_id 
  LEFT JOIN cscart_category_filter_descriptions AS cfd ON cfd.category_filter_id = cf.category_filter_id 
  AND cfd.lang_code = 'en' 
WHERE 
  1 
  AND cfp.product_id IN (1366) 
ORDER BY 
  cfp.category_filter_id ASC

Query time 0.00157

JSON explain

{
  "query_block": {
    "select_id": 1,
    "read_sorted_file": {
      "filesort": {
        "sort_key": "cfp.category_filter_id",
        "table": {
          "table_name": "cfp",
          "access_type": "ALL",
          "rows": 5774,
          "filtered": 100,
          "attached_condition": "cfp.product_id = 1366"
        }
      }
    },
    "table": {
      "table_name": "cf",
      "access_type": "ref",
      "possible_keys": ["PRIMARY"],
      "key": "PRIMARY",
      "key_length": "4",
      "used_key_parts": ["category_filter_id"],
      "ref": ["dev.cfp.category_filter_id"],
      "rows": 1,
      "filtered": 100
    },
    "table": {
      "table_name": "cfd",
      "access_type": "eq_ref",
      "possible_keys": ["PRIMARY"],
      "key": "PRIMARY",
      "key_length": "10",
      "used_key_parts": ["category_filter_id", "lang_code"],
      "ref": ["dev.cf.category_filter_id", "const"],
      "rows": 1,
      "filtered": 100,
      "attached_condition": "trigcond(cfd.lang_code = 'en' and trigcond(cf.category_filter_id is not null))"
    }
  }
}

Result

category_filter_id product_id value value_min value_max options category_id type filter_options title lang_code
106 1366 659 659.0000000000 659.0000000000 [] 111 select_set {"type":"list","values_set":"14"} Server en