Agent communication languages (ACLs) invoke speech act theory and define individual message types by reference to particular combinations of beliefs and desires of the speaker (feasibility preconditions). Even when the mental states are restricted to a small set of nested beliefs, it seems that there might be a very large number of different possible preconditions, and therefore a very large number of different message types. With some constraints on the mental attitude of the speaker, we enumerate the possible belief states that could serve as preconditions for individual message types, and we identify how these states correspond to different possible message types. We then compare these with FIPA’s primitive message types. Our approach clarifies the nature of core message types in an ACL, and perhaps settles issues concerning just how many, and what types of, speech acts should be seen as primitive in such languages.