posteverywhere/mcp

posteverywhere/mcp

от posteverywhere
Планируйте посты в соцсетях (Instagram, TikTok, YouTube, LinkedIn, Facebook, X, Threads, Pinterest) через AI-агенты. Работает с Claude, ChatGPT, Cursor. Для маркетологов и разработчиков.

@posteverywhere/mcp — Social Media MCP Server for Claude, ChatGPT, Cursor, Codex & AI Agents

mcp-name: io.github.posteverywhere/mcp

npm version npm downloads License: MIT GitHub stars Glama quality score

Official Model Context Protocol server for PostEverywhere — let Claude Code, Claude Desktop, ChatGPT (via the hosted connector), Cursor, OpenAI Codex, and other MCP-compatible AI clients schedule and publish posts to 12 platforms: Instagram, TikTok, YouTube, LinkedIn, Facebook, X (Twitter), Threads, Pinterest, Bluesky, Telegram, Discord and WordPress using natural language.

💡 Building a programmatic integration? Use the companion @posteverywhere/sdk Node.js SDK instead — full TypeScript types, retry handling, error classes.

Resource URL
🌐 Homepage posteverywhere.ai
🛠️ Developers landing page posteverywhere.ai/developers
📖 API Documentation developers.posteverywhere.ai
📦 This MCP on npm npmjs.com/package/@posteverywhere/mcp
💻 This MCP on GitHub github.com/posteverywhere/mcp
📦 Node SDK (npm) npmjs.com/package/@posteverywhere/sdk
💻 Node SDK (GitHub) github.com/posteverywhere/sdk
⌨️ CLI & Agent Skill (npm) npmjs.com/package/@posteverywhere/cli
⌨️ CLI & Agent Skill (GitHub) github.com/posteverywhere/cli
🎛️ Dashboard app.posteverywhere.ai
🔑 Get an API key app.posteverywhere.ai/developers
💵 Pricing posteverywhere.ai/pricing
📚 Help Center posteverywhere.ai/support
🧠 Model Context Protocol modelcontextprotocol.io
🐛 Issues / bug reports github.com/posteverywhere/mcp/issues
📧 Support support@posteverywhere.ai
Инструменты были проиндексированы:
approve_postидемпотентный

Approval workflow: approve a post that is waiting for review (see list_posts with approval:"pending"). Approving does not publish it: call schedule_post afterwards to send it out. Needs a reviewer role in the workspace.

Approve Post

Параметры
  • notestring

    Optional note for the author

  • post_idstringобязательный

    The post ID

bulk_create_postsвнешний мир

Create up to 50 posts in one PostEverywhere call. Each post is checked one by one, exactly like create_post (rate limits included), including X Articles, WordPress blog posts (platform_content.wordpress) and Google Business Profile posts (platform_content.google_business). Returns per-item success/error so you can handle partial failures. Use this for bulk scheduling workflows. Irreversible for every post that publishes: it becomes public on the connected social accounts, and PostEverywhere cannot recall it.

Массово создаёт посты.

Параметры
  • postsunknown[]обязательный

    Array of post objects (same shape as create_post body). Max 50. An item may use schedule_at: "best_time" (with account_ids, and no scheduled_for or use_queue): each one is given its own next best time.

complete_media_uploadидемпотентный

Confirm a direct upload from create_media_upload after the file bytes were PUT to its upload_url. Checks the file arrived and matches its type. The media_id can then be used in media_ids (a PDF on a LinkedIn account becomes a document post). Calling it again on ready media is harmless.

Finish a Direct Media Upload

Параметры
  • media_idstringобязательный

    The media_id returned by create_media_upload

connect_credential_accountвнешний мир

Подключите telegram, discord, bluesky или wordpress прямо в этом разговоре, браузер не нужен. telegram: bot_token (от @BotFather, бот должен быть админом канала) + channel (@username или chat id). discord: webhook_url. bluesky: handle + app_password (Settings > App Passwords, ни в коем случае не основной пароль). wordpress (self-hosted, WordPress 5.6+): site_url + username + app_password (WordPress: Users > Profile > Application Passwords, ни в коем случае не пароль для входа). Учётные данные проверяются на лету перед сохранением; повторная отправка для существующего аккаунта обновляет его на месте.

Подключает учетную запись с учетными данными

Параметры
  • app_passwordstring

    bluesky или wordpress: пароль приложения / Application Password, а не основной пароль

  • bot_tokenstring

    Только для Telegram: токен бота от @BotFather.

  • channelstring

    только для telegram: @channelusername или числовой идентификатор чата

  • handlestring

    Только Bluesky: хэндл аккаунта, например me.bsky.social

  • platformenumобязательный

    Платформа на основе учётных данных.

  • site_urlstring

    wordpress only: адрес сайта, например https://example.com

  • usernamestring

    только для WordPress: логин WordPress

  • webhook_urlstring

    только для Discord: URL входящего вебхука

create_campaign

Создаёт новую кампанию в PostEverywhere для группировки связанных постов. Возвращает идентификатор кампании, который затем можно передать как campaign_id при создании постов через create_post.

Создаёт кампанию

Параметры
  • colorstring

    Hex-цвет, например #3b82f6

  • descriptionstring

    Необязательное описание

  • namestringобязательный

    Название кампании

  • statusenum
create_connect_link

Generate a short-lived authorization URL (10 min) to connect a NEW social account via OAuth: x, instagram, facebook, youtube, pinterest, threads, linkedin, tiktok, or google_business (Google Business Profile: the owner signs in with the Google account that owns or manages the business; if it manages several businesses, they choose which to add). Give the URL to the account owner to open in any browser and approve; the connected account then appears in list_accounts (poll it to confirm). For telegram, discord, bluesky or wordpress use connect_credential_account if you have it (no browser needed); if that tool is not available here, the user connects them in the PostEverywhere app at app.posteverywhere.ai/accounts.

Создает ссылку для подключения аккаунта

Параметры
  • platformenumобязательный

    Платформа OAuth для подключения

create_media_upload

Upload a LOCAL file (one with no public URL), including PDFs for LinkedIn document posts. Step 1: call this with filename, content_type and size in bytes; it returns media_id and a short-lived upload_url. Step 2: send the file to upload_url the way the protocol field in the response says. protocol "put" (videos and PDFs): PUT the raw bytes with header Content-Type set to the same content_type (curl -X PUT -H "Content-Type: application/pdf" --data-binary @file.pdf "<upload_url>"). protocol "multipart-form" (images): POST a multipart form with the file in a field named file (curl -X POST -F "file=@photo.jpg" "<upload_url>"). Step 3: call complete_media_upload with the media_id. Only use this when you can send the bytes yourself; for a file at a public URL use upload_media_from_url. Accepted: JPEG, PNG, GIF, WebP, HEIC, MP4 and PDF.

