Ravenpost
st.ravenpo/ravenpostSchedule & publish social media posts to Instagram, TikTok, X, LinkedIn, YouTube, Pinterest & more.
Score: 100/100
Handshake verified by our own probe.
Tools · 27
List every workspace this account can act in, with its id and the caller's role. Call this FIRST when more than one may exist: every other tool takes an optional workspaceId, and once there are severa…
List the social accounts connected to one workspace (Instagram, TikTok, X, Telegram, LinkedIn, Threads, Bluesky, YouTube and Pinterest; an account connected before its network was withdrawn still list…
List the posts in one workspace, 50 at a time: newest first, or soonest first when filtered to SCHEDULED. Optionally filtered by status (DRAFT, SCHEDULED, PUBLISHING, PUBLISHED, FAILED). `total` says …
Get one post by id, including its media, per-account targets and publish status — and, when a publish asked for through an assistant is waiting for the user to confirm it, what it would do and where t…
Render a post as each destination platform will show it — WITHOUT creating anything. Nothing is written, scheduled or published; call create_post afterwards with the same arguments to actually post it…
Create a post and either publish it now, schedule it, queue it, or save it as a draft. action "now" — and a schedule less than 15 minutes ahead, which is a publish under another name — does NOT publis…
Edit an existing post (draft or scheduled) — caption, hashtags, format, media or target accounts. A published/publishing post can no longer be edited. IMPORTANT: editing resets the post to a DRAFT. To…
Permanently delete Ravenpost’s copy of a post and cancel any scheduled publish — the post cannot be restored. Use this to remove drafts or duplicate/obsolete scheduled posts. It never takes a post dow…
Schedule (or reschedule) an existing post for a future time, without editing its content. Give scheduledAt as an absolute ISO 8601 datetime (include the offset, e.g. 2026-07-05T09:00:00+03:00). Resche…
Publish an existing post (e.g. a draft) once the user confirms it, without editing its content. It does NOT publish by itself: the post waits for the user, who confirms it with the Publish button on t…
Release a publish the user has just confirmed on the post card. The card calls this when the person presses its Publish button; it is hidden from models and is not for one to call — `confirmation` is …
Upload an image or a video (mp4/mov/webm) to the media library, returning a media id for create_post. Each call adds a new asset to this workspace’s private library; nothing already there is replaced,…
Get a presigned URL to upload a file straight to storage — no base64 through this channel, no third-party host. Best for large files and production. The URL grants write access to this workspace’s own…
Save an already-uploaded object (from create_media_upload) to the media library and return a media id. Works for images and videos (mp4/mov/webm). Images can optionally be reformatted to a publishing …
List recent media assets in one workspace (id, url, type, dimensions) — reuse an existing asset id in create_post instead of re-uploading. The library is per workspace, like the accounts.
List the supported image formats and their target dimensions (for choosing a format in upload_media).
Reshape ONE image already in the media library into several platform canvases at once, and return the new asset ids: feed_portrait (1080×1350, 4:5), feed_square (1080×1080), landscape (1080×566, 1.91:…
Get one workspace's analytics overview: follower counts per connected account (plus a daily follower series for the last 30 days) and engagement on recent posts. A post's `source` says where it came f…
Search Instagram’s audio catalog for tracks that can be attached to a reel, then pass the chosen track’s id as create_post/update_post `audio.audioId`. Call it WITHOUT a query to get what is currently…
List the workspace posting schedule: the recurring weekly queue slots (weekday + local time) that action="queue" publishes into, plus `nextFreeSlot` — the next slot no post is booked into, which is wh…
List the boards on one of the user's own connected Pinterest accounts, read live from Pinterest's API with that account's token. It reads that one account only: nothing on Pinterest is created, change…
Return per-platform caption limits, media rules, thread limits, and recommended media specs (dimensions, container formats, size/duration caps). Consult this BEFORE generating or picking media for a p…
List the video templates create_video can render, with what each one is for, the fields it reads and the ones it cannot do without, plus the canvases (9:16, 1:1, 16:9) and what a video and a screensho…
Render a short branded video (9:16 vertical by default; also square and landscape) and save it to the media library as an mp4 — returning a media id create_post takes as mediaIds. Either a storyboard …
Check a render create_video or capture_screenshot started: its status (queued, rendering, ready, failed), progress and, once ready, the media ids and URLs. Reads one row; nothing is changed. Set `wait…
Take screenshots of a web page — the workspace's own site, usually — with a headless browser, as a desktop (1440×900 at 2×) and/or a mobile (390×844 at 3×) capture, and save them to the media library …
Copy an app's store listing pictures — its phone screenshots and its icon — from the App Store or Google Play into the media library, returning media ids: the screenshots become shots for create_video…
Resources · 1
A post rendered the way each destination platform shows it, with the per-platform character count and anything that would be rejected.
ui://ravenpost/post-preview.html
How to use
Claude Desktop or claude.ai: add a custom connector (Customize → Connectors; on Team and Enterprise plans an owner adds it under Organization settings → Connectors) with this server URL: https://api.ravenpo.st/mcp
Cursor or Cline: add to your MCP config:
{
"mcpServers": {
"ravenpost": {
"url": "https://api.ravenpo.st/mcp",
"transport": "streamable-http"
}
}
}