A system comprising: a memory comprising instructions; and one or more computer processors, wherein the instructions, when executed by the one or more computer processors, cause the one or more computer processors to perform operations comprising: getting one or more messages from one or more message sources, the one or more messages being addressed to a user, each message comprising message data that includes text; analyzing the message data to determine a meaning of each message; generating a score for each message based on the respective message data and the meaning of the message; generating a textual summary for the one or more messages based on the message scores and the meaning of the messages; creating a speech summary based on the textual summary; and sending the speech summary to a speaker associated with the user wherein generating the score further includes: for each message, identifying an attribute value for each of a plurality of attributes based on the message data; for each attribute, generating an attribute score based on the attribute values; and generating the score for each message based on the attribute scores of the message; wherein a first attribute is detecting in the text of the message a request for an action to be performed by the user; wherein a fourth attribute is detecting urgency in the message, the urgency being detected based on words in the text of the message. a memory comprising instructions; and one or more computer processors, wherein the instructions, when executed by the one or more computer processors, cause the one or more computer processors to perform operations comprising: getting one or more messages from one or more message sources, the one or more messages being addressed to a user, each message comprising message data that includes text; analyzing the message data to determine a meaning of each message; generating a score for each message based on the respective message data and the meaning of the message; generating a textual summary for the one or more messages based on the message scores and the meaning of the messages; creating a speech summary based on the textual summary; and sending the speech summary to a speaker associated with the user getting one or more messages from one or more message sources, the one or more messages being addressed to a user, each message comprising message data that includes text; analyzing the message data to determine a meaning of each message; generating a score for each message based on the respective message data and the meaning of the message; generating a textual summary for the one or more messages based on the message scores and the meaning of the messages; creating a speech summary based on the textual summary; and sending the speech summary to a speaker associated with the user wherein generating the score further includes: for each message, identifying an attribute value for each of a plurality of attributes based on the message data; for each attribute, generating an attribute score based on the attribute values; and generating the score for each message based on the attribute scores of the message; wherein a first attribute is detecting in the text of the message a request for an action to be performed by the user; for each message, identifying an attribute value for each of a plurality of attributes based on the message data; for each attribute, generating an attribute score based on the attribute values; and generating the score for each message based on the attribute scores of the message; wherein a first attribute is detecting in the text of the message a request for an action to be performed by the user; generating the score for each message based on the attribute scores of the message; wherein a first attribute is detecting in the text of the message a request for an action to be performed by the user; wherein a fourth attribute is detecting urgency in the message, the urgency being detected based on words in the text of the message.