is it possible to pass the message from sp_add_alert to the job?
This article gives the answer. Basically the message is accessible by using SQL Server Agent Tokens and Macros.

In particular this Job Step that is calling a stored procedure worked for me nicely:

exec ProcessMyAlert '$(ESCAPE_SQUOTE(A-MSG))'


Note that I had to


  right-click SQL Server Agent in Object Explorer, select Properties,
  and on the Alert System page, select Replace tokens for all job
  responses to alerts to enable these tokens.


As per the linked article. In addition I had to restart SQL Server Agent so that this setting come into effect - it did not work until I restarted it, the article does not mention the restart however.