ShortSync
एक ही अपलोड से TikTok, YouTube Shorts, Instagram, X, LinkedIn और अन्य पर शॉर्ट-फ़ॉर्म वीडियो, इमेज और टेक्स्ट शेड्यूल और पब्लिश करें, और पोस्ट एनालिटिक्स पढ़ें।
होस्ट किया गया MCP सर्वर
npx add-mcp 'https://www.shortsync.app/api/mcp'Claude Code, Codex, Cursor और अन्य में इंस्टॉल होता है
दस्तावेज़
Connect ShortSync to your AI app
Let Claude Desktop, Cursor, or any MCP-compatible AI client read your ShortSync data and act on your behalf, using the Model Context Protocol.
What is MCP? The Model Context Protocol is an open standard that lets an AI client talk to an application on your behalf. When you connect ShortSync, the AI can call a curated set of tools such as listing your workspaces or your upcoming scheduled posts. Every call is scoped to your account.
1
Add ShortSync to your AI client
The MCP endpoint is https://www.shortsync.app/api/mcp. Add it as a custom connector in your AI client. The steps below show Claude; Cursor, Continue, and other MCP clients accept the same URL.
Claude (web or desktop app)
Open Customize → Connectors, click + Add, and choose Add custom connector. On Claude's Free plan you can add one custom connector; Team and Enterprise owners add it under Organization settings → Connectors, then each member clicks Connect.