Start a Direct Media Upload

Параметры
  • content_typestringобязательный

    MIME type, e.g. "application/pdf", "image/png", "video/mp4"

  • filenamestringобязательный

    File name including extension, e.g. "deck.pdf"

  • sizeintegerобязательный

    File size in bytes

create_postвнешний мир

Create a social media post on PostEverywhere. Three modes: (1) PUBLISH NOW — give content + account_ids, omit scheduled_for; (2) SCHEDULE — add scheduled_for; (3) DRAFT for human review — set draft: true, which saves the post WITHOUT publishing it (it appears in the user's PostEverywhere app and via list_posts(status:"draft"); you then publish it with schedule_post once approved). Use draft mode whenever a human wants to check posts before they go live. Supports per-platform overrides and media. THREADS: put part 1 in content and the parts that follow in thread_posts; the post goes out as a real linked thread (each part replies to the one before) on X and Bluesky, and as follow-up messages on Telegram and Discord (Threads chains are not available yet: a Threads account gets part 1 only). Returns the post ID, its status, and the next step to take. Irreversible in publish-now and schedule modes: a post that a social network has published stays public, and PostEverywhere cannot recall it.

Создаёт пост

Параметры
  • account_idsnumber[]

    Идентификаторы социальных аккаунтов для публикации (из list_accounts). ОБЯЗАТЕЛЬНО для публикации или планирования; НЕОБЯЗАТЕЛЬНО для черновика (аккаунты можно выбрать позже, когда вы вызовете schedule_post).

  • campaign_idinteger

    Put the post in a campaign (id from create_campaign or list_campaigns).

  • contentstringобязательный

    Текстовое содержимое поста

  • cover_photoobject

    Cover image for a VIDEO post. On YouTube it becomes the video's custom THUMBNAIL (YouTube only allows custom thumbnails on verified channels: youtube.com/verify; 1280x720 JPG or PNG is best). Instagram Reels, Facebook videos and LinkedIn videos use it as the cover. TikTok does not take a cover image (pick a frame with platform_content.tiktok.settings.videoCoverTimestamp in milliseconds). Give media_id or url. For one platform only, set platform_content.<platform>.settings.coverPhotoUrl instead.

  • draftboolean

    Установите значение true, чтобы сохранить как ЧЕРНОВИК для проверки человеком, а не публиковать или планировать. Черновик НЕ публикуется, пока вы не вызовите для него schedule_post. Просматривайте черновики с помощью list_posts(status:"draft") или get_post.

  • media_idsstring[]

    Array of media UUIDs to attach. Get these from upload_media_from_url (recommended) or generate_image. Existing library files can be looked up with list_media. Per-platform limits are enforced, not trimmed: e.g. Pinterest takes 1 video or up to 5 images, and more is refused with a 400 whose message names the limit. (get_platform_rules lists file sizes and formats, not how many files each platform takes.)

  • platform_contentobject

    Per-platform overrides keyed by platform name (e.g. {"instagram": {...}}). Each entry may set "content" (platform-specific caption) and "contentType" (the post format for that platform). contentType values: Instagram "Post" | "Reels" | "Story" | "Trial Reel"; Facebook "Post" | "Reels" for a video ("Reels" posts it as a Reel, "Post" as a regular video; a landscape video always posts as a regular video; Facebook Stories are not supported and are refused with a 400); YouTube "Video" | "Short". Omit contentType to use the platform default (video media defaults to Reels on Instagram). Each entry may also set "settings" with platform-specific options, e.g. Pinterest {"settings": {"boardId": "...", "link": "https://...", "title": "..."}} to pick the board and destination link, YouTube {"settings": {"title": "..."}}. YOUTUBE SETTINGS (all optional, camelCase or snake_case): {"youtube": {"settings": {"title": "<max 100; default first caption line>", "description": "<max 5000; default the caption>", "tags": ["a","b"], "categoryId": "22 People & Blogs (default) | 23 Comedy | 24 Entertainment | 26 Howto & Style | 27 Education | 28 Science & Technology | 10 Music | 20 Gaming | 17 Sports", "privacyStatus": "public|unlisted|private", "madeForKids": false, "containsSyntheticMedia": true (discloses realistic AI-altered content), "notifySubscribers": true, "license": "youtube|creativeCommon", "embeddable": true, "publicStatsViewable": true, "defaultLanguage": "en" (title and description language), "coverPhotoUrl": "<https JPG/PNG: the YouTube thumbnail; or use the cover_photo parameter>"}}}. Adding to playlists and a first comment are NOT available yet. YouTube decides what is a Short (square or vertical, up to 3 minutes); contentType "Short" is informational. Age restriction, paid promotion, comments on/off, Shorts remixing and caption certification cannot be set through YouTube's API (YouTube Studio only). Invalid YouTube settings are refused with a 400. MORE PLATFORM SETTINGS (keys are camelCase unless shown; all optional; these snake_case spellings are also accepted and converted: first_comment, alt_text, media_alt_text, reply_settings, privacy_level, disable_comment, disable_duet, disable_stitch, video_type, cover_photo_url, topic_tag, link_attachment, board_id, board_section_id, comment_status): TIKTOK {"tiktok": {"settings": {"privacyLevel": "PUBLIC_TO_EVERYONE|MUTUAL_FOLLOW_FRIENDS|FOLLOWER_OF_CREATOR|SELF_ONLY", "disableComment": false, "disableDuet": false, "disableStitch": false, "commercialContentEnabled": true + "brandOrganicToggle": true (promoting your own business) and/or "brandContentToggle": true (paid partnership), "isAIGC": true (AI-generated label), "title": "...", "videoCoverTimestamp": <ms into the video for the cover frame>, "photoCoverIndex": <0-based cover image for photo posts>, "autoAddMusic": true (photo posts)}}}. TikTok takes no custom cover image. X (also): "replySettings": "everyone|following|mentionedUsers", a poll with "pollEnabled": true, "pollOptions": [{"text": "A"}, {"text": "B"}] (2-4, no media) and "pollDuration": <minutes, default 1440>, "quoteTweetUrl": "https://x.com/.../status/<id>", "mediaAltText": "<alt text for the images>", "firstComment": "<posted as a reply>". INSTAGRAM (also): "altText": "<alt text, image posts>", "location": "<place name>" + "locationId": "<Facebook Page id of the place>" (both needed). Tagging people, collaborators and product tags are not available. FACEBOOK: "link": "https://..." (link card), "videoType": "reel|regular" (a landscape video always posts as a regular video), "placeId": "<place id>" + "placeName": "...", "callToAction": {"type": "LEARN_MORE|SHOP_NOW|SIGN_UP|...", "value": "https://..."} (needs "link"). LINKEDIN: "visibility": "PUBLIC|CONNECTIONS|LOGGED_IN_MEMBERS", "disableReshare": true. THREADS: "topicTag": "<one topic>", "linkAttachment": "https://..." (text-only posts). PINTEREST (also): "description": "<max 500>", "altText": "...", "boardSectionId": "<section id>" (title max 100). BLUESKY: "altText": "...", "language": "en", "replyControl": "everybody|nobody|mentioned|following", "contentLabel": "sexual|nudity|porn|graphic-media". TELEGRAM: "silent": true, "protectContent": true (no forwarding or saving), "captionAboveMedia": true, "mediaSpoiler": true, "linkPreview": "off|large|small", "linkPreviewAboveText": true. DISCORD: "username": "<max 80, cannot contain clyde or discord>", "avatarUrl": "https://...", "suppressMentions": true, "silent": true. WORDPRESS (also): "commentStatus": "open|closed". A first comment (firstComment) works on X only today; on Instagram, Facebook, LinkedIn, Threads and YouTube it is not available, so it is removed and the response notes say so. X: {"x": {"settings": {"made_with_ai": true, "paid_partnership": true, "community_id": "<numeric X Community id>"}}} adds X's disclosure labels or posts into a Community the account belongs to. X ARTICLE (long-form, X Premium accounts only): {"x": {"content": "<body: # headings, - lists, > quotes, bold, italic, links>", "settings": {"post_type": "article", "title": "<max 100 chars>"}}} with ONLY X account ids, up to 5 images in media_ids (the first is the cover, 2000x800 looks best; place others inline with a line caption, or they go at the end), no video, body up to 25,000 characters. The body also supports --- dividers, code blocks, | tables |, a line that is just an X post link (embeds it) and caption. Limited to 2 published articles per X account per 24 hours. WORDPRESS BLOG POST: {"wordpress": {"content": "<body, same formatting as X Articles; raw HTML is kept as-is>", "settings": {"title": "<max 200 chars; default = a leading # Heading, else the first line>", "status": "publish|draft|pending|private", "excerpt": "<max 1000>", "tags": ["a"], "categories": ["News"], "slug": "...", "featuredImage": "first|none"}}} with WordPress account ids (other platforms in the same call use the top-level content), up to 20 images + 1 video in media_ids (the first image is the featured image; place others inline with caption, or they go at the end; the video goes at the top), body up to 200,000 characters. tags/categories take arrays or a comma string (categories also take numeric ids); missing tags are created. A blog post with no title is refused with a 400. GOOGLE BUSINESS PROFILE POST (google_business): {"google_business": {"content": "<optional text for Google only, max 1500 chars>", "settings": {"post_type": "update|event|offer", "button": "none|book|order|shop|learn_more|sign_up|call", "button_url": "https://...", "event_title": "<max 58>", "start_date": "YYYY-MM-DD or YYYY-MM-DDTHH:mm", "end_date": "...", "coupon_code": "...", "redeem_url": "https://...", "terms": "..."}}}. Text up to 1500 characters, at most 1 photo (JPG or PNG), no video. button_url is required for every button except call. Event and offer posts need event_title, start_date and end_date (business local time). Offer posts have no button. Do not put phone numbers in the text: Google may reject those posts. An invalid Google Business Profile post is refused with a 400.

  • request_approvalboolean

    Only with draft: true: send the draft to the workspace's reviewers for approval instead of leaving it as a plain draft. Without draft: true the call is refused with a 400 and nothing is created. Reviewers use approve_post or request_post_changes; list_posts(approval:"pending") shows the queue.

  • schedule_atenum

    Установите в "best_time", чтобы запланировать на следующее лучшее время для этих аккаунтов: самое раннее из их трёх лучших времён (см. get_best_times), как минимум через 30 минут от текущего момента. Используйте, когда пользователь говорит "опубликуй в лучшее время" или "когда это покажет лучший результат". Требует account_ids. Несовместим с scheduled_for и use_queue. Ответ сообщает, какое время выбрано и на чём оно основано; сообщите пользователю.

  • scheduled_forstring

    ISO 8601 datetime to schedule the post (e.g., 2026-03-15T14:00:00Z). Without an offset it is read as UTC. Omit to publish immediately. When draft:true this is optional and just pre-fills the draft's suggested time.

  • thread_postsstring[]

    Make the post a THREAD. The parts that come AFTER content, in order (content is part 1). Each part is posted as a reply to the one before. Works on X and Bluesky; Telegram and Discord get them as follow-up messages; Threads chains are not available yet (a Threads account gets part 1 only); any other account in the same post gets content only (the response lists those accounts). At least one account must be X, Bluesky, Telegram or Discord. Each part must fit the platform limit: X 280 characters (25,000 with X Premium), Bluesky 300, Telegram 4096, Discord 2000; get_platform_rules has the numbers. Up to 25 parts. Cannot be combined with an X Article. Works with draft: true (schedule_post then publishes the whole thread). Example: content "Three things I learned this year 🧵 1/3", thread_posts ["2/3 ...", "3/3 ..."].

  • timezonestring

    IANA timezone (e.g., America/New_York), stored for display only. It does not change when the post goes out: scheduled_for without an offset is read as UTC. To post at 9:00 New York time, send the offset, e.g. 2026-03-15T09:00:00-05:00.

  • use_queueboolean

    Устанавливает значение true, чтобы очередь публикаций рабочего пространства выбрала время: следующий свободный слот выделяется при создании. Используйте это вместо scheduled_for, когда пользователь говорит «добавь в очередь», «опубликуй в моё обычное время» или «когда будет следующий свободный слот». Взаимоисключающий с scheduled_for - отправка обоих отклоняется. Сначала вызовите get_queue, если хотите сказать пользователю, КАКОЙ слот он получит.

create_reconnect_link

Генерирует короткоживущий URL авторизации (10 мин) для ИСПРАВЛЕНИЯ существующего OAuth-аккаунта, у которого истёк токен (needs_reconnection из get_account_health). Владелец открывает его, подтверждает, будучи авторизованным под тем же профилем, и существующий аккаунт восстанавливается на месте. После этого проверяется с помощью get_account_health.

Создаёт ссылку повторного подключения аккаунта.

Параметры
  • account_idnumberобязательный

    ID социального аккаунта для повторного подключения

create_webhook

Create a webhook subscription on PostEverywhere. PostEverywhere will POST event payloads to the URL whenever a subscribed event occurs (post.published, post.failed, account.reconnect_needed, etc). Each request is signed with HMAC-SHA256 via the X-PostEverywhere-Signature header — verify it against the returned secret. The secret is shown ONLY ONCE in this response. Events that fire: post.scheduled (a post was created in the app or with create_post, to publish now or later, or a draft was scheduled with schedule_post), post.published (one platform published it), post.failed (one platform failed for good), post.partially_failed, post.warning (published with a warning, e.g. TikTok made it private), post.deleted, post.approval_requested, post.approved, post.changes_requested, account.disconnected, account.reconnect_needed, media.uploaded (a direct upload finished with complete_media_upload; not sent for upload_media_from_url), media.deleted.

Создаёт Webhook

Параметры
  • descriptionstring
  • eventsstring[]обязательный

    Массив названий событий, на которые нужно подписаться.

  • namestring

    Человекочитаемое название подписки

  • urlstringобязательный

    HTTPS URL, на который будут отправляться события методом POST (должен быть публичным).

delete_campaignидемпотентный

Delete a campaign on PostEverywhere. Posts in the campaign survive — their campaign_id is set to NULL. Permanent: the campaign cannot be restored.

Удаляет кампанию

Параметры
  • idnumberобязательный

    ID кампании

delete_mediaидемпотентный

Delete a media file from the PostEverywhere media library. This permanently removes the file from storage and cannot be undone. If a post that has not gone out yet uses the file, nothing is deleted and the call fails with a 409 (media_in_use) that says how many posts use it. Ask the user before you retry with force: true: the file is then deleted and those posts are cancelled (marked failed), so they never publish.

Удаляет медиа

Параметры
  • forceboolean

    Delete even if scheduled posts use the file. Those posts are cancelled (marked failed) and do not publish. Only when the user agrees.

  • media_idstringобязательный

    UUID удаляемого медиафайла

delete_postидемпотентныйвнешний мир

Удаляет пост из PostEverywhere. Навсегда удаляет пост и все его каналы публикации на платформах из PostEverywhere. Пост, который УЖЕ ОПУБЛИКОВАН, по умолчанию остаётся опубликованным в соцсетях; задайте delete_on_x: true, чтобы также удалить его опубликованную копию в X (Twitter) (другие платформы не удаляются). Задавайте delete_on_x только когда пользователь явно просит удалить пост из X. Отменить нельзя.

Удаляет сообщение

Параметры
  • delete_on_xboolean

    Также удаляет опубликованную в X копию этого поста. По умолчанию false. Только когда пользователь явно просит.

  • post_idstringобязательный

    UUID удаляемого поста

delete_webhookидемпотентный

Удаляет подписку на вебхук в PostEverywhere. Каскадно удаляет историю доставок.

Удаляет вебхук

Параметры
  • idstringобязательный
generate_caption

Generate 1-5 AI caption variants for a social media post on PostEverywhere. Provide a topic and optionally tone, platform, length, hashtag/emoji preferences. Captions always fit the platform's character limit (X: 280 as X counts, Bluesky: 300, Threads: 500, LinkedIn: 3000, Instagram: 2200, Facebook: 5000, YouTube description: 5000, Google Business Profile: 1500); a caption the AI writes too long is cut at a word break to fit, and char_limit in the response gives the number used. Costs 1 AI credit per caption returned. Companion to generate_image — together they let you compose a complete post in two calls.

Генерирует AI-подпись

Параметры
  • countnumber

    Количество возвращаемых вариантов подписи (1-5)

  • include_emojisboolean

    Включать ли эмодзи

  • include_hashtagsboolean

    Включать ли хэштеги (по умолчанию подбираются под платформу).

  • lengthenum

    Примерная длина подписи

  • platformenum

    Целевая платформа: задаёт лимит символов и стилевые соглашения.

  • toneenum

    Тон голоса для подписи

  • topicstringобязательный

    О чём должен быть пост

generate_image

Генерирует AI-изображение из текстового промпта в PostEverywhere. Изображение сохраняется в вашу медиатеку, и его можно прикрепить к постам через media_ids. Даёт на выбор 4 модели: gemini-3-pro (по умолчанию, сбалансированное качество, 5 кредитов), nano-banana-pro (фотореализм, 15 кредитов), ideogram-v2 (хорошо подходит для текста на изображениях, 8 кредитов), flux-schnell (самый быстрый, 1 кредит). Требует scope "ai".

Генерирует изображение с помощью AI

Параметры
  • add_logoboolean

    Stamp the workspace's real logo (from its Brand Kit) onto the finished image, exact and undistorted. Needs a Brand Kit with a logo; the response's logo_added says whether it was added.

  • aspect_ratioenum

    Соотношение сторон для сгенерированного изображения

  • modelenum

    Модель ИИ для генерации.

  • promptstringобязательный

    Текстовое описание изображения для генерации

get_accountтолько чтениеидемпотентный

Получает подробную информацию о конкретном подключённом аккаунте соцсети в PostEverywhere. Возвращает платформу аккаунта, имя пользователя, состояние работоспособности и информацию о том, может ли он сейчас публиковать (Pinterest также перечисляет свои доски; WordPress указывает название своего сайта). Используйте этот инструмент, чтобы проверить статус отдельного аккаунта по его ID.

Получает учётную запись

Параметры
  • account_idnumberобязательный

    Числовой идентификатор социального аккаунта для получения.

get_account_healthтолько чтениеидемпотентный

Проверяет состояние подключённой социальной учётной записи в PostEverywhere. Возвращает статус (healthy|warning|broken), логическое значение can_post, срок действия токена, флаг needs_reconnection, количество последних сбоев, время последней успешной публикации. Используйте этот инструмент перед публикацией, чтобы обнаружить нерабочий токен ДО того, как он приведёт к неудачной публикации.

Получает состояние аккаунта.

Параметры
  • idnumberобязательный

    ID социального аккаунта

get_analytics_summaryтолько чтениеидемпотентный

Получает сводные метрики публикаций за временной интервал в PostEverywhere. Возвращает счётчики (запланировано/опубликовано/с ошибкой), разбивку по платформам, суммарные просмотры/лайки/комментарии/репосты/показы/клики по всем опубликованным постам, расход AI-кредитов и АУДИТОРИЮ - последнее число подписчиков по каждому подключённому аккаунту плюс его изменение за период. Один вызов отвечает на вопрос «сколько постов я опубликовал на этой неделе и выросла ли аудитория?», не перечисляя каждый пост. Снимки подписчиков начинаются с 2026-08-31; для аккаунта с единственным замером change_in_period возвращается как null, потому что одна точка - это ещё не тренд.

Получает сводку аналитики.

Параметры
  • fromstring

    Нижняя граница временной метки ISO (обязательна, если period=custom)

  • periodenum

    Временное окно: по умолчанию последние 30 дней.

  • tostring

    Верхняя граница ISO timestamp (обязательно, если period=custom)

get_best_timesтолько чтениеидемпотентный

Находит лучшие моменты для публикации для одного или нескольких подключённых аккаунтов или для платформы. Каждый слот даёт день недели (ISO, 1 = понедельник), местное время в запрошенном часовом поясе, ближайшую конкретную дату и время, оценку (1.25 = примерно на 25% лучше обычного поста; null для общей рекомендации) и основание: "personal" (измерено по собственным постам этого аккаунта), "platform" (что работает для пользователей PostEverywhere на этой платформе) или "general" (рекомендация, не измерено). Передайте несколько account_ids, чтобы получить одну общую рекомендацию для публикации во все эти аккаунты. next_best - самый ранний из трёх лучших слотов. Используйте это, когда пользователь спрашивает, когда публиковать, или перед планированием с create_post(schedule_at: "best_time"). Всегда сообщайте пользователю основание: никогда не называйте слот "platform" или "general" собственным лучшим временем пользователя.

Получает лучшее время для публикации.

Параметры
  • account_idsnumber[]

    Идентификаторы аккаунтов (из list_accounts). Несколько = одна объединённая рекомендация.

  • countnumber

    Слотов на результат (по умолчанию 5).

  • platformstring

    Вместо аккаунтов: название платформы (instagram, tiktok, linkedin, youtube, facebook, x, threads, pinterest, bluesky, telegram, discord, wordpress) для времени по всей платформе.

  • timezonestring

    Часовой пояс IANA для слотов (например, America/New_York). По умолчанию: часовой пояс из профиля пользователя.

get_brandтолько чтениеидемпотентный

Get the workspace's Brand Kit from PostEverywhere (app.posteverywhere.ai/brand): what the business does, its products, audience, voice, language, rules to follow, banned words, required hashtags, colours and fonts. Call this before writing captions yourself so posts sound like the brand and follow its rules. generate_caption already writes in this brand automatically. If brand is null, no brand is set up yet and the message says where to make one.

Get Brand

Параметры

Без параметров.

get_campaignтолько чтениеидемпотентный

Получает детали одной кампании в PostEverywhere по её идентификатору, включая post_count.

Получает кампанию

Параметры
  • idnumberобязательный

    ID кампании

get_meтолько чтениеидемпотентный

Получает аккаунт PostEverywhere, в который выполнен вход: пользователя, рабочее пространство, выданные scopes, план организации и остатки по каждой квоте (аккаунты, AI credits, хранилище). Полезен в начале разговора, чтобы узнать organization_id, scopes и состояние квот. Пока в рабочем пространстве нет постов, next_step предлагает простой первый пост, который можно предложить пользователю.

Get Workspace Info

Параметры

Без параметров.

get_mediaтолько чтениеидемпотентный

Получает подробную информацию о конкретном медиафайле в PostEverywhere, включая его тип, размеры, объём файла, статус загрузки и соотношение сторон. Используйте это, чтобы проверить, завершилась ли обработка загруженного медиафайла, перед прикреплением его к посту.

Get Media

Параметры
  • media_idstringобязательный

    UUID медиафайла, который нужно получить.

get_platform_rulesтолько чтениеидемпотентный

Get the per-platform publishing limits PostEverywhere enforces: character limit, image and video constraints (size, dimensions, duration, formats), and supported features (threads, carousels, reels, alt text, blog posts). WordPress also lists its blog post fields under platforms.wordpress.blog, and Google Business Profile its post fields (post types, buttons, event and offer fields) under platforms.google_business.local_post. Call this BEFORE composing a post for an unfamiliar platform, or when a post was rejected for length or media format — it is the difference between one correct call and a failed publish. Server-authoritative and cheap: the values are static per deploy and cached, so a platform added server-side appears here with no update on your side. Takes no arguments and returns every platform at once.

Получает правила платформы.

Параметры

Без параметров.

get_postтолько чтениеидемпотентный

Получает подробную информацию о конкретном посте в PostEverywhere, включая его содержимое, медиавложения, расписание и статус публикации на каждой платформе назначения. Используйте это, чтобы проверить, был ли пост опубликован успешно, или просмотреть детали ошибок для неудачных платформ назначения.

Получает пост.

Параметры
  • post_idstringобязательный

    UUID поста, который нужно извлечь

get_post_resultsтолько чтениеидемпотентный

Получает результаты публикации по каждой платформе для конкретного поста в PostEverywhere. Возвращает подробный статус для каждого места публикации, включая опубликованные URL, сообщения об ошибках, количество попыток и расписания повторных попыток. Используйте этот инструмент, чтобы проверить, на каких платформах публикация прошла успешно, а на каких завершилась ошибкой.

Получает результаты постов.

Параметры
  • post_idstringобязательный

    UUID поста для получения результатов

get_queueтолько чтениеидемпотентный

Показывает очередь публикаций рабочего пространства: повторяющиеся еженедельные слоты, в которые она публикует, и ближайшие свободные слоты. Используется перед create_post(use_queue: true), чтобы точно сказать пользователю, когда выйдет его пост, и используется, когда он спрашивает «когда мой следующий слот» или «как выглядит моё расписание». Список ближайших слотов - это ПРОГНОЗ, а не бронирование: слот занимается только тогда, когда пост действительно создан с use_queue. Если очередь не настроена, поле queue равно null, а сообщение объясняет, где её создать.

Get Posting Queue

Параметры
  • previewnumber

    Сколько предстоящих вакансий возвращать (1-30, по умолчанию 10).

get_webhookтолько чтениеидемпотентный

Получает сведения об одной подписке вебхука на PostEverywhere (НЕ включает секрет подписи).

Получить вебхук

Параметры
  • idstringобязательный

    Идентификатор вебхука

list_accountsтолько чтениеидемпотентный

Выводит список всех подключённых аккаунтов социальных сетей в PostEverywhere. Возвращает ID аккаунтов, названия платформ, имена пользователей и статус работоспособности (может ли каждый аккаунт сейчас публиковать). Помогает увидеть, какие платформы доступны, прежде чем создавать пост. Пока в рабочем пространстве нет постов, результат заканчивается строкой next_step: её можно предложить пользователю как простой первый пост.

Перечисляет учётные записи.

Параметры

Без параметров.

list_campaignsтолько чтениеидемпотентный

Перечисляет кампании в текущем рабочем пространстве PostEverywhere. Кампании группируют связанные посты (например, «Q3 Launch», «Holiday 2026») и могут использоваться через campaign_id при создании или фильтрации постов. Возвращает id, name, color, status, post_count для каждой.

Выводит список кампаний.

Параметры
  • limitnumber

    Размер страницы

  • offsetnumber

    Смещение пагинации

  • statusenum

    Фильтрует по статусу кампании

list_mediaтолько чтениеидемпотентный

Перечисляет медиафайлы в библиотеке PostEverywhere. Поддерживает фильтрацию по типу (изображение, видео, документ) и пагинацию. Возвращает метаданные файлов, включая URL-адреса, размеры и статус загрузки. Используйте этот инструмент, чтобы найти существующие медиафайлы для прикрепления к записям.

List Media

Параметры
  • limitnumber

    Количество возвращаемых элементов.

  • typeenum

    Фильтрует по типу медиа.

list_postsтолько чтениеидемпотентный

Перечисляет запланированные, опубликованные или черновые посты в PostEverywhere. Поддерживает фильтрацию по статусу (запланированные, опубликованные, черновики) и платформе. Возвращает содержимое постов, информацию о расписании и статусы доставки для каждой платформы. Используйте это, чтобы проверить, какие посты стоят в очереди, или просмотреть опубликованный контент.

Перечисляет посты.

Параметры
  • approvalenum

    Approval workflow filter: "pending" lists posts waiting for a reviewer, "changes_requested" those sent back to their author.

  • limitnumber

    Количество возвращаемых постов

  • platformstring

    Filter by platform (e.g., instagram, linkedin, x, wordpress, google_business)

  • statusenum

    Фильтрует по статусу записи.

list_posts_advancedтолько чтениеидемпотентный

Выводит список постов в PostEverywhere с ПОЛНЫМ набором фильтров, доступных в API (с июня 2026 года). Работает как list_posts, но принимает несколько статусов через запятую (например, «failed,partially_failed»), несколько платформ через запятую, диапазоны дат (created/scheduled/published/updated), фильтры account_id и campaign_id, поиск по содержимому и параметры сортировки. Используйте этот инструмент для любого нетривиального запроса, например «все неудачные посты TikTok за прошлую неделю», который базовый list_posts не может выразить.

Расширенный поиск постов

Параметры
  • account_idnumber

    Фильтрует до одного социального аккаунта.

  • campaign_idnumber

    Фильтрует по кампании.

  • created_afterstring

    Нижняя граница временной метки ISO для posts.created_at.

  • created_beforestring
  • limitnumber
  • offsetnumber
  • orderenum
  • platformstring

    Платформы через запятую (например, "instagram,facebook")

  • published_afterstring

    Нижняя граница временной метки ISO для published_at назначения.

  • published_beforestring
  • scheduled_afterstring

    Нижняя граница временной метки ISO для posts.scheduled_for.

  • scheduled_beforestring
  • searchstring

    Полнотекстовый поиск по содержимому постов.

  • sortenum
  • statusstring

    Статусы через запятую (scheduled,publishing,published,partially_failed,failed,draft)

  • updated_afterstring

    Нижняя граница временной метки ISO - для инкрементального опроса синхронизации.

list_webhooksтолько чтениеидемпотентный

Перечисляет все подписки на вебхуки в PostEverywhere для текущей организации. Возвращает id, url, подписанные события, is_active, последнюю статистику доставки. Примечание: секрет подписи НИКОГДА не включается в ответы при выводе списка.

Перечисляет вебхуки.

Параметры

Без параметров.

request_post_changesидемпотентный

Approval workflow: send a post waiting for review back to its author with a note saying what to change. The post stays a draft. Needs a reviewer role in the workspace.

Request Changes to Post

Параметры
  • notestringобязательный

    What needs changing; the author sees this

  • post_idstringобязательный

    The post ID

retry_failed_postвнешний мир

Retry all failed platform destinations for a specific post on PostEverywhere. Resets failed destinations back to queued status so they will be re-attempted by the publishing system. Use this when a post failed due to temporary issues like rate limits or token expiry (after the token has been refreshed). Irreversible once a retry succeeds: the post becomes public on that social account, and PostEverywhere cannot recall it.

Повторно публикует неудавшийся пост.

Параметры
  • post_idstringобязательный

    UUID записи с неудачными адресатами.

retry_failed_postsвнешний мир

Retry all failed destinations on PostEverywhere that match a filter (account_id, platform, date range, or explicit post_ids). Saves you from making one retry call per failed post. Requires at least one filter — refuses to retry the entire failure history. Irreversible once a retry succeeds: the posts become public on those social accounts, and PostEverywhere cannot recall them.

Повторить неудачные посты

Параметры
  • account_idnumber

    Повторяет только неудачные операции для этого социального аккаунта.

  • failed_afterstring

    ISO timestamp: повторять неудачные попытки только после этого.

  • failed_beforestring

    ISO timestamp - повторять только сбои до этого времени.

  • max_attemptsnumber

    Пропускает назначения, у которых attempt_count >= this.

  • platformenum
  • post_idsstring[]

    Явный список UUID постов, для которых требуется повторить отправку в неудачные назначения.

schedule_postвнешний мир

Publish or schedule a DRAFT (created with create_post(draft: true)). Pass scheduled_for to schedule it for a future time, or publish_now: true to publish it right away. Optionally pass account_ids to set/override which accounts it posts to (defaults to the accounts saved on the draft). This is the final step of the review workflow: create_post(draft:true) → review with list_posts(status:"draft")/get_post → schedule_post. Only works on drafts — to re-time an already-scheduled post, use update_post. A draft that targets a WordPress account must have a blog title (platform_content.wordpress.settings.title or a leading "# Heading"), or this returns a 400. A draft that targets a Google Business Profile account must follow its rules (see create_post), or this returns a 400. Irreversible once it publishes: the post becomes public on the connected social accounts, and PostEverywhere cannot recall it.

Планирует публикацию.

Параметры
  • account_idsnumber[]

    Необязательно: аккаунты для публикации, которые переопределяют сохранённые адресаты черновика.

  • post_idstringобязательный

    UUID черновика для публикации (из create_post или list_posts)

  • publish_nowboolean

    Установите true, чтобы опубликовать черновик немедленно, а не планировать его публикацию.

  • schedule_atenum

    Устанавливает значение "best_time", чтобы запланировать черновик на следующее лучшее время для его аккаунтов (самое раннее из их топ-3, см. get_best_times). Вместо scheduled_for или publish_now.

  • scheduled_forstring

    Дата и время в формате ISO 8601 для планирования (например, 2026-06-20T14:00:00Z). Укажите это или publish_now.

  • timezonestring

    Часовой пояс IANA для отображения (не меняется при публикации поста).

test_webhookвнешний мир

Отправляет синтетический тестовый пинг на URL вебхука в PostEverywhere, чтобы вы могли убедиться, что ваша конечная точка получает запрос и проверяет подпись HMAC. Возвращает HTTP-статус и длительность ответа получателя.

Тестирует вебхук.

Параметры
  • idstringобязательный
update_campaignидемпотентный

Update a campaign on PostEverywhere (name, description, color, or active/archived status). Overwrites the previous values; PostEverywhere keeps no earlier version.

Обновить кампанию

Параметры
  • colorstring
  • descriptionstring
  • idnumberобязательный

    ID кампании

  • namestring
  • statusenum
update_postидемпотентныйвнешний мир

Update a scheduled or draft post on PostEverywhere. You can change the content, schedule time, timezone, target accounts, media attachments, or per-platform content (including a WordPress blog post's title, status, tags and categories). Only posts with status "scheduled" or "draft" can be edited — published posts cannot be modified. Returns the updated post with all its details. Fields you send replace the old values (per-platform settings are merged, see platform_content); PostEverywhere keeps no earlier version.

Обновляет пост.

Параметры
  • account_idsnumber[]

    New array of social account IDs to post to. On a draft this only changes the saved targets; the draft still publishes only through schedule_post.

  • contentstring

    Новый текстовый контент для поста

  • media_idsstring[]

    Новый массив UUID медиафайлов для прикрепления. Возьмите их из upload_media_from_url или generate_image. Действуют те же ограничения по платформам, что и в create_post (например, Pinterest: до 5 изображений).

  • platform_contentobject

    Per-platform overrides keyed by platform name, same shape as create_post. Use this to correct a queued post, e.g. set the Pinterest board and destination link: {"pinterest": {"settings": {"boardId": "...", "link": "https://..."}}}. What happens: for each platform you send, the settings you send are added to the settings already saved (a key you send replaces that key; keys you leave out are kept). The platform caption changes only if you send "content", and the title, link and tags only if you send new ones. To clear a setting, send it with an empty value. For a draft, account_ids only changes which accounts the draft will go to; nothing is queued until schedule_post. For an X Article, set {"x": {"settings": {"post_type": "article", "title": "..."}}}. For a WordPress blog post, set {"wordpress": {"content": "...", "settings": {"title": "...", "status": "draft", "tags": ["a"]}}}. For a Google Business Profile post, set {"google_business": {"settings": {"post_type": "event", "event_title": "...", "start_date": "2026-11-02T18:00", "end_date": "2026-11-02T21:00", "button": "learn_more", "button_url": "https://..."}}}.

  • post_idstringобязательный

    UUID поста, который нужно обновить.

  • scheduled_forstring

    New ISO 8601 datetime to schedule the post. Without an offset it is read as UTC.

  • thread_postsstring[]

    Заменяет части треда, которые идут после content (так же, как create_post). Отправьте [], чтобы снова сделать тред одиночным постом.

  • timezonestring

    New IANA timezone, stored for display only. It does not change when the post goes out: scheduled_for without an offset is read as UTC.

update_webhookидемпотентный

Обновляет подписку вебхука на PostEverywhere: меняет url, events, name, description, is_active. Если у автоматически отключённого вебхука установить is_active=true, счётчик consecutive_failures сбрасывается.

Обновляет вебхук.

Параметры
  • descriptionstring
  • eventsstring[]
  • idstringобязательный
  • is_activeboolean
  • namestring
  • urlstring
upload_media_from_urlвнешний мир

Импортирует изображение ИЛИ ВИДЕО с публичного URL в медиатеку PostEverywhere, готовое к прикреплению к постам через media_ids. ИЗОБРАЖЕНИЯ (JPEG, PNG, GIF, WebP, HEIC, HEIF, до 25 МБ) импортируются синхронно: media_id в ответе готов сразу. ВИДЕО (только MP4, до 4 ГБ) импортируются АСИНХРОННО: ответ сразу возвращает media_id со значением media_status "uploading", пока файл загружается на стороне сервера. Опрашивайте get_media, пока media_status не станет "ready" (обычно заметно меньше минуты), и только ЗАТЕМ прикрепляйте его к посту. Если media_status переходит в "failed", error_message из get_media точно объясняет причину (файл слишком большой, на самом деле не MP4, квота хранилища, недоступный URL). Никогда не прикрепляйте media_id, статус которого вы не видели дошедшим до "ready".

Загружает медиа из URL.

Параметры
  • filenamestring

    Необязательное имя файла для записи в библиотеку. Если не указано, оно выводится из пути URL.

  • urlstringобязательный

    Публичный HTTPS-URL, указывающий на изображение или MP4-видео. Должен быть доступен из публичного интернета (без частных/локальных адресов).

1.13.0основная
1.11.0
1.9.3
1.9.2
1.9.1
1.9.0
1.8.0
1.7.0
1.6.0
1.5.1
1.5.0
1.4.1
1.4.0
1.3.0
1.2.0
1.1.2
1.1.1
1.1.0
1.0.0

Выберите клиент, чтобы установить posteverywhere/mcp:

Любой клиент

Конфиг добавления MCP сервера стандартный, обычно он не меняется вообще, поэтому подходит практически к любому ИИ клиенту, поддерживающему MCP.

{
  "mcpServers": {
    "posteverywhere-mcp-d6jmbr2yox": {
      "command": "npx",
      "args": [
        "-y",
        "@posteverywhere/mcp"
      ],
      "env": {
        "POSTEVERYWHERE_API_KEY": "pe_live_your_key_here"
      }
    }
  }
}
CursorCursor

Перейдите по ссылке и сервер автоматически будет добавлен в Cursor. Либо откройте/создайте файл ~/.cursor/mcp.json(%USERPROFILE%\.cursor\mcp.json на Windows) и добавьте конфиг сервера:

{
  "mcpServers": {
    "posteverywhere-mcp-d6jmbr2yox": {
      "command": "npx",
      "args": [
        "-y",
        "@posteverywhere/mcp"
      ],
      "env": {
        "POSTEVERYWHERE_API_KEY": "pe_live_your_key_here"
      }
    }
  }
}
VS Code

Создайте .vscode/mcp.json в проекте (ключ верхнего уровня — servers):

{
  "servers": {
    "posteverywhere-mcp-d6jmbr2yox": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "@posteverywhere/mcp"
      ],
      "env": {
        "POSTEVERYWHERE_API_KEY": "pe_live_your_key_here"
      }
    }
  }
}

