PubNub Model Context Protocol (MCP) Server for Cursor IDE について
PubNub MCP Server は、PubNub SDK のドキュメントと API リソースを LLM 搭載ツールに提供するホスト型 MCP サーバーです。PubNub でリアルタイムアプリを開発する開発者を対象とし、HTTP トランスポートと OAuth 認証を使用します。
主な機能
- 01多数のプログラミング言語に対応した SDK ドキュメント
- 02アプリと keyset の管理
- 03リアルタイムメッセージの送信と購読
- 04ユーザー、チャンネル、メンバーシップの管理
- 05Presence の照会と使用量の監視
活用シーン
- 01Cursor や Claude Code からの PubNub SDK の利用方法の確認
- 02AI アシスタントによる PubNub アプリと keyset の作成や設定
- 03チャンネルメッセージと Presence 状態のデバッグ
MCP 対応
本プロジェクトは MCP サーバーであり、ホスト型 HTTP エンドポイントまたはローカルの npx パッケージとして提供され、ドキュメント、アプリ管理、メッセージング、分析のツールとリソースを MCP クライアントに公開します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
PubNub MCP サーバー
ホスト型の Model Context Protocol(MCP)サーバーです。PubNub SDK ドキュメントと PubNub API リソースを LLM 搭載ツールに提供します。これにより、LLM AI エージェントが PubNub の SDK や API を理解し、活用する能力が向上します。OAuth 認証を使用した HTTP トランスポートを使用します。

