PubNub MCP Server

by stephenlb

Integrations

  • Provides formatted SDK documentation for PubNub's JavaScript SDK, allowing developers to access reference materials for methods like subscribe() and publish() from within Cursor IDE.

  • Supports PubNub functionality through Node.js, allowing users to publish messages to channels, subscribe to channels, fetch message history, and retrieve presence information.

  • Offers access to PubNub's Python SDK documentation, enabling users to fetch docs for methods like publish() directly through Cursor IDE.

Сервер протокола контекста модели PubNub (MCP) для среды разработки курсоров

Этот репозиторий предоставляет сервер Model Context Protocol (MCP) на основе CLI, который предоставляет документацию PubNub SDK и ресурсы PubNub Functions инструментам на базе LLM. Добавив этот сервер в Cursor IDE, вы можете:

  • Получите отформатированную документацию PubNub JavaScript, Python и Java SDK.
  • Доступ к документации по функциям PubNub из статического файла Markdown.

Примеры подсказок

  • «Опубликуйте сообщение на канале my_channel с текстом Hello, PubNub! ».
  • «Покажите мне документацию PubNub JavaScript SDK для subscribe() ».
  • «Перечислить все доступные функции PubNub».
  • «Извлеките документацию Python SDK для метода publish() ».
  • «Извлеките историю сообщений для test канала».
  • «Получить информацию о присутствии (занятость и UUID) для test канала и группы каналов default ».

