Token导航 LogoToken导航

MCP Server · 数据服务

OneSignal MCP

OneSignal MCP服务器是一个全面的多通道消息推送平台,提供推送通知、电子邮件、短信发送、用户设备管理及高级分析功能。

stdio官方级别未说明来源级核验工具 57
API集成Python数据分析

快速开始

作者 / 组织
WeirdBrains
提供方
WeirdBrains
运行时
Python

工具数量

57

来源目录标注

资源数量

0

来源目录标注

提示词数量

0

来源目录标注

GitHub Star

3

仓库热度

收录来源

4 个

MCP World

选型结论

OneSignal MCP 属于数据服务类 MCP Server,公开资料标注 57 个工具,通过stdio 本地进程接入,客户端适配情况以官方文档为准,有可以直接复制的安装命令;接入前要先准备 API Key。

分类

数据服务

传输方式

stdio

认证方式

API Key

部署方式

支持远程部署

安装与配置

安装命令

pip install -r requirements.txt

公开命令不是通用的启动方式,拼不出可靠配置示例;请在客户端 MCP 配置里按官方文档填写 command 和 args。

上手步骤

  1. 1

    准备运行环境

    stdio 服务在本地起进程,需要先装好 Python,再按安装命令拉取依赖。

  2. 2

    安装服务

    复制下面的安装命令执行;命令里带占位符的位置换成自己的密钥或路径。

  3. 3

    写入客户端配置

    在客户端的 MCP 配置里填启动命令和参数,保存后完全退出客户端再打开,让新配置生效。

  4. 4

    验证是否可用

    连接成功后客户端会列出 57 个工具,随便调一个只读工具确认能返回结果。

接入前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

详细介绍

OneSignal MCP服务器

用于与OneSignal API交互的综合模型上下文协议(MCP)服务器。该服务器提供了一个完整的界面,用于通过OneSignal的REST API管理推送通知、电子邮件、SMS、用户、设备、细分市场、模板、分析等。

概述

此MCP服务器提供对 OneSignal REST API,提供 57工具 涵盖所有主要的OneSignal操作:

🚀 主要特点

  • 多通道消息传递:发送推送通知、电子邮件、短信和事务消息
  • 用户和设备管理:完成用户、设备和订阅的CRUD操作
  • 高级细分:使用复杂的过滤器创建和管理用户细分
  • 模板系统:创建、更新和管理邮件模板
  • iOS直播活动:完全支持iOS直播活动
  • 分析和导出:查看结果数据并导出到CSV
  • 多应用支持:无缝管理多个OneSignal应用程序
  • API密钥管理:创建、更新、旋转和删除API密钥
  • 组织级运营:管理整个组织中的应用程序

需求

  • Python 3.7或更高版本
  • python-dotenv 包裹
  • requests 包裹
  • mcp 包裹
  • 具有API证书的OneSignal帐户

安装

选项1:从GitHub克隆

# Clone the repository
git clone https://github.com/weirdbrains/onesignal-mcp.git
cd onesignal-mcp

# Install dependencies
pip install -r requirements.txt

选项2:打包安装(即将推出)

pip install onesignal-mcp

配置

  1. 创建 .env 根目录中的文件,其中包含您的OneSignal凭据:
   # Default app credentials (optional, you can also add apps via the API)
   ONESIGNAL_APP_ID=your_app_id_here
   ONESIGNAL_API_KEY=your_rest_api_key_here

   # Organization API key (for org-level operations)
   ONESIGNAL_ORG_API_KEY=your_organization_api_key_here

   # Optional: Multiple app configurations
   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

   # Logging level (DEBUG, INFO, WARNING, ERROR, CRITICAL)
   LOG_LEVEL=INFO
  1. 查找您的OneSignal凭据:

- 应用程序ID:设置>按键和ID>OneSignal应用程序ID - REST API密钥:设置>密钥和ID>REST API密钥 - 组织API密钥:组织设置>API密钥

用法

运行服务器

python onesignal_server.py

服务器将启动并向MCP系统注册,使所有57个工具可供使用。

完整工具参考(57个工具)

📱 应用程序管理(5个工具)

  • list_apps -列出所有已配置的OneSignal应用程序
  • add_app -在本地添加新的OneSignal应用程序配置
  • update_local_app_config -更新现有的本地应用程序配置
  • remove_app -删除本地OneSignal应用程序配置
  • switch_app -将当前应用程序切换为用于API请求