機能
- 📚 包括的な SDK ドキュメント - JavaScript、Python、Java、Swift、Kotlin、C#、Ruby、Go など、20 以上のプログラミング言語を対象とした詳細なドキュメント、コード例、実装ガイドにアクセスできます
- 🏗️ アプリケーションとキーセットの管理 - メッセージの永続化、ファイル共有、プレゼンスの追跡、アプリコンテキストなどの機能を備えた PubNub アプリケーションとキーセットを作成、設定、管理できます
- 💬 リアルタイム通信 - メッセージと軽量シグナルの両方に対応し、チャネル間でのメッセージの送受信、ライブチャットや通知の実装、リアルタイム更新を行えます
- 👥 ユーザーとチャネルの管理 - コミュニティ機能やソーシャル機能の構築に必要な CRUD 操作をすべて備え、ユーザープロファイル、チャネルメタデータ、メンバーシップの関係を管理できます。さらに、PubNub Admin Portal でユーザープロファイル、チャネル、メンバーシップを表示・管理するオプションもあります(この機能には Manage Premium が必要です)。
- 📍 プレゼンスとアクティビティの追跡 - リアルタイムのユーザープレゼンスを監視し、チャネル内でオンラインのユーザーを確認して、アプリケーション全体でユーザーのアクティビティを追跡できます
- 📊 リアルタイムの意思決定と分析 - 適切なタイミングで適切なアクションを実行し、その効果を測定して、状況の変化に応じて調整できます。すべてリアルタイムで行えます。Illuminate が必要です。
- 📈 チャネル、ユーザー、メッセージの分析 - 人気のチャネルや国別の内訳から、新規ユーザーとリピーターの割合、デバイスの分布まで、アプリのアクティビティを集計したデータから傾向を把握し、エンゲージメント、利用状況、パフォーマンスを理解できます。さらに、Manage Premium がなくても PubNub Admin Portal で一部の指標を表示できます。すべての分析機能を利用するには Manage Premium が必要です。
- 🔍 使用状況と監視 — アプリとキーセット全体の課金対象となる使用状況を追跡し、現在および過去の使用量を確認して、レポートをエクスポートすることでコストの要因を把握できます。
- 🔧 マルチプラットフォーム連携 - Cursor、Visual Studio Code、Claude Code、その他の MCP 対応 AI アシスタントで動作します
- ⚡ 開発者体験 - 型安全性を備えた TypeScript で構築され、テスト基盤も含まれています
クイックスタート
ホスト型サーバーは PubNub が管理しており、最も簡単に利用を開始できます。インストールは不要で、OAuth による認証も自動的に処理されます。お使いの AI ツールがリモート MCP サーバーに対応していない場合は、代わりにローカルインストール版(npx @pubnub/mcp@latest)を使用してください。
注: ホスト型サーバー(https://mcp.pubnub.com)に切り替えるには、まず AI クライアントから古いローカル設定を削除してから、以下のセットアップ手順に従ってください。
ホスト型 PubNub MCP サーバー
AI アシスタントを https://mcp.pubnub.com に接続します。インストールは不要で、OAuth による認証も自動的に処理されます。
VS Code
上のボタンをクリックし、Open in Visual Studio Code を選択します。VS Code に戻ったら、Install をクリックし、認証する組織を選んで Allow access をクリックします。
または、以下を VS Code の settings.json に手動で追加します。
{
"mcp": {
"servers": {
"pubnub": {
"url": "https://mcp.pubnub.com"
}
}
}
}
Cursor
上のボタンをクリックし、Open Cursor を選択します。Cursor で Install をクリックし、認可する組織を選択して、Allow access をクリックします。Cursor の「Settings」→ Tools & MCP に移動し、PubNub が有効になっていることを確認します。
または、次の内容を .cursor/mcp.json(グローバル設定の場合は ~/.cursor/mcp.json)に手動で追加します。
{
"mcpServers": {
"pubnub": {
"url": "https://mcp.pubnub.com"
}
}
}
ファイルを保存すると、通知が表示されます。Enable をクリックして MCP サーバーを有効にします。Cursor のドキュメントで詳細をご覧ください
Claude Code
ターミナルで、次を実行します。
claude mcp add --scope user --transport http pubnub https://mcp.pubnub.com
次に claude を実行して Claude Code を開き、/mcp を入力します。pubnub を選択し、authenticate を選択して、Allow access をクリックすると認証が完了します。Claude Code のドキュメントで詳細をご覧ください
Claude Desktop
注: 以下の手順は Pro プランと Max プランに適用されます。Enterprise プランでは、組織の管理者がセットアップを設定します。詳細については、Anthropic のドキュメントをご覧ください。
- Claude Desktop で Customize → Connectors に移動します。
- + をクリックし、Add custom connector を選択します。
- コネクター URL として
https://mcp.pubnub.comを入力します。 - プロンプトが表示されたら、OAuth ログインを完了します。
Claude Desktop のドキュメントで詳細をご覧ください
Codex
ターミナルで、次を実行します。
codex mcp add pubnub --url https://mcp.pubnub.com
次に codex mcp login pubnub を実行して認証し、認可する組織を選択して、Allow access をクリックします。Codex のドキュメントで詳細をご覧ください
Codex Desktop
- Settings → MCP servers に移動し、+ Add server をクリックします。
- トランスポートの種類として Streamable HTTP を選択します。
- サーバー URL として
https://mcp.pubnub.comを入力します。 - OAuth ログインのプロンプトに従って認証を完了します。
Codex Desktop のドキュメントで詳細をご覧ください
Gemini CLI
ターミナルで、次を実行します。
gemini mcp add pubnub --scope user --transport http https://mcp.pubnub.com
次に gemini を実行して Gemini CLI を開き、/mcp auth pubnub を実行して認証します。Gemini CLI のドキュメントで詳細をご覧ください
OpenCode
次の内容を ~/.config/opencode/config.json に追加します。
{
"mcp": {
"pubnub": {
"type": "remote",
"url": "https://mcp.pubnub.com",
"enabled": true
}
}
}
次に opencode mcp auth pubnub を実行して認証します。OpenCode のドキュメントで詳細をご覧ください
ローカル PubNub MCP サーバー
お使いの AI ツールがリモート MCP サーバーに対応していない場合は、次のコマンドでサーバーをローカルで実行します。
npx @pubnub/mcp@latest
API キー
始める前に、PubNub Admin Portal でサービスインテグレーションを作成し、MCP サーバーに API キーを設定することを強くおすすめします。基本的な機能の一部は API キーなしでも利用できますが、API キーを追加すると、さらに多くの機能を利用できます。または、サーバーを単一の PubNub キーセットで動作するように設定する手順については、ローカルサーバーの設定をご覧ください。
MCP サーバーのインストール方法は、使用する AI アシスタントによって異なります。標準的なセットアップには、Node.js(v20.0.0 以上)が必要です。
VS Code
上のリンクをクリックし、表示されたページで「Open in Visual Studio Code」を選択してください。VS Code に戻り、「Install」をクリックします。PubNub API Key の入力を求められます。入力すると、MCP サーバーを使用できるようになります。その他の設定オプションについては、ローカルサーバーの設定を参照してください。
Cursor
上のリンクをクリックし、表示されたページで「Open Cursor」を選択してください。Cursor に戻ると、「Install MCP Server?」というプロンプトが表示されます。PubNub API Key を保持する変数の値を必ず指定してください。指定したら、「Install」をクリックします。これで MCP サーバーを使用できます。その他の設定オプションについては、ローカルサーバーの設定を参照してください。
Claude Code
Claude Code をインストールした状態で、次のコマンドを実行すると、MCP が設定に追加されます。<your-api-key> の値を必ず置き換えてください。
claude mcp add pubnub --env PUBNUB_API_KEY=<your-api-key> --scope user --transport stdio -- npx -y @pubnub/mcp@latest
サーバーは「User」スコープに追加されるため、すべてのプロジェクトで使用できます。その他の設定オプションについては、ローカルサーバーの設定を参照してください。
Codex
Codex をインストールした状態で、次のコマンドを実行すると、MCP が設定に追加されます。<your-api-key> の値を必ず置き換えてください。
codex mcp add pubnub --env PUBNUB_API_KEY=<your-api-key> -- npx -y @pubnub/mcp@latest
その他の設定オプションについては、ローカルサーバーの設定を参照してください。
Gemini CLI
Gemini CLI は MCP の自動インストールに対応していません。settings.json ファイルを手動で編集し、以下のセクションを追加する必要があります。<your-api-key> の値を必ず置き換えてください。
"mcpServers": {
"pubnub": {
"command": "npx",
"args": [
"-y",
"@pubnub/mcp@latest"
],
"env": {
"PUBNUB_API_KEY": "<your-api-key>"
}
}
}
その他の設定オプションについては、PubNub のドキュメントのローカルサーバーの設定セクションを参照してください。
開発
前提条件
- Node.js >= 20.0.0
ローカルでの実行
npm install
npm run dev
環境変数
| 変数 | 説明 | 必須 |
|---|---|---|
PORT | HTTP サーバーのポート(デフォルト:3000) | いいえ |
MCP_OAUTH_ENABLED | OAuth 認証を有効にする | はい(本番環境の場合) |
OAUTH_ISSUER | OAuth 認可サーバーの URL | OAuth 有効時 |
OAUTH_CLIENT_ID | OAuth クライアント ID | OAuth 有効時 |
OAUTH_CLIENT_SECRET | OAuth クライアントシークレット | OAuth 有効時 |
ADMIN_API_RESOURCE_URL | Admin API リソース識別子 | OAuth 有効時 |
MCP_RESOURCE_URL | MCP リソース URL | OAuth 有効時 |
MCP_CLOUD_MODE | クラウドデプロイモード | いいえ |
MCP_SESSION_SUPPORT | セッションの永続化を有効にする | いいえ |
ADMIN_API_V2_URL | Admin API v2 エンドポイントを上書きする | いいえ |
PUBNUB_ORIGIN | PubNub オリジンを上書きする | いいえ |
SDK_DOCS_API_URL | ドキュメント API エンドポイントを上書きする | いいえ |
テスト
npm run test:unit # Unit tests
npm run test:integration # Integration tests (requires build)
npm run test:coverage # Coverage report
API リファレンス
この PubNub MCP サーバーは、リアルタイムアプリケーションの構築に役立つ、包括的なツール、リソース、プロンプトを提供します。利用可能なすべての機能を以下にまとめています。
ツール
ドキュメントへのアクセス
get_sdk_documentation- 特定のプログラミング言語や機能に関する PubNub Core SDK のドキュメントを取得しますget_chat_sdk_documentation- 特定のプログラミング言語や機能に関する PubNub Chat SDK のドキュメントを取得しますhow_to- 特定のユースケースやインテグレーションに関する PubNub の概念ガイドを取得しますwrite_pubnub_app- アーキテクチャ、セキュリティ、チャネルモデリング、最適化を網羅した PubNub のベストプラクティスガイドを取得しますget_sdk_migration_guide- SDK バージョンの移行ガイドを取得しますget_general_migration_guide- プラットフォーム全般の移行ガイドを取得します
アプリとキーセットの管理
manage_apps- PubNub アプリを管理します(一覧表示、作成、更新)manage_keysets- PubNub キーセットを管理します(取得、一覧表示、作成、更新)get_usage_metrics- アカウント、アプリ、またはキーセットの使用状況メトリクスを取得します
リアルタイム通信
send_pubnub_message- PubNub チャネルにメッセージまたは軽量なシグナルをリアルタイムで送信しますsubscribe_and_receive_pubnub_messages- 設定可能なタイムアウトとメッセージ数の上限を指定してチャネルを購読し、リアルタイムメッセージを受信しますget_pubnub_messages- 1 つ以上の PubNub チャネルから過去のメッセージを取得しますget_pubnub_presence- HereNow(チャネルの接続数)または WhereNow(ユーザーのチャネル)を使用してプレゼンスデータを取得しますmanage_app_context- ユーザー、チャネル、メンバーシップの PubNub App Context(Objects API)を、完全な CRUD 操作で管理します
Illuminate 分析と自動化
manage_illuminate- PubNub Illuminate リソース(ビジネスオブジェクト、クエリ、メトリクス、意思決定、ダッシュボード)を、完全な CRUD、アクティベーション、分析クエリ、アクションログの確認、テストデータの公開を含めて管理します
Insights 分析
insights- 集計された分析メトリクス(ユニークチャネル数/ユーザー数、メッセージ量、上位 N 件のランキング(チャネル、ユーザー、メッセージタイプ)、国別の内訳、新規ユーザーとリピーターの傾向、ユーザーの利用時間、デバイスタイプの分布)について PubNub Insights にクエリを実行します。アカウントレベルの Insights Read アクセス権を持つ Service Integration API キーと Insights Premium ティアが必要です。
プロンプト
ヘルスケアと HIPAA 準拠
hipaa-chat-short- HIPAA 準拠のチャットアプリケーションを作成するための簡易プロンプトhipaa-chat-long- Pub/Sub、Presence、App Context を使用する HIPAA 準拠のチャット向け詳細プロンプト
React 開発
react-app-short- PubNub Pub/Sub と Presence を使った React アプリのひな形を作成しますreact-app-long- リアルタイムメッセージング、プレゼンスインジケーター、ユーザーメタデータを備えた包括的な React アプリ
ゲームアプリケーション
gamelobby-short- チャットとプレゼンスを備えたマルチプレイヤーゲームロビーを構築しますgamelobby-long- チーム分けとリアルタイム機能を備えた高度なマルチプレイヤーロビー
OEM とマルチテナントソリューション
oem-client-management- OEM クライアントのデプロイメント向けにアプリを作成し、キーセットを設定しますmulti-tenant-onboarding-short- SaaS アプリケーション向けのテナントのオンボーディングを自動化しますmulti-tenant-onboarding-long- データ分離とエラー処理を備えたエンタープライズグレードのマルチテナントオンボーディング
Illuminate 分析と自動化
illuminate-spam-detection- 段階的に強化されるモデレーションアクションを備えた Illuminate スパム検出パイプラインを設定しますilluminate-reward-engagement- ライブイベントやゲーム向けの Illuminate エンゲージメント報酬パイプラインを構築しますilluminate-use-case- 任意の Illuminate 分析および自動化ユースケースをガイドに沿って設定しますilluminate-test-verify- 既存の Illuminate 設定をエンドツーエンドでテストし、検証します
Insights Analytics
insights-snapshot- 指定した期間の概要分析スナップショットです。一意のチャンネル数、一意のユーザー数、メッセージ数、メッセージ数の多い上位 20 チャンネル、異常値に関する注記を確認できます。insights-channel-analysis- ランキングカテゴリ別の上位チャンネル、チャンネル名のパターン、カテゴリ間のエンゲージメント比較を詳しく分析します。insights-user-growth- 新規ユーザーとリピーターの傾向、日次・週次・月次の内訳、上位の国、ヘビーユーザーの特定を確認できます。insights-engagement-deep-dive- ユーザーの平均利用時間、セッション時間の区分別ヒストグラム、ユーザー分数が多い上位チャンネル、パブリッシュ、サブスクライバー、一意のユーザーにおけるデバイスタイプ別の内訳を確認できます。
リソース
pubnub_sdk_docs- URI スキームpubnub-docs://sdk/{language}/{feature}を使用して、PubNub SDK のドキュメントにアクセスします。
対応言語:asyncio、c-core、c-sharp、dart、freertos、go、java、javascript、kotlin、mbed、objective-c、php、posix-c、posix-cpp、python、ruby、rust、swift、unity、unreal、windows-c、windows-cpp
対応機能:access-manager、access-manager-v2、channel-groups、configuration、encryption、files、message-actions、misc、mobile-push、objects、presence、publish-and-subscribe、storage-and-playback
pubnub_chat_sdk_docs- URI スキームpubnub-docs://chat-sdk/{language}/{feature}を使用して、PubNub Chat SDK のドキュメントにアクセスします。
対応言語:javascript、kotlin、swift、unity、unreal
対応機能:channels-create、channels-delete、channels-details、channels-invite、channels-join、channels-leave、channels-list、channels-membership、channels-references、channels-typing-indicator、channels-updates、channels-watch、connection-management、custom-events、error-logging、messages-delete、messages-details、messages-drafts、messages-files、messages-forward、messages-history、messages-links、messages-moderation、messages-pinned、messages-quotes、messages-reactions、messages-read-receipts、messages-restore、messages-send-receive、messages-threads、messages-unread、messages-updates、moderation、push-notifications、users-create、users-delete、users-details、users-list、users-mentions、users-moderation、users-moderation-user、users-permissions、users-presence、users-updates、utility-methods
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。