Либо добавьте сервер через терминал:

code --add-mcp "{\"name\":\"posteverywhere-mcp-d6jmbr2yox\",\"type\":\"stdio\",\"command\":\"npx\",\"args\":[\"-y\",\"@posteverywhere/mcp\"],\"env\":{\"POSTEVERYWHERE_API_KEY\":\"pe_live_your_key_here\"}}"
ClaudeClaude Desktop

Откройте Settings → Developer → Edit Config — это откроет файл claude_desktop_config.json:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json

Впишите сервер и полностью перезапустите Claude Desktop:

{
  "mcpServers": {
    "posteverywhere-mcp-d6jmbr2yox": {
      "command": "npx",
      "args": [
        "-y",
        "@posteverywhere/mcp"
      ],
      "env": {
        "POSTEVERYWHERE_API_KEY": "pe_live_your_key_here"
      }
    }
  }
}
Claude CodeClaude Code

Добавьте сервер одной командой в терминале:

claude mcp add posteverywhere-mcp-d6jmbr2yox --env POSTEVERYWHERE_API_KEY=pe_live_your_key_here -- npx -y @posteverywhere/mcp

Либо через JSON-конфиг:

claude mcp add-json posteverywhere-mcp-d6jmbr2yox "{\"command\":\"npx\",\"args\":[\"-y\",\"@posteverywhere/mcp\"],\"env\":{\"POSTEVERYWHERE_API_KEY\":\"pe_live_your_key_here\"}}"
CodexCodex

