postnitro

PostNitro: генерация карусели, изображений и видео с планированием публикаций

От сообщества: Добавлен пользователем или импортирован; проверьте владельца перед подключениемРаботаетБез входаГлобальныйБесплатноМожет изменять данные

Что умеет

  • Генерировать карусели, изображения и видео по шаблонам
  • Импортировать готовый контент по шаблону
  • Управлять брендовыми наборами и AI-пресетами
  • Подключать и просматривать социальные аккаунты
  • Планировать и просматривать запланированные публикации

Какие данные видит

Ассистент использует тот же ключ Embed API и кредиты аккаунта PostNitro, что и обычный REST-доступ.

Нужен ли аккаунт

Не нужен: сервер работает без входа

PostNitro даёт ассистентам Claude, Cursor и ChatGPT готовые инструменты вместо ручных вызовов REST API: создание карусели, изображений и видео по шаблонам, управление брендовыми наборами, аудиотреками, подключёнными соцсетями и планирование постов. Сервер работает на том же ключе Embed API и кредитах, что и REST API.

Как подключить

Как подключить postnitro к Claude

Адрес сервера, который нужно вставить в настройках Claude:

https://postnitro--muneeb.run.tools

  1. Откройте Claude (сайт claude.ai или приложение для компьютера).
  2. Перейдите в Настройки → Коннекторы (в английском интерфейсе: Settings → Connectors).
  3. Нажмите Добавить пользовательский коннектор (Add custom connector).
  4. Вставьте адрес сервера, скопированный ниже, в поле URL удалённого MCP-сервера и нажмите Добавить.
  5. В чате нажмите + → Коннекторы и включите новый коннектор.

Пользовательские коннекторы доступны на тарифах Free, Pro, Max, Team и Enterprise. На Free можно добавить только один. В Team и Enterprise коннектор сначала добавляет владелец организации в Настройки организации → Коннекторы.

Авторизация

После нажатия Добавить откроется окно входа в сервис. Войдите под своим аккаунтом и подтвердите доступ. Пароль Claude не видит.

Как подключить postnitro к ChatGPT

Адрес сервера, который нужно вставить в настройках ChatGPT:

https://postnitro--muneeb.run.tools

  1. Откройте ChatGPT в браузере (chatgpt.com). Нужен тариф Plus, Pro, Business, Enterprise или Edu.
  2. Один раз включите режим разработчика: Настройки → Приложения → Дополнительные настройки → Режим разработчика (Settings → Apps → Advanced settings → Developer mode).
  3. Откройте Настройки → Коннекторы и нажмите Создать (Create).
  4. Заполните форму: Название (любое), Описание (одна фраза, что делает сервис), URL MCP-сервера (скопируйте ниже).
  5. В поле Аутентификация выберите OAuth, если сервис требует вход, иначе Нет. Нажмите Создать.
  6. В новом чате откройте + → Приложения/Коннекторы и включите коннектор.

Название раздела у OpenAI менялось (Connectors → Apps/Plugins). Если пункт называется иначе, ищите «режим разработчика» в настройках. В рабочих пространствах Business/Enterprise администратор должен разрешить пользовательские коннекторы.

Авторизация

При первом использовании ChatGPT откроет окно входа в сервис. Войдите и подтвердите доступ.

Как подключить postnitro к Cursor

Адрес сервера, который нужно вставить в настройках Cursor:

https://postnitro--muneeb.run.tools

Быстрый способ: нажмите кнопку Открыть в Cursor ниже, Cursor сам предложит добавить сервер.

Вручную:

  1. В Cursor откройте Settings → Cursor Settings → MCP и нажмите Add new global MCP server.
  2. Вставьте JSON, скопированный ниже, в открывшийся файл ~/.cursor/mcp.json (для одного проекта: .cursor/mcp.json в корне проекта).
  3. Сохраните файл. Сервер появится в списке MCP; при необходимости пройдите авторизацию по кнопке рядом с ним.

Авторизация

Если сервис требует вход, рядом с сервером в списке MCP появится кнопка авторизации.

Список инструментов сервера (29)

Технические названия из tools/list. Нужны только разработчикам.

