It's hard to understand why such basic HTTP server functionality is "outside of the scope of Boost::Beast". In any case, the examples for Asio do include a request parser, see for example, https://think-async.com/Asio/asio-1.30.2/src/examples/cpp11/http/server/request_parser.cpp (there are multiple HTTP server versions).