关于 Pusher Channels
Pusher Channels 是连接 Pusher Channels 实时消息服务的 MCP 服务,面向需要管理频道和用户的 AI Agent。它可触发单个或批量事件、查询活跃频道及在线用户,并生成私有或 presence 频道的授权令牌。
主要功能
- 01向一个或多个频道发送事件
- 02单次调用批量发送事件
- 03列出频道并查询频道信息
- 04查看 presence 频道用户
- 05生成频道授权令牌
- 06终止用户连接
适用场景
- 01向通知频道发送部署事件
- 02查看活跃的 presence 频道
- 03查询频道订阅数或在线用户
- 04断开指定用户的所有连接
MCP 相关
该 MCP 服务向客户端提供 Pusher Channels 事件触发、频道查询、用户管理和频道授权工具。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
npx -y @crashbytes/pusher-mcp-serverPUSHER_APP_IDYour Pusher application IDPUSHER_KEY密钥Your Pusher application keyPUSHER_SECRET密钥Your Pusher application secretPUSHER_CLUSTERPusher cluster region (e.g. us2, eu, ap1)本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。
工具
7收录的工具列表 · 更新于 2 周前
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| data | any | 是 | 事件负载——字符串或 JSON 对象(最大 10 KB) |
| event | string | 是 | 要触发的事件名称(例如 'new-message'、'update') |
| channel | any | 是 | 频道名称或频道名称数组(最多 100 个) |
| socketId | string | 否 | 可选的 socket ID,不向其发送事件(防止回显) |
详细介绍
Pusher Channels MCP 服务
这是一个 MCP(Model Context Protocol) 服务,可让 AI Agent 通过 Pusher Channels发送实时消息、查询频道并管理用户。
工具
| 工具 | 描述 |
|---|---|
trigger_event | 向一个或多个频道发送事件 |
trigger_batch_events | 在一次 API 调用中最多发送 10 个事件 |
list_channels | 列出活跃频道,可选择按前缀筛选 |
get_channel_info | 获取频道的订阅数/用户数 |
get_presence_users | 列出已连接到 presence 频道的用户 |
authorize_channel | 为 private/presence 频道生成身份验证令牌 |
terminate_user_connections | 断开某个用户的所有连接 |
前置条件
- Node.js 18 或更高版本
- 一个 Pusher Channels 账户(提供免费套餐)
安装
npm install -g @crashbytes/pusher-mcp-server
或者克隆并从源代码构建:
git clone https://github.com/CrashBytes/pusher-mcp-server.git
cd pusher-mcp-server
npm install
npm run build
配置
你需要从 Pusher 控制面板获取以下四个环境变量:
| 变量 | 描述 |
|---|---|
PUSHER_APP_ID | 你的 Pusher 应用 ID |
PUSHER_KEY | 你的 Pusher 应用密钥 |
PUSHER_SECRET | 你的 Pusher 应用密钥 |
PUSHER_CLUSTER | 你的 Pusher 集群(例如 us2、eu、ap1) |
在 Claude Desktop 中使用
将以下内容添加到 Claude Desktop 配置文件中:
macOS:~/Library/Application Support/Claude/claude_desktop_config.json
Windows:%APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"pusher": {
"command": "node",
"args": ["/path/to/pusher-mcp-server/build/index.js"],
"env": {
"PUSHER_APP_ID": "your_app_id",
"PUSHER_KEY": "your_app_key",
"PUSHER_SECRET": "your_app_secret",
"PUSHER_CLUSTER": "us2"
}
}
}
}
如果通过 npm 全局安装:
{
"mcpServers": {
"pusher": {
"command": "pusher-mcp-server",
"env": {
"PUSHER_APP_ID": "your_app_id",
"PUSHER_KEY": "your_app_key",
"PUSHER_SECRET": "your_app_secret",
"PUSHER_CLUSTER": "us2"
}
}
}
}
在 Claude Code 中使用
claude mcp add pusher -- node /path/to/pusher-mcp-server/build/index.js
运行前,请在 shell 中设置环境变量,或在 Claude Code 的 MCP 设置中进行配置。
提示词示例
配置完成后,你可以向 Claude 提出以下请求:
- “向 notifications 频道发送一个 'deploy-complete' 事件,消息内容为 'v2.1.0 deployed'”
- “显示所有活跃的 presence 频道”
- “presence-lobby 频道中有多少用户?”
- “断开用户 abc123 在所有频道中的连接”
开发
npm install
npm run dev # Run with tsx (hot reload)
npm run build # Compile TypeScript
npm run type-check # Check types without emitting
教程
如需了解从头构建此服务的分步指南,请参阅 CrashBytes 上的完整教程。
许可证
MIT
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。