Добавьте сервер командой в терминале:

codex mcp add posteverywhere-mcp-d6jmbr2yox --env POSTEVERYWHERE_API_KEY=pe_live_your_key_here -- npx -y @posteverywhere/mcp

Либо вручную в ~/.codex/config.toml(%USERPROFILE%\.codex\config.toml на Windows):

[mcp_servers.posteverywhere-mcp-d6jmbr2yox]
command = "npx"
args = ["-y", "@posteverywhere/mcp"]

[mcp_servers.posteverywhere-mcp-d6jmbr2yox.env]
POSTEVERYWHERE_API_KEY = "pe_live_your_key_here"
PerplexityPerplexity

MCP доступен подписчикам Perplexity Pro / Max / Enterprise. Локальные серверы — только в приложении для macOS.

  1. Откройте Настройки аккаунта → Connectors.
  2. Установите вспомогательное приложение PerplexityXPC (один раз).
  3. Нажмите Add Connector → вкладка Simple.
  4. В поле Server Name укажите posteverywhere/mcp, а в поле команды запуска — строку ниже:
npx -y @posteverywhere/mcp

Нажмите Save и дождитесь статуса Running.

WindsurfWindsurf

Откройте Windsurf Settings → Cascade → MCP Servers или отредактируйте файл ~/.codeium/windsurf/mcp_config.json:

