Yes, it is an SMTP server, but it is serving a particular role (eg, internal incoming, relay, external incoming).
I’m not so familiar with the specifics of Gmail configuration. And this sounds like you are asking about a half-configured set-up. But let’s try to guess the process anyway.
Before Google knows about Bob’s domain, it will reject email to it. Once it knows, because configuration has started, it will possibly accept and store that email to forward in the future. During configuration of such MX intermediaries, you sometimes can configure things as “accept email ONLY for these named addresses” or “accept all email, and use this box name as a catchall”. Then there’s the not recommended in the age of spammers configuration of “accept all email, bounce at a later date when Bob’s server refuses some of those addresses”. (That last one is the source of “backscatter” spam.)
Because it has been configured to allow relaying to that domain.
The first mail server Alice uses probably checks username and password on connection.
The relay server that uses probably strictly checks IP address of first mail server.
The MX server the relay server connects to checks recipient strictly, only allowing “local” and known relayed domains.
When that MX server is relaying, it will locally queue and attempt delivery to the relay endpoint.
Typically you use a relay MX server like that because you want someone else to maintain a high quality reliable endpoint for you, either as a main delivery point or as a backup if you go off-line. The Gmail case sounds like a main delivery point scenario.