Pusher Channels について
Pusher Channelsは、AIエージェントをPusher Channelsのリアルタイムメッセージングに接続するMCPサーバーです。単一または一括のイベント送信、チャンネルや接続ユーザーの確認、プライベート/プレゼンスチャンネルの認証トークン発行に対応します。
主な機能
- 011つ以上のチャンネルへのイベント送信
- 02イベントの一括送信
- 03チャンネル一覧と詳細の取得
- 04プレゼンスチャンネルのユーザー確認
- 05チャンネル認証トークンの生成
- 06ユーザー接続の終了
活用シーン
- 01通知チャンネルへのデプロイイベント送信
- 02アクティブなプレゼンスチャンネルの確認
- 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 Server
AI エージェントが Pusher Channels を通じて、リアルタイムメッセージの送信、チャンネルの照会、ユーザーの管理を行えるようにする MCP(Model Context Protocol) サーバーです。
ツール
| ツール | 説明 |
|---|---|
trigger_event | 1 つ以上のチャンネルにイベントを送信します |
trigger_batch_events | 1 回の API 呼び出しで最大 10 件のイベントを送信します |
list_channels | オプションのプレフィックスフィルターを指定して、アクティブなチャンネルを一覧表示します |
get_channel_info | チャンネルの購読者数/ユーザー数を取得します |
get_presence_users | プレゼンスチャンネルに接続しているユーザーを一覧表示します |
authorize_channel | プライベート/プレゼンスチャンネル用の認証トークンを生成します |
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 ダッシュボードから 4 つの環境変数を取得する必要があります。
| 変数 | 説明 |
|---|---|
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
実行前にシェルで環境変数を設定するか、Claude Code の MCP 設定で構成してください。
プロンプトの例
設定が完了したら、Claude に次のようなことを依頼できます。
- 「notifications チャンネルに、メッセージ 'v2.1.0 deployed' を含む 'deploy-complete' イベントを送信して」
- 「アクティブなプレゼンスチャンネルをすべて表示して」
- 「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 サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。