{
  "mcpServers": {
    "posteverywhere-mcp-d6jmbr2yox": {
      "command": "npx",
      "args": [
        "-y",
        "@posteverywhere/mcp"
      ],
      "env": {
        "POSTEVERYWHERE_API_KEY": "pe_live_your_key_here"
      }
    }
  }
}
ClineCline

В панели Cline нажмите иконку MCP Servers → Configure → Configure MCP Servers (или отредактируйте ~/.cline/mcp.json) и добавьте сервер:

{
  "mcpServers": {
    "posteverywhere-mcp-d6jmbr2yox": {
      "command": "npx",
      "args": [
        "-y",
        "@posteverywhere/mcp"
      ],
      "env": {
        "POSTEVERYWHERE_API_KEY": "pe_live_your_key_here"
      },
      "disabled": false,
      "autoApprove": []
    }
  }
}
Continue

Создайте файл в .continue/mcpServers/ (например posteverywhere-mcp-d6jmbr2yox.yaml) или добавьте блок в config.yaml. MCP работает только в режиме agent:

mcpServers:
  - name: posteverywhere-mcp-d6jmbr2yox
    command: npx
    args:
      - "-y"
      - "@posteverywhere/mcp"
    env:
      POSTEVERYWHERE_API_KEY: pe_live_your_key_here
