OneSignal MCP Server

by WeirdBrains

3 276 downloads Not rated yet MIT
GitHub

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:

  1. Download and install Highlight from highlightai.com/download
  2. Navigate to the plugins tab and select "Add Custom Plugin"
  3. Configure the plugin with the settings below
    Plugin Name OneSignal MCP Server
    Command (node, npx, python, etc.)

    Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.

  4. 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


bash
pip 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

bash
python 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.

License: MIT
Version
Tools

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

No reviews yet — be the first

Sign in to leave a review

Use Google, GitHub, or an email account so ratings stay tied to real people.

Email sign in

No reviews posted yet.