Для этого требуются Node.js (>= 18) и npm ( https://nodejs.org/ ). npx автоматически загрузит и запустит последнюю версию сервера MCP.

Предпосылки

  • Node.js (>= 18) и npm
  • Курсор IDE с поддержкой MCP
  • (Необязательно) Аккаунт PubNub и ключи API для живых примеров

Установка

Предпочтительный способ запустить сервер PubNub MCP локально или добавить его в Cursor IDE через npx:

npx -y @pubnub/mcp

Конфигурация

Для использования серверов MCP курсор должен находиться в РЕЖИМЕ АГЕНТА.

Cursor IDE обнаруживает серверы MCP через файл конфигурации JSON. Настройте сервер PubNub MCP глобально или для каждого проекта.

Глобальная конфигурация

Отредактируйте или создайте ~/.cursor/mcp.json :

{ "mcpServers": { "pubnub": { "command": "npx", "args": ["-y", "@pubnub/mcp"], "env": { "PUBNUB_SUBSCRIBE_KEY": "YOUR_SUBSCRIBE_KEY", "PUBNUB_PUBLISH_KEY": "YOUR_PUBLISH_KEY" } } } }

Конфигурация проекта

В каталоге вашего проекта создайте .cursor/mcp.json :

{ "mcpServers": { "pubnub": { "command": "npx", "args": ["-y", "@pubnub/mcp"], "env": { "PUBNUB_SUBSCRIBE_KEY": "YOUR_SUBSCRIBE_KEY", "PUBNUB_PUBLISH_KEY": "YOUR_PUBLISH_KEY" } } } }
  • command указывает исполняемый файл для запуска сервера MCP.
  • args указывает аргументы, передаваемые команде.
  • env устанавливает переменные среды для серверного процесса.

Использование в Cursor IDE

  1. Перезапустите Cursor IDE или откройте новый сеанс.
  2. Откройте панель настроек MCP и убедитесь, что сервер pubnub указан в разделе «Доступные инструменты и ресурсы» .
  3. В чате вызовите доступные ресурсы:
    • pubnub://docs/javascript — Получить документацию PubNub JavaScript SDK
    • pubnub://docs/python — Получить документацию PubNub Python SDK
    • pubnub://docs/java — Получить документацию PubNub Java SDK
    • pubnub://functions — Список функций PubNub (статический контент из resources/pubnub_functions.md )
  4. При появлении соответствующего запроса одобрите выполнение ресурсов или включите автоматический запуск в настройках для доверенных ресурсов.

Клод Код

## Install the MCP server if you have node >= 18 claude mcp add pubnub -e PUBNUB_PUBLISH_KEY=your_publish_key -e PUBNUB_SUBSCRIBE_KEY=your_subscribe_key -- npx -y @pubnub/mcp ## Install the MCP server if you have node < 18 and need to point to the full path of node claude mcp add pubnub -e PUBNUB_PUBLISH_KEY=your_publish_key -e PUBNUB_SUBSCRIBE_KEY=your_subscribe_key -- /Users/stephen/.nvm/versions/node/v22.14.0/bin/node /Users/stephen/Projects/mcp-pubnub/index.js

И вывод будет таким:

Added stdio MCP server pubnub with command: npx -y @pubnub/mcp to local config

Пример подсказки

claude "publish a message 'hi' to the 'my_channel' pubnub channel."
claude "publish a message 'hi' to the 'my_channel' pubnub channel." ╭───────────────────────────────────────────────────╮ │ ✻ Welcome to Claude Code research preview! │ │ │ │ /help for help, /status for your current setup │ │ │ │ cwd: /Users/stephen/Projects/mcp-pubnub │ ╰───────────────────────────────────────────────────╯ ※ Tip: Press Option+Enter to send a multi-line message > publish a message 'hi' to the 'my_channel' pubnub channel. ⏺ I'll publish a message to the PubNub channel for you. ⏺ pubnub:publish_pubnub_message (MCP)(channel: "my_channel", message: "hi")… ⎿  Message published successfully. Timetoken: 17467422499409217 ⏺ Message published successfully to "my_channel".

Удалите сервер MCP с помощью:

claude mcp remove pubnub

Использование Claude Desktop

  1. В разделе «Инструменты» добавьте новый инструмент с именем pubnub .
  2. Установите команду на npx и аргументы на ["-y", "@pubnub/mcp"] .
  3. Добавьте переменные среды для ваших ключей PubNub:
    • PUBNUB_SUBSCRIBE_KEY
    • PUBNUB_PUBLISH_KEY
  4. Сохраните конфигурацию.

Claude Desktop может использовать старую версию node. Вам может потребоваться задать полный путь к установке node.

git clone https://github.com/stephenlb/pubnub-mcp-server.git

Сервер MCP находится в файле index.js .:

{ "mcpServers": { "pubnub": { "command": "/Users/stephen/.nvm/versions/node/v22.14.0/bin/node", "args": ["/Users/stephen/Projects/mcp-pubnub/index.js"], "env": { "PUBNUB_SUBSCRIBE_KEY": "demo", "PUBNUB_PUBLISH_KEY": "demo" } } } }

Лицензия

Этот проект лицензирован по лицензии MIT. Подробности см. в файле LICENSE .

Поиск неисправностей

  • Для использования серверов MCP необходимо находиться в режиме агентов.
  • Проверьте установку Node.js и npm.
  • Убедитесь, что server.js имеет разрешение на выполнение.
  • Проверьте правильность настроек command , args и env .
  • Проверьте журналы Cursor IDE на наличие ошибок запуска MCP.

Прямое использование командной строки JSON-RPC

Вы можете вызвать сервер MCP напрямую через STDIN/STDOUT с помощью JSON-RPC v2.0. Убедитесь, что ваши ключи PubNub установлены в среде, например:

PUBNUB_SUBSCRIBE_KEY=YOUR_SUBSCRIBE_KEY \ PUBNUB_PUBLISH_KEY=YOUR_PUBLISH_KEY \ node index.js

После запуска сервера (или использования одноразового вызова) отправьте запросы, передав JSON в node index.js . Примеры:

# 1) List available tools echo '{"jsonrpc":"2.0","id":1,"method":"tools/list","params":{}}' \ | node index.js # 2) Fetch PubNub JavaScript SDK documentation echo '{"jsonrpc":"2.0","id":2,"method":"tools/call","params": {"name":"fetch_pubnub_sdk_docs","arguments":{"language":"javascript"}}}' \ | node index.js # 3) Load PubNub Functions docs (static Markdown) echo '{"jsonrpc":"2.0","id":3,"method":"tools/call","params": {"name":"pubnub_functions_docs","arguments":{}}}' \ | node index.js # 4) Publish a message to a channel echo '{"jsonrpc":"2.0","id":4,"method":"tools/call","params": {"name":"publish_pubnub_message","arguments": {"channel":"my_channel","message":"Hello, PubNub!"}}}' \ | node index.js # 5) Read a static resource echo '{"jsonrpc":"2.0","id":5,"method":"resources/read","params": {"uri":"thank_you_pubnub://thank_you"}}' \ | node index.js

Краткие примеры JSON-RPC

Ниже приведены упрощенные примеры командной строки JSON-RPC v2.0 с использованием STDIN/STDOUT для получения документации PubNub SDK и публикации сообщений.

1) Получите документацию PubNub JavaScript SDK