Zed

Выполните agent: add context server или откройте настройки (zed: open settings file) и добавьте сервер в объект context_servers:

{
  "context_servers": {
    "posteverywhere-mcp-d6jmbr2yox": {
      "command": "npx",
      "args": [
        "-y",
        "@posteverywhere/mcp"
      ],
      "env": {
        "POSTEVERYWHERE_API_KEY": "pe_live_your_key_here"
      }
    }
  }
}

Похожие MCP-сервера

taisly/agent

taisly/agent

от taisly

Публикует видео в TikTok, Instagram Reels, YouTube Shorts, X и Facebook. Планирует посты, проверяет статус. Один API для всех платформ.

JavaScript⭐ 220
Instagram DM MCP

Instagram DM MCP

от trypeggy

Отправляет и получает Instagram Direct Messages: тексты, фото, видео. Читает чаты, ищет пользователей, скачивает медиафайлы, смотрит истории и посты.

Python⭐ 186
jaipandya/producthunt-mcp-server

jaipandya/producthunt-mcp-server

от jaipandya

MCP-сервер для интеграции Product Hunt с AI-агентами. Получайте посты, коллекции, отзывы и данные пользователей через Model Context Protocol. Полезен разработчикам и энтузиастам, работающим с LLM и...

Python⭐ 55
devag7/linkedin-mcp

