MPush is a client library, written in Swift, that can be used to interact with the MPush API. The minimum deployment target for the library is iOS 11.0.
MPush uses a classic Pub/Sub pattern, you will register your device to topics, then from the MPush APIs you will be able to send notifications to those topics and all device registered will receive a notification.
A topic can represent whatever you want in your system (e.g. the entire app, a user a subset of user with a common characteristic) so you will be able to choose the granularity of the notifications.