📨 消息传递(8个工具)

  • send_push_notification -发送推送通知
  • send_email -通过OneSignal发送电子邮件
  • send_sms -通过OneSignal发送短信/彩信
  • send_transactional_message -发送即时送达消息
  • view_messages -查看最近发送的消息
  • view_message_details -获取有关邮件的详细信息
  • view_message_history -查看邮件历史记录/收件人
  • cancel_message -取消已安排的消息

📱 设备/播放器(6个工具)

  • view_devices -查看订阅您应用程序的设备
  • view_device_details -获取设备的详细信息
  • add_player -添加新玩家/设备
  • edit_player -编辑现有播放器/设备
  • delete_player -删除玩家/设备记录
  • edit_tags_with_external_user_id -按外部ID批量编辑标签

🎯 分段(3个工具)

  • view_segments -列出所有分段
  • create_segment -创建新分段
  • delete_segment -删除分段

📄 模板(6个工具)

  • view_templates -列出所有模板
  • view_template_details -获取模板详细信息
  • create_template -创建新模板
  • update_template -更新现有模板
  • delete_template -删除模板
  • copy_template_to_app -将模板复制到另一个应用程序

🏢 应用程序(6个工具)

  • view_app_details -获取已配置应用程序的详细信息
  • view_apps -列出所有组织应用程序
  • create_app -创建新的OneSignal应用程序
  • update_app -更新现有应用程序
  • view_app_api_keys -查看应用程序的API密钥
  • create_app_api_key -创建新的API密钥

🔑 API密钥管理(3个工具)

  • delete_app_api_key -删除API密钥
  • update_app_api_key -更新API密钥
  • rotate_app_api_key -旋转API键

👤 用户(6工具)

  • create_user -创建新用户
  • view_user -查看用户详细信息
  • update_user -更新用户信息
  • delete_user -删除用户
  • view_user_identity -获取用户身份信息
  • view_user_identity_by_subscription -通过订阅获取身份

🏷️ 别名(3个工具)

  • create_or_update_alias -创建或更新用户别名
  • delete_alias -删除用户别名
  • create_alias_by_subscription -按订阅ID创建别名

📬 订阅(5个工具)

  • create_subscription -创建新订阅
  • update_subscription -更新订阅
  • delete_subscription -删除订阅
  • transfer_subscription -在用户之间转移订阅
  • unsubscribe_email -使用电子邮件令牌取消订阅

🎯 现场活动(3个工具)

  • start_live_activity -启动iOS实时活动
  • update_live_activity -更新iOS实时活动
  • end_live_activity -结束iOS实时活动

📊 分析和导出(3个工具)

  • view_outcomes -查看结果/转换数据
  • export_players_csv -将玩家数据导出到CSV
  • export_messages_csv -将邮件导出到CSV

用法示例

多通道消息传递

# Send a push notification
await send_push_notification(
    title="Hello World",
    message="This is a test notification",
    segments=["Subscribed Users"]
)

# Send an email
await send_email(
    subject="Welcome!",
    body="Thank you for joining us",
    email_body="
Welcome!
",
    include_emails=["user@example.com"]
)

# Send an SMS
await send_sms(
    message="Your verification code is 12345",
    phone_numbers=["+15551234567"]
)

# Send a transactional message
await send_transactional_message(
    channel="email",
    content={"subject": "Order Confirmation", "body": "Your order has been confirmed"},
    recipients={"include_external_user_ids": ["user123"]}
)

用户和设备管理

# Create a user
user = await create_user(
    name="John Doe",
    email="john@example.com",
    external_id="user123",
    tags={"plan": "premium", "joined": "2024-01-01"}
)

# Add a device
device = await add_player(
    device_type=1,  # Android
    identifier="device_token_here",
    language="en",
    tags={"app_version": "1.0.0"}
)

# Update user tags across all devices
await edit_tags_with_external_user_id(
    external_user_id="user123",
    tags={"last_active": "2024-01-15", "purchases": "5"}
)

iOS直播活动

# Start a Live Activity
await start_live_activity(
    activity_id="delivery_123",
    push_token="live_activity_push_token",
    subscription_id="user_subscription_id",
    activity_attributes={"order_number": "12345"},
    content_state={"status": "preparing", "eta": "15 mins"}
)