devag7/linkedin-mcp

от devag7

LinkedIn MCP сервер дает AI-агентам доступ к профилям, поиску и сообщениям через браузер. Обходит Cloudflare, использует Voyager API для чистого JSON. Есть защита от блокировки. Для рекрутинга и анализа.

TypeScript⭐ 10
karanb192/reddit-mcp-buddy

karanb192/reddit-mcp-buddy

от karanb192

MCP-сервер для просмотра Reddit через Claude и другие AI-ассистенты. Ищет посты, читает комментарии, анализирует профили — без регистрации API-ключа. Работает сразу, есть три уровня доступа (до 100 запросов/мин). Полезен, когда нужно быстро собрать обсуждения с Reddit.

TypeScript⭐ 860
drashrafsaiyed-cyber/instagram-mcp

drashrafsaiyed-cyber/instagram-mcp

от drashrafsaiyed-cyber

MCP-сервер для управления Instagram через Claude: публикуйте фото и рилс, отслеживайте аналитику, отвечайте на комментарии и DM. Идеален для контент-креаторов, врачей и малого бизнеса. Работает чер...

Python⭐ 2
© Каталог MCP, 2026. Все права защищены.
Проект не аффилирован с Anthropic и любыми упомянутыми продуктами.
Все названия и торговые марки принадлежат их владельцам.
Контакты для связи: hi@mcp-katalog.ru

Лука Никитин