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.
Список инструментов сервера (17)
Технические названия из tools/list. Нужны только разработчикам.
| 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 only "active" ones publish. If the person did not name a channel, target every active account. |
| 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: "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_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. |
| list_posts | Recent 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_posts | What 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. |
| publish | Post 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_post | Everything 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_post | One publish: per-target status and the reason any target failed. For a post link you probably want open_post instead. |
| retry_post | Retry 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_post | Delete 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_replies | The 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. |
| reply | Reply 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_reply | Hide 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_insights | Views, 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_quota | How 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_presign | Step 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_complete | Step 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. |