OneSignal MCP Server
About
A Model Context Protocol (MCP) server for interacting with the OneSignal API
Details
- License
- MIT
Explore
- Multi-channel Messaging: Send push notifications, emails, SMS, and transactional messages
- User & Device Management: Complete CRUD operations for users, devices, and subscriptions
- Advanced Segmentation: Create and manage user segments with complex filters
- Template System: Create, update, and manage message templates
- iOS Live Activities: Full support for iOS Live Activities
- Analytics & Export: View outcomes data and export to CSV
- Multi-App Support: Manage multiple OneSignal applications seamlessly
- API Key Management: Create, update, rotate, and delete API keys
- Organization-level Operations: Manage apps across your entire organization
Setting up with Highlight
This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:
- Download and install Highlight from highlightai.com/download
- Navigate to the plugins tab and select "Add Custom Plugin"
-
Configure the plugin with the settings below
Plugin Name
OneSignal MCP ServerCommand (node, npx, python, etc.)Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.
- Enable "Start Automatically" if you want the plugin to start when Highlight launches
From the repository
- Python 3.7 or higher
- python-dotenv package
- requests package
- mcp package
- OneSignal account with API credentials
pip install -r requirements.txt
bashpip install onesignal-mcp
ONESIGNAL_AIBOOKCRAFT_APP_ID=aibookcraft_app_id
ONESIGNAL_AIBOOKCRAFT_API_KEY=aibookcraft_api_key
ONESIGNAL_WEIRDBRAINS_APP_ID=weirdbrains_app_id
ONESIGNAL_WEIRDBRAINS_API_KEY=weirdbrains_api_key
bashpython onesignal_server.py
```
The server will start and register itself with the MCP system, making all 57 tools available for use.
list_apps
List all configured OneSignal apps
add_app
Add a new OneSignal app configuration locally
update_local_app_config
Update an existing local app configuration
remove_app
Remove a local OneSignal app configuration
switch_app
Switch the current app to use for API requests
send_push_notification
Send a push notification
send_email
Send an email through OneSignal
send_sms
Send an SMS/MMS through OneSignal
send_transactional_message
Send immediate delivery messages
view_messages
View recent messages sent
view_message_details
Get detailed information about a message
view_message_history
View message history/recipients
cancel_message
Cancel a scheduled message
view_devices
View devices subscribed to your app
view_device_details
Get detailed information about a device
add_player
Add a new player/device
edit_player
Edit an existing player/device
delete_player
Delete a player/device record
edit_tags_with_external_user_id
Bulk edit tags by external ID
view_segments
List all segments
create_segment
Create a new segment
delete_segment
Delete a segment
view_templates
List all templates
view_template_details
Get template details
create_template
Create a new template
update_template
Update an existing template
delete_template
Delete a template
copy_template_to_app
Copy template to another app
view_app_details
Get details about configured app
view_apps
List all organization apps
create_app
Create a new OneSignal application
update_app
Update an existing application
view_app_api_keys
View API keys for an app
create_app_api_key
Create a new API key
delete_app_api_key
Delete an API key
update_app_api_key
Update an API key
rotate_app_api_key
Rotate an API key
create_user
Create a new user
view_user
View user details
update_user
Update user information
delete_user
Delete a user
view_user_identity
Get user identity information
view_user_identity_by_subscription
Get identity by subscription
create_or_update_alias
Create or update user alias
delete_alias
Delete a user alias
create_alias_by_subscription
Create alias by subscription ID
create_subscription
Create a new subscription
update_subscription
Update a subscription
delete_subscription
Delete a subscription
transfer_subscription
Transfer subscription between users
unsubscribe_email
Unsubscribe using email token
start_live_activity
Start iOS Live Activity
update_live_activity
Update iOS Live Activity
end_live_activity
End iOS Live Activity
view_outcomes
View outcomes/conversion data
export_players_csv
Export player data to CSV
export_messages_csv
Export messages to CSV
- list_apps - List all configured OneSignal apps
- add_app - Add a new OneSignal app configuration locally
- update_local_app_config - Update an existing local app configuration
- remove_app - Remove a local OneSignal app configuration
- switch_app - Switch the current app to use for API requests
- send_push_notification - Send a push notification
- send_email - Send an email through OneSignal
- send_sms - Send an SMS/MMS through OneSignal
- send_transactional_message - Send immediate delivery messages
- view_messages - View recent messages sent
- view_message_details - Get detailed information about a message
- view_message_history - View message history/recipients
- cancel_message - Cancel a scheduled message
- view_devices - View devices subscribed to your app
- view_device_details - Get detailed information about a device
- add_player - Add a new player/device
- edit_player - Edit an existing player/device
- delete_player - Delete a player/device record
- edit_tags_with_external_user_id - Bulk edit tags by external ID
- view_segments - List all segments
- create_segment - Create a new segment
- delete_segment - Delete a segment
- view_templates - List all templates
- view_template_details - Get template details
- create_template - Create a new template
- update_template - Update an existing template
- delete_template - Delete a template
- copy_template_to_app - Copy template to another app
- view_app_details - Get details about configured app
- view_apps - List all organization apps
- create_app - Create a new OneSignal application
- update_app - Update an existing application
- view_app_api_keys - View API keys for an app
- create_app_api_key - Create a new API key
- delete_app_api_key - Delete an API key
- update_app_api_key - Update an API key
- rotate_app_api_key - Rotate an API key
- create_user - Create a new user
- view_user - View user details
- update_user - Update user information
- delete_user - Delete a user
- view_user_identity - Get user identity information
- view_user_identity_by_subscription - Get identity by subscription
- create_or_update_alias - Create or update user alias
- delete_alias - Delete a user alias
- create_alias_by_subscription - Create alias by subscription ID
- create_subscription - Create a new subscription
- update_subscription - Update a subscription
- delete_subscription - Delete a subscription
- transfer_subscription - Transfer subscription between users
- unsubscribe_email - Unsubscribe using email token
- start_live_activity - Start iOS Live Activity
- update_live_activity - Update iOS Live Activity
- end_live_activity - End iOS Live Activity
- view_outcomes - View outcomes/conversion data
- export_players_csv - Export player data to CSV
- export_messages_csv - Export messages to CSV
Claude Desktop / Cursor
Paste into your MCP client config file to install this server.
{
"mcpServers": {
"onesignal mcp server": {
"onesignal-mcp": {
"command": "python",
"args": [
"onesignal_server.py"
]
}
}
}
}
McpServers
{
"onesignal-mcp": {
"command": "python",
"args": [
"onesignal_server.py"
]
}
}
A comprehensive Model Context Protocol (MCP) server for interacting with the OneSignal API. This server provides a complete interface for managing push notifications, emails, SMS, users, devices, segments, templates, analytics, and more through OneSignal's REST API.
Overview
This MCP server provides comprehensive access to the OneSignal REST API, offering 57 tools that cover all major OneSignal operations:
🚀 Key Features
- Multi-channel Messaging: Send push notifications, emails, SMS, and transactional messages
- User & Device Management: Complete CRUD operations for users, devices, and subscriptions
- Advanced Segmentation: Create and manage user segments with complex filters
- Template System: Create, update, and manage message templates
- iOS Live Activities: Full support for iOS Live Activities
- Analytics & Export: View outcomes data and export to CSV
- Multi-App Support: Manage multiple OneSignal applications seamlessly
- API Key Management: Create, update, rotate, and delete API keys
- Organization-level Operations: Manage apps across your entire organization
Requirements
- Python 3.7 or higher
- python-dotenv package
- requests package
- mcp package
- OneSignal account with API credentials
Installation
Option 1: Clone from GitHub
```bash
Sign in to leave a review
Use Google, GitHub, or an email account so ratings stay tied to real people.
No reviews posted yet.