Name it ShortSync (or anything you like), paste the endpoint URL, and click Continue. Keep the sign-in settings Claude detects (if it asks for an OAuth client, choose Register automatically; you don't need a client ID or secret), then click Add.

Claude Desktop config file (advanced)
Prefer to edit the config file directly? Add this to your claude_desktop_config.json. On macOS: ~/Library/Application Support/Claude/claude_desktop_config.json. On Windows: %APPDATA%\Claude\claude_desktop_config.json.
{
"mcpServers": {
"shortsync": {
"type": "http",
"url": "https://www.shortsync.app/api/mcp"
}
}
}
Restart Claude Desktop after editing the file.
2
Complete the connection
The first time Claude calls ShortSync, it opens a browser to sign you in (if you aren't already) and shows a consent screen listing exactly what the app is asking for. Click Allow to complete the connection.

Uploading videos and thumbnails from Claude.ai
The create_video_upload and create_post_thumbnail_upload tools return a presigned URL pointing at amazonaws.com. By default Claude.ai's code execution sandbox blocks that host, so the PUT fails with host_not_allowed. To let Claude push the bytes for you, allow the host once:
- In Claude.ai, open Settings → Capabilities → Code execution and file creation.
- Turn on Cloud code execution and file creation and Allow network egress.
- Under Additional allowed domains, add
*.amazonaws.comand click Add. - Start a new conversation. The allowlist is applied when the sandbox is created, so existing chats keep the old rules and will still be blocked.

Cursor, Claude Desktop, and other clients that run tool calls on your own machine don't need this, since they can reach S3 directly.
Available tools
A curated selection of ShortSync actions is exposed via MCP. New tools are added over time; ask your AI client to run tools/list for the current inventory. As of today:
Account & workspace
Where you have access and what's connected.
| Tool | Scope | Purpose |
|---|---|---|
| get_user_profile | read | Returns your ShortSync account info. |
| list_organizations | read | Lists organizations you belong to and your role. |
| list_workspaces | read | Lists workspaces you can access. |
| list_platform_connections | read | Lists which platforms are connected in a workspace. Connections that need a new sign-in include a reconnect_url. |
| get_connect_link | read | Returns a link you open to connect a platform to a workspace, or to reconnect one. It opens ShortSync in your browser and starts the platform's sign-in. The link only works while you're signed in to ShortSync. |
| get_workspace_status | read | One summary of what needs attention: connections to reconnect (with links), posts that failed and why, what's scheduled for the next 7 days, and your upload quota. |
| list_facebook_pages | read | Lists the Facebook Pages you can post to with a Facebook login you already made in ShortSync, and which Page the workspace uses now. |
| select_facebook_page | write | Connects Facebook to a workspace as a Page, or switches the Page, without signing in to Facebook again. |
| list_linkedin_authors | read | Lists who LinkedIn posts can go out as: you, or the Company Pages you manage. |
| select_linkedin_author | write | Sets whether the workspace's LinkedIn posts go out as you or as one of your Company Pages. |
| connect_discord_webhook | write | Adds a Discord channel from a channel webhook URL, right from the chat. |
| list_pinterest_boards | read | Lists the boards on the workspace's connected Pinterest account, for picking a boardId. |
| list_discord_channels | read | Lists the Discord channels connected to a workspace, for picking channelIds. Posts without channelIds go to the default channels. |
Videos & folders
Manage the library: upload new videos or images, organize them into folders.
| Tool | Scope | Purpose |
|---|---|---|
| list_video_uploads | read | Lists your video uploads across accessible workspaces. |
| list_folders | read | Lists folders in a workspace, including hierarchy info. |
| create_video_upload | write | Reserves a NEW library slot and returns a presigned S3 PUT URL so you can push bytes directly. Not for setting a cover on an existing post. Use create_post_thumbnail_upload for that. |
| create_video_upload_from_url | write | Downloads a video or image from a public https URL as a NEW library entry. Not for setting a cover on an existing post. Use update_post with custom_thumbnail_url instead. |
| finalize_video_upload | write | Confirms a create_video_upload PUT landed and links the new video_upload_id you can pass to create_post_draft. |
| list_opusclip_projects | read | Lists your OpusClip projects with their clip counts. Needs your OpusClip API key in Settings > Integrations. |
| list_opusclip_clips | read | Lists the clips OpusClip made in a project, with the caption each would get. |
| import_opusclip_clips | write | Imports OpusClip clips into the library and returns their video_upload_ids and OpusClip's captions, ready for create_post_drafts. Takes up to a minute while OpusClip renders them. |
| create_folder | write | Creates a folder in a workspace, optionally nested under a parent. |
| update_folder | write | Renames or moves (reparents) a folder. |
| delete_folder | write | Deletes a folder; videos inside become unfoldered. |
| move_video_to_folder | write | Files a video upload into a folder, or removes it from any folder. |
| create_carousel | write | Groups 2-50 already-uploaded items into a single carousel. Returns an upload_id you pass to create_post_draft. Per-platform limits (e.g. IG 10, TikTok 35, X 4) are enforced at publish time. |
Posts & thumbnails
Turn library items into drafts, edit captions and covers before publish.
| Tool | Scope | Purpose |
|---|---|---|
| get_post_details | read | Returns caption, title, description and status for a single post. |
| list_concepts | read | Lists the concepts on a workspace's Concepts board, optionally filtered by column, with their captions, platforms, planned date and linked upload. |
| create_concept | write | Records a content idea in a workspace before there's an upload to attach it to. Pass a planned date to place it on the content calendar. |
| update_concept | write | Edits a concept: title, notes, column, planned date, tags, caption, per-platform captions and first comments, platforms and YouTube title. |
| create_post_drafts_from_concept | write | Turns a concept into draft posts with its captions, first comments and YouTube title. Uses an upload you pass, the concept's attached image or video, or its earlier upload. The concept moves to Draft, then follows the posts to Scheduled and Published. |
| create_post_draft | write | Creates a draft post for a single platform from an existing upload. |
| create_post_drafts | write | Batch version — creates draft posts for multiple platforms in one call instead of calling create_post_draft per platform. |
| update_post | write | Edits caption, title, description, first comment, custom thumbnail (image URL, timeline frame, or an existing image upload; used as the cover on YouTube, Instagram Reels, Facebook Reels and Pinterest), and per-platform settings on any not-yet-published post. |
| batch_update_posts | write | Batch version: updates caption, title, description, first comment, and platform settings on multiple posts in one call. Give shared text once with a list of post ids, and per-post changes where they differ. Does not support thumbnails. |
| replace_post_media | write | Swaps the video or image behind a not-yet-published post for another upload in the workspace, keeping its schedule and captions. Pass apply_to_batch to swap every post scheduled together with it. |
| create_post_thumbnail_upload | write | Returns a presigned S3 PUT URL scoped to a specific post's custom-thumbnail slot. Does not create a library entry; ideal for local image files intended only as a cover. |
| finalize_post_thumbnail | write | Confirms a create_post_thumbnail_upload PUT landed and wires the image as the post's custom_thumbnail_url. |
Publishing & scheduling
Queue a draft for immediate publish or park it on a future time.
| Tool | Scope | Purpose |
|---|---|---|
| list_scheduled_posts | read | Lists upcoming scheduled posts, soonest first, with a caption preview, or failed posts with the reason. Can group each upload's platforms into one entry. |
| schedule_post | write | Schedules a draft video post to publish at a specific time. |
| batch_schedule_posts | write | Batch version — schedules multiple draft posts to the same time in one call instead of calling schedule_post per post. |
| cancel_scheduled_post | write | Cancels a scheduled post and returns it to draft. |
| publish_now | write | Publishes a draft or scheduled post immediately. |
| batch_publish_now | write | Batch version of publish_now. Publishes several posts immediately in one call: pass post IDs, or an upload ID (optionally narrowed to some platforms) to publish all of its drafts. |
Repurposing
Workflows that repost an Instagram or Facebook Page account's posts to your other accounts: each new post as it's published, or older posts on a weekly schedule. See Repurposing.
| Tool | Scope | Purpose |
|---|---|---|
| list_repurposing_workflows | read | Lists a workspace's workflows with their settings, status and, for scheduled ones, how many posts are published, scheduled and waiting. |
| list_repurposing_workflow_posts | read | Lists what a workflow reposted, scheduled or skipped, with each repost's library upload, per-platform posts, links and times. |
| create_repurposing_workflow | write | Creates a workflow: the source account, the accounts to repost to, and either how new posts are handled or the weekly time slots for older posts. |
| update_repurposing_workflow | write | Changes a workflow's settings, or pauses it and turns it back on. Pausing a scheduled workflow keeps its upcoming posts as drafts or removes them. |
| sync_repurposing_workflow | write | Runs a workflow now instead of at its next automatic run and reports what it reposted or scheduled. |
| cancel_repurposing_workflow_post | write | Cancels an upcoming repost. The workflow won't pick that post again. |
| delete_repurposing_workflow | write | Deletes a workflow. Published reposts stay; upcoming ones become drafts or are removed. |
Analytics
Rollups of published-post metrics from the local sync cache. Covers YouTube, TikTok, Instagram, Facebook, LinkedIn, Threads, Bluesky, Pinterest, Snapchat, and Mastodon. When the data is over an hour old, reading it also starts a background sync, so asking again a few minutes later returns fresh numbers. Numbers may differ from the live dashboard on Instagram, Facebook, and YouTube; see each tool's description for the caveat.
| Tool | Scope | Purpose |
|---|---|---|
| get_workspace_analytics | read | Summary totals of published-post analytics over a rolling window. |
| get_video_analytics | read | Metrics for one video upload, summed across platforms. |
| get_folder_analytics | read | Metrics for a folder, rolled up across videos and subfolders. |
| get_post_analytics | read | Metrics for one platform post (one post = one platform). |
| explain_post_analytics_state | read | Explains why a post's analytics look the way they do (missing sync, unsupported platform, etc.). |
| compare_instagram_accounts | read | Your Instagram next to up to 5 other public business or creator accounts: followers, posts, average likes, comments and Reel views, engagement, posts per week. Needs Facebook Login for Instagram. |
| sync_analytics | write | Refresh analytics from the connected platforms now, or check the progress of a running sync. |
Inbox (comments and DMs)
Read and act on incoming engagement across every connected account.
| Tool | Scope | Purpose |
|---|---|---|
| list_inbox_conversations | read | Lists inbox threads (comments + DMs) with sort, search, and answered/unanswered filters. |
| list_inbox_connections | read | Which platform accounts are wired into the inbox and their reply/DM/like capability flags. |
| get_conversation_messages | read | Returns the messages in an inbox thread, oldest-first. |
| resolve_linkedin_mention | read | Resolves a LinkedIn @-mention into the underlying profile so a reply can tag them correctly. |
| sync_inbox | write | Pull fresh threads and messages from every DM-enabled connection. |
| load_more_comments | write | Paginate deeper into a specific video/post's comment history. |
| reply_to_comment | write | Posts a reply to a comment or DM thread. |
| mark_conversations_seen | write | Batch mark inbox threads as read for the workspace. |
| mark_conversations_spam | write | Bulk flip the local spam moderation flag on inbox threads. |
| like_conversation | write | Like or unlike a top-level Instagram or Facebook comment thread. |
| like_message | write | Like or unlike a nested Instagram or Facebook comment reply. |
Workspace people
Lightweight CRM for the people you work with in this workspace.
| Tool | Scope | Purpose |
|---|---|---|
| list_workspace_people | read | Lists people saved in this workspace with their contact and role info. |
| upsert_workspace_person | write | Creates or updates a person record in the workspace. |
Ready-made prompts
Clients that support MCP prompts (slash commands in Claude Code and Cursor, the prompt menu in Claude) show these as one-click actions:
- What needs my attention? Broken connections, failed posts, the coming week and your quota.
- Post to all my platforms: upload a file or link, write the captions, then schedule or publish after you approve.
- Weekly analytics summary: last week compared with the week before, top posts and ideas for next week.
- Reply to new comments: drafts replies to unanswered comments and sends only the ones you approve.
- Connect a social account: a one-click link to connect or reconnect a platform.
Missing a tool you need? Email hilma@shortsync.app with what you want to do and I'll add it.
Revoke access
You can disconnect any AI app at any time from Settings → API & MCP. Revocation is immediate; the next tool call from that app will fail and the user will have to reconnect.
Limits
- Access tokens last 1 hour; refresh tokens last 30 days.
- Tool calls are rate-limited to 60 per minute per token, on top of your existing per-plan quota.
- Available on every plan, including Free. Expensive tools (uploads, analytics syncs) still count against your monthly quota.
MCP is different from the ShortSync REST API. For programmatic access with a static Bearer key, see API → Getting Started.