SELECT 
  cscart_products_categories.product_id, 
  GROUP_CONCAT(
    IF(
      cscart_products_categories.link_type = "M", 
      CONCAT(
        cscart_products_categories.category_id, 
        "M"
      ), 
      cscart_products_categories.category_id
    )
  ) AS category_ids 
FROM 
  cscart_products_categories 
  INNER JOIN cscart_categories ON cscart_categories.category_id = cscart_products_categories.category_id 
  AND cscart_categories.storefront_id IN (0, 1) 
  AND (
    cscart_categories.usergroup_ids = '' 
    OR FIND_IN_SET(
      0, cscart_categories.usergroup_ids
    ) 
    OR FIND_IN_SET(
      1, cscart_categories.usergroup_ids
    )
  ) 
  AND cscart_categories.status IN ('A', 'H') 
WHERE 
  cscart_products_categories.product_id IN (
    2459, 284, 328, 138, 144, 107, 2507, 1140, 
    136, 141, 285, 1219, 120, 185, 2509, 
    142, 140, 927, 134, 630, 137, 2508, 310, 
    287, 294, 133, 1488, 2495, 143, 329, 
    187, 186
  ) 
GROUP BY 
  cscart_products_categories.product_id

Query time 0.00117

JSON explain

{
  "query_block": {
    "select_id": 1,
    "table": {
      "table_name": "cscart_products_categories",
      "access_type": "range",
      "possible_keys": ["PRIMARY", "pt"],
      "key": "pt",
      "key_length": "3",
      "used_key_parts": ["product_id"],
      "rows": 44,
      "filtered": 100,
      "index_condition": "cscart_products_categories.product_id in (2459,284,328,138,144,107,2507,1140,136,141,285,1219,120,185,2509,142,140,927,134,630,137,2508,310,287,294,133,1488,2495,143,329,187,186)"
    },
    "table": {
      "table_name": "cscart_categories",
      "access_type": "eq_ref",
      "possible_keys": ["PRIMARY", "c_status", "p_category_id"],
      "key": "PRIMARY",
      "key_length": "3",
      "used_key_parts": ["category_id"],
      "ref": ["dev.cscart_products_categories.category_id"],
      "rows": 1,
      "filtered": 100,
      "attached_condition": "cscart_categories.storefront_id in (0,1) and (cscart_categories.usergroup_ids = '' or find_in_set(0,cscart_categories.usergroup_ids) or find_in_set(1,cscart_categories.usergroup_ids)) and cscart_categories.`status` in ('A','H')"
    }
  }
}

Result

product_id category_ids
107 45M
120 38M
133 116M
134 116M
136 117M
137 118M
138 114M
140 47M
141 116M
142 117M
143 118M
144 116M
185 114M
186 114M
187 114M
284 44M
285 44M
287 45M
294 36M
310 88M
328 35M
329 35M
630 44M
927 136M
1140 70M
1219 55M
1488 44M
2459 44M
2495 58M
2507 46M
2508 46M
2509 44M