PUBNUB_SUBSCRIBE_KEY=YOUR_SUBSCRIBE_KEY \ PUBNUB_PUBLISH_KEY=YOUR_PUBLISH_KEY \ echo '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"fetch_pubnub_sdk_docs","arguments":{"language":"javascript"}}}' \ | node index.js

2) Опубликуйте сообщение на канале PubNub

PUBNUB_SUBSCRIBE_KEY=YOUR_SUBSCRIBE_KEY \ PUBNUB_PUBLISH_KEY=YOUR_PUBLISH_KEY \ echo '{"jsonrpc":"2.0","id":2,"method":"tools/call","params":{"name":"publish_pubnub_message","arguments":{"channel":"my_channel","message":"Hello, PubNub MCP JSON-RPC!"}}}' \ | node index.js

Лицензия

Массачусетский технологический институт

You must be authenticated.

A
security – no known vulnerabilities
F
license - not found
A
quality - confirmed to work

Сервер протокола контекста модели на базе CLI, который предоставляет документацию PubNub SDK и ресурсы функций инструментам на базе LLM, таким как Cursor IDE, позволяя пользователям получать документацию и взаимодействовать с каналами PubNub с помощью подсказок на естественном языке.

  1. Примеры подсказок
    1. Предпосылки
      1. Установка
        1. Конфигурация
          1. Глобальная конфигурация
          2. Конфигурация проекта
        2. Использование в Cursor IDE
          1. Клод Код
            1. Пример подсказки
          2. Использование Claude Desktop
            1. Лицензия
              1. Поиск неисправностей
                1. Прямое использование командной строки JSON-RPC
                  1. Краткие примеры JSON-RPC
                    1. 1) Получите документацию PubNub JavaScript SDK
                    2. 2) Опубликуйте сообщение на канале PubNub
                  2. Лицензия

                    Related MCP Servers

                    • -
                      security
                      F
                      license
                      -
                      quality
                      A simple Model Context Protocol server that enables searching and retrieving relevant documentation snippets from Langchain, Llama Index, and OpenAI official documentation.
                      Last updated -
                      Python
                      • Apple
                      • Linux
                    • -
                      security
                      F
                      license
                      -
                      quality
                      A customized MCP server that enables integration between LLM applications and documentation sources, providing AI-assisted access to LangGraph and Model Context Protocol documentation.
                      Last updated -
                      Python
                      • Linux
                      • Apple
                    • A
                      security
                      A
                      license
                      A
                      quality
                      A Model Context Protocol server that loads multiple OpenAPI specifications and exposes them to LLM-powered IDE integrations, enabling AI to understand and work with your APIs directly in development tools like Cursor.
                      Last updated -
                      7
                      292
                      7
                      TypeScript
                      MIT License

                    View all related MCP servers

                    ID: u5x3u3txbh