uplika

Tell your agent, and it posts to the channels you connected.

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

Что умеет

  • List Accounts: Connected social accounts. **Call this before publishing anything.** Each item has id, platform (threads etc.), handle and status. The accountIds you pass to publish are these ids, and
  • Select Channels: Pick which connected channels to post to. **Call this before publish and show the result to the person.** Leave scope empty to get the candidate list and let them choose. Use scope: "
  • List Platforms: Every channel and its rules: character limit, whether media is required, image count and size limits, and whether it is live yet. Read this instead of guessing a platform's limits.

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

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

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

Tell your agent, and it posts to the channels you connected. 17 tools over MCP: list channels, read each platform's limits, publish text or images, fetch metrics, reply, delete.

Threads is live; nine more channels await platform review.

Docs: https://uplika.com/en/docs/mcp

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

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

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

https://uplika.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 не видит.

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

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

https://uplika.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 откроет окно входа в сервис. Войдите и подтвердите доступ.

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

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

https://uplika.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 появится кнопка авторизации.

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

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

list_accountsConnected social accounts. **Call this before publishing anything.** Each item has id, platform (threads etc.), handle and status. The accountIds you pass to publish are these ids, and only "active" ones publish. If the person did not name a channel, target every active account.
select_channelsPick which connected channels to post to. **Call this before publish and show the result to the person.** Leave scope empty to get the candidate list and let them choose. Use scope: "all" for every active channel, or an array mixing platform names ("threads"), handles ("@vibe.trender") and account ids. Duplicates are folded, expired and not-yet-live channels are dropped into `skipped` with a reason. Pass the returned accountIds to publish unchanged. `limits` is the tightest rule across the chosen channels, so write to that.
list_platformsEvery channel and its rules: character limit, whether media is required, image count and size limits, and whether it is live yet. Read this instead of guessing a platform's limits.
list_postsRecent publishes made through us and the per-target status of each. Posts that already existed on the channel are not here — use list_channel_posts for those.
list_channel_postsWhat is actually on the channel right now, including posts written in the Threads app. Use this to find a post when you do not have its link. Each item carries a permalink you can pass straight to open_post, reply or delete_post.
publishPost to social channels. Channels open today: threads. Get accountIds from select_channels — do not guess which channel the person meant. Threads text is up to 500 characters and emoji count as UTF-8 bytes. Over the limit nothing goes out to any channel, so shorten it before calling. To attach images, call media_presign and media_complete first, then pass the media ids here.
open_postEverything about one post in a single call: the text, the whole reply thread, and its metrics. This is the right tool when someone hands you a post link. Replies or metrics can come back null if the platform refused just that part.
get_postOne publish: per-target status and the reason any target failed. For a post link you probably want open_post instead.
retry_postRetry the targets that failed on a publish. Targets that already went out are left alone, so this never double-posts. If nothing failed you get nothing_to_retry. Only applies to posts published through us.
delete_postDelete a post from the channel for good. This is not reversible, so confirm with the person first. Threads allows 100 deletes a day. Works on posts written in the Threads app as well, given the link.
list_repliesThe whole reply thread under a post, nested replies included. `truncated` tells you we stopped before the end. The count here can differ from the replies metric in get_insights, which is normal.
replyReply to a post or to a reply. Leave replyTo empty to reply to the post itself; pass a reply id from list_replies to nest a reply under that reply.
hide_replyHide a reply on the channel, or show it again with hide: false. The reply id comes from list_replies, and postId is the publish it belongs to.
get_insightsViews, likes, replies, reposts, quotes and shares for one publish. Views and shares can be null when the platform does not report them yet — null is not zero.
get_quotaHow much of the 24 hour allowance is already used for posts, replies and deletes. Check this before a burst of publishing. This is live usage from the platform, not the static limits in list_platforms.
media_presignStep 1 of attaching an image. Returns a media id and a one-time uploadUrl. PUT the file bytes to uploadUrl with the same contentType, then call media_complete. Images only for now: image/jpeg, image/png, up to 8MB, 320-1440px wide.
media_completeStep 2 of attaching an image. Call it after the upload finishes. We check the file really landed before marking it ready. Only a ready media id can be passed to publish.