postnitro_set_defaultsSave default templateId, brandId, presetId, and responseType so you don't have to provide them every time. These defaults persist across sessions. Any generate/import tool will automatically use them when those parameters are not explicitly provided. Typical first-time setup workflow: 1. Call postnitro_list_templates → pick a template 2. Call postnitro_list_brands → pick a brand 3. Call postnitro_list_ai_presets → pick a preset 4. Call postnitro_set_defaults with the chosen IDs 5. From now on, just call generate/import without specifying IDs
postnitro_get_defaultsRetrieve your saved default templateId, brandId, presetId, and responseType. Returns null if no defaults are saved.
postnitro_list_templatesList available carousel templates. Returns template IDs, names, and dimensions. Use postnitro_set_defaults to save your preferred templateId for future calls.
postnitro_list_brandsList available brand configurations. Returns brand IDs, names, handles, and display settings. Use postnitro_set_defaults to save your preferred brandId for future calls.
postnitro_list_ai_presetsList available AI configuration presets. Returns preset IDs with platform, tone, audience, language, slide count, and model. Use postnitro_set_defaults to save your preferred presetId for future calls.
postnitro_get_import_templateReturns the exact slide structure and rules for the import carousel tools. Call this BEFORE using postnitro_import_carousel or postnitro_import_and_wait to understand the required format.
postnitro_generate_carouselGenerate a carousel post using PostNitro's AI engine. Returns an embedPostId to track progress. For a single-image post instead of a carousel, use postnitro_generate_image. templateId, brandId, presetId, and responseType are optional if you've saved defaults via postnitro_set_defaults. Otherwise provide them here (use the list tools to find valid IDs). Use postnitro_check_status to monitor, then postnitro_get_output to retrieve. Or use postnitro_generate_and_wait for one step.
postnitro_import_carouselCreate a carousel by importing your own slide content. IMPORTANT: Call postnitro_get_import_template FIRST to see the exact slide structure and rules. templateId, brandId, and responseType are optional if you've saved defaults via postnitro_set_defaults. Strict rules (violations will cause errors): 1. First slide MUST be type "starting_slide" (exactly 1) 2. Middle slides MUST be type "body_slide" (at least 1) 3. Last slide MUST be type "ending_slide" (exactly 1) 4. Infographic columnCount must not exceed 3 5. When columnDisplay is "cycle", put ALL data in the FIRST columnData entry only 6. Setting layoutType "infographic" replaces the image field Minimal example: slides: [ { type: "starting_slide", heading: "Welcome!", description: "Intro", cta_button: "Swipe →" }, { type: "body_slide", heading: "Key Point", description: "Details here" }, { type: "ending_slide", heading: "Thanks!", cta_button: "Learn More" } ]
postnitro_check_statusCheck the generation status and processing logs for a post. When AI image generation was requested (generateImages), a GENERATE_IMAGES step appears in the logs — status COMPLETED with a count, or FAILED with a skip reason (the overall post can still be COMPLETED, since images are best-effort).
postnitro_get_outputRetrieve the generated output for a completed post. Always returns the design's `designId` (the value to pass when scheduling — postnitro_create_scheduled_post / postnitro_generate_and_schedule) and an `editorUrl` deep link to open it in the editor. For PDF/PNG output it also returns the rendered file(s) (`data`, `mimeType`, `outputType`); for DESIGN output there is no rendered file, so those fields are omitted.
postnitro_generate_and_waitConvenience tool: generates a carousel with AI, polls until completion, and returns the final output. May take 30-180 seconds. For a single-image post instead of a carousel, use postnitro_generate_image_and_wait. templateId, brandId, presetId, and responseType are optional if you've saved defaults via postnitro_set_defaults.
postnitro_import_and_waitConvenience tool: imports custom slide content, polls until completion, and returns the final output. May take 15-60 seconds. IMPORTANT: Call postnitro_get_import_template FIRST to see the exact slide structure and rules. templateId, brandId, and responseType are optional if you've saved defaults via postnitro_set_defaults. Strict rules: 1. First slide MUST be type "starting_slide" (exactly 1) 2. Middle slides MUST be type "body_slide" (at least 1) 3. Last slide MUST be type "ending_slide" (exactly 1) 4. Infographic columnCount must not exceed 3 5. When columnDisplay is "cycle", data in FIRST column only 6. layoutType "infographic" replaces the image field
postnitro_generate_imageGenerate a single-image post (postType IMAGE) using PostNitro's AI engine. Returns an embedPostId to track progress. The content is AI-generated from your aiGeneration prompt — you do NOT provide slides. (To supply your own image content instead, use postnitro_import_image.) templateId, brandId, presetId, and responseType are optional if you've saved defaults via postnitro_set_defaults. Otherwise provide them here (use the list tools to find valid IDs). Use postnitro_check_status to monitor, then postnitro_get_output to retrieve. Or use postnitro_generate_image_and_wait for one step.
postnitro_generate_image_and_waitConvenience tool: AI-generates a single-image post (postType IMAGE), polls until completion, and returns the final output. May take 30-180 seconds. The content is AI-generated from your aiGeneration prompt — you do NOT provide slides. (To supply your own image content instead, use postnitro_import_image_and_wait.) templateId, brandId, presetId, and responseType are optional if you've saved defaults via postnitro_set_defaults.
postnitro_import_imageCreate a single-image post (postType IMAGE) from one slide of your own content. Returns an embedPostId to track progress. Unlike a carousel, an image post is ONE slide — pass `slide` as a single object, NOT an array, with no slide `type`. Only `heading` is required. An infographic layout IS supported: set layoutType 'infographic' + layoutConfig on the slide (same shape as carousel infographics). templateId, brandId, and responseType are optional if you've saved defaults via postnitro_set_defaults. Use postnitro_check_status to monitor, then postnitro_get_output to retrieve. Or use postnitro_import_image_and_wait for one step.
postnitro_import_image_and_waitConvenience tool: creates a single-image post (postType IMAGE) from one slide, polls until completion, and returns the final output. May take 15-60 seconds. Pass `slide` as a single object, NOT an array, with no slide `type`. Only `heading` is required. An infographic layout IS supported: set layoutType 'infographic' + layoutConfig on the slide (same shape as carousel infographics). templateId, brandId, and responseType are optional if you've saved defaults via postnitro_set_defaults.
postnitro_create_brandCreate a new brand kit (the logo, name, and handle stamped onto generated carousels). All seven fields are required. The new brand's ID is returned — use it as a brandId in generate/import or save it via postnitro_set_defaults. Note: plans cap the number of brands; exceeding it returns an error.
postnitro_get_brandFetch a single brand kit by ID, including its display settings (showName, showHandle, showImage, isCompanyDetail).
postnitro_update_brandUpdate an existing brand kit. All seven fields are required by the API. name, handle, and image are only overwritten when a non-empty value is sent; the boolean display flags (isCompanyDetail, showName, showHandle, showImage) are always applied. Tip: call postnitro_get_brand first to read current values, then send them back with your changes.
postnitro_list_social_accountsList the connected social accounts in your workspace, grouped by platform (linkedin, instagram, tiktok, threads). These account IDs are what you pass as selectedAccounts when creating a scheduled post. All four platform arrays are always present (empty when none connected).
postnitro_get_social_accountFetch a single connected social account by ID, including its scheduled-post usage broken down by status (PENDING, PUBLISHED, etc.) and token expiry.
postnitro_disconnect_social_accountDisconnect (delete) a connected social account. This also removes it from every scheduled post it was attached to. This action cannot be undone.
postnitro_list_scheduled_postsList scheduled posts and drafts whose scheduled time falls within a date range. Returns each post with its captions, selected social accounts, and attached design details.
postnitro_create_scheduled_postCreate a scheduled post or draft for LinkedIn, Instagram, TikTok, and/or Threads. Workflow: 1. postnitro_list_social_accounts → pick account IDs for selectedAccounts 2. (optional) attach a designId — a carousel you created with PostNitro. Use the design's ID (the 'designId' field returned by postnitro_get_output / postnitro_generate_and_wait), NOT the generation embedPostId. 3. provide a caption via postContent and/or a designId (a post needs at least one) Rules enforced by the API (surfaced as error messages here): - scheduledAt must be a future ISO-8601 datetime. - A post must have either a designId or non-empty postContent. designId may be null only for DRAFT. - Per-platform *PostSettings are conditionally required based on the selected accounts' platforms and whether a designId is set (see each field's description). LinkedIn requires a designId when SCHEDULED. - postSettings (video metadata) is required when any postType resolves to 'reel'.
postnitro_get_scheduled_postFetch a single scheduled post by ID, with its captions, selected social accounts, platform settings, attached design details, and publishing status.
postnitro_update_scheduled_postUpdate an existing scheduled post or draft. The body and validation mirror postnitro_create_scheduled_post exactly. The update REPLACES the post's captions and selected accounts with what you send — send the full intended state, not just changed fields. Tip: call postnitro_get_scheduled_post first to read the current values.
postnitro_delete_scheduled_postDelete a scheduled post (or draft) and all of its related content. This action cannot be undone.
postnitro_generate_and_scheduleConvenience tool: generates a post with AI (postType 'CAROUSEL' by default, or 'IMAGE' for a single-image post), waits for it to finish, then creates a scheduled post that attaches the resulting design. May take 30-180 seconds. templateId, brandId, presetId, and responseType are optional if saved via postnitro_set_defaults. The design that gets attached is the completed carousel's design ID (result.designId from the generation output) — NOT the generation job ID. You normally don't set designId; it's resolved automatically. Pass designId only to attach a pre-existing design instead of the freshly generated one. If scheduling fails after the carousel is already generated (e.g. an invalid platform-settings combination), this tool returns the generated designId so you can fix the inputs and retry with postnitro_create_scheduled_post — WITHOUT regenerating (which would burn credits again). Provide the scheduling fields (status, scheduledAt, selectedAccounts, captions, and any required per-platform settings) just as you would for postnitro_create_scheduled_post.
postnitro_import_and_scheduleConvenience tool: creates a post from YOUR OWN content (import), waits for it to finish, then creates a scheduled post that attaches the resulting design. May take 15-60 seconds. Set postType to 'CAROUSEL' (default) and provide a 'slides' ARRAY, or 'IMAGE' and provide a single 'slide' OBJECT — this mirrors postnitro_import_carousel / postnitro_import_image. IMPORTANT: Call postnitro_get_import_template FIRST to see the exact slide structure and rules. templateId, brandId, and responseType are optional if saved via postnitro_set_defaults. The design attached is the imported design's ID (result.designId), resolved automatically. Pass designId only to attach a pre-existing design instead of the freshly imported one. If scheduling fails after the design was already created (e.g. an invalid platform-settings combination), this tool returns the created designId so you can fix the inputs and retry with postnitro_create_scheduled_post — WITHOUT re-importing. Provide the scheduling fields (status, scheduledAt, selectedAccounts, captions, and any required per-platform settings) just as you would for postnitro_create_scheduled_post.