uWSGI использует протокол uwsgi (который как-то связан с интерфейсом WSGI, но я не уверен, как), в то время как FastCGI и fgcid используют протокол FastCGI .
Традиционный «CGI» вообще не имел большой части протокола - сервер просто порождал (fork + exec) сценарий CGI с заголовками HTTP-запроса в переменных среды (например, $ HTTP_REFERER), и сценарий печатал бы необработанный HTTP-ответ на стандартный вывод