# Update the Live Activity
await update_live_activity(
    activity_id="delivery_123",
    name="delivery_update",
    event="update",
    content_state={"status": "on_the_way", "eta": "5 mins"}
)

分析和导出

# View conversion outcomes
outcomes = await view_outcomes(
    outcome_names=["purchase", "session_duration"],
    outcome_time_range="7d",
    outcome_platforms=["ios", "android"]
)

# Export player data
export = await export_players_csv(
    start_date="2024-01-01T00:00:00Z",
    end_date="2024-01-31T23:59:59Z",
    segment_names=["Active Users"]
)

测试

服务器包括一个全面的测试套件。要运行测试,请执行以下操作:

# Run the test script
python test_onesignal_mcp.py

# Or use unittest
python -m unittest discover tests

错误处理

服务器提供一致的错误处理:

  • 所有错误均以标准格式返回
  • 详细的错误消息有助于识别问题
  • 瞬态故障的自动重试逻辑
  • 正确的身份验证错误消息

速率限制

OneSignal对API请求强制执行速率限制:

  • 标准限制:每秒10个请求
  • 批量操作:可能有较低的限制
  • 服务器包括关于处理速率限制的指导

贡献

我们欢迎捐款!请看 贡献.md 作为指导方针。

许可证

此项目根据MIT许可证获得许可-请参阅 许可证 文件以获取详细信息。

致谢

  • OneSignal 感谢他们出色的通知服务
  • 模型上下文协议的MCP社区
  • 此项目的所有贡献者

工具与能力

工具数量

57

资源数量

0

提示词数量

0

能力标签

消息推送Python本地部署用户管理多通道通信数据分析API集成

数量来自来源目录的标注,具体工具清单以官方文档为准。

典型使用场景

用自然语言查库

不用手写 SQL,直接问数据,让模型组织查询语句。

数据巡检

定期拉指标、做对比,把异常项整理成一段说明。

打通业务数据

把数据库、数仓和接口接进同一个上下文,减少导出再上传。

选择建议

值得选的地方

  • 工具数量 57 个,一次接入能覆盖的操作比单点工具更全。
  • 有现成的安装命令,不用自己找入口,照着跑就能起服务。
  • 4 个目录同时收录,信息可以交叉核对。

先想清楚的地方

  • stdio 方式要求本地装好 Python,换机器要重新装一遍。
  • 需要自备API Key,没有凭据没法直接试。
  • 第三方目录整理,版本更新和行为细节以官方仓库为准。

更适合

  • 需要在数据服务场景里让模型直接调用外部能力的人。
  • 想先快速试一下、能接受在本地跑服务的人。

不太适合

  • 完全不想在本地装环境的人。
  • 暂时拿不到API Key的人。
  • 需要厂商级 SLA 和技术支持的生产环境。

同类对比

5 个同类
MCP Server工具数传输方式安装命令收录来源最后核验
OneSignal MCP

MCP World · 本页

57stdio有4 个2026-05-17
Memory 9d25f64e

MCP World

9未说明未标注1 个2026-05-17
Prisma MCP Server

MCP World

0stdio有3 个2026-05-17
Astr Bot

MCP World

0stdio有1 个2026-05-17
Getzep MCP

MCP World

9stdio有1 个2026-05-17

按同分类和工具数量挑出最接近的几条,字段以各自详情页为准。

常见问题

5 条

OneSignal MCP 怎么安装?

公开资料给出的安装命令是 pip install -r requirements.txt,运行环境为 Python。装完后按客户端要求写进 MCP 配置,重启客户端生效。

OneSignal MCP 怎么在 Claude Desktop、Cursor 里配置?

它是stdio 本地进程,客户端配置里要写启动命令和参数,运行环境是 Python;保存后完全退出客户端再打开,配置才会生效。

OneSignal MCP 收费吗?

本站只整理公开资料,不代收费用,也没有标注具体价格。是否收费取决于服务本身和背后的接口额度,正式使用前按官方说明确认。

OneSignal MCP 需要 API Key 吗?

公开资料标注的认证方式是API Key,也就是要先拿到凭据才能连上;凭据只填在自己本地的配置里,不要写进公开仓库。

OneSignal MCP 支持哪些客户端?

公开资料没有标注具体客户端;能配置本地 MCP 命令的客户端都能接,配置方式参照官方文档。

来源信息

继续浏览同类 MCP