Outstand

Publish, schedule and measure social media posts across 12 networks through one MCP server: X (Twitter), LinkedIn, Instagram, TikTok, YouTube, Facebook…

Community: Submitted by a user or imported; check the owner before granting accessOnlineNo sign-inGlobalFreeCan modify data

What it can do

  • Create Post: Create and publish a social media post to one or more connected accounts. Supports text content, media attachments (via URL), scheduling up to 30 days in advance, multi-container threads/
  • Update Post: Update a post that has not been published yet. Every field is optional - only the fields you send are changed. You can change the text content and media (via `content` or `containers`), t
  • List Posts: List posts for the current organization with optional filters by tenant, social account, date ranges, and pagination. Returns posts sorted by creation date.

What data it sees

Do you need an account

No: the server works without sign-in

Publish, schedule and measure social media posts across 12 networks through one MCP server: X (Twitter), LinkedIn, Instagram, TikTok, YouTube, Facebook, Threads, Bluesky, Pinterest, Google Business Profile, Vimeo and Reddit.

28 tools covering the full publishing lifecycle:

  • Posts: create, read, list, update, delete, schedule and repost, plus deleting a post on the remote network.
  • Media: two-step upload (presigned PUT, then confirm), list, read and delete.
  • Replies: read the replies on a post and publish threaded replies to them.
  • Analytics: per-post analytics, per-account metrics and account usage.
  • Accounts: list and inspect connected accounts, generate OAuth connect URLs, connect Bluesky directly, list Pinterest boards, and manage your own app credentials for the networks that require them.

Authentication is OAuth with PKCE and dynamic client registration (RFC 7591), following the MCP authorization spec, so an agent connects once and posts on your behalf. There is no API key to paste.

One integration instead of one per network: the same tool calls target every connected account, and Outstand handles each network's API, token refresh and media rules.

Server tool list (28)

Raw names from tools/list. Only developers need these.

create_postCreate and publish a social media post to one or more connected accounts. Supports text content, media attachments (via URL), scheduling up to 30 days in advance, multi-container threads/carousels, and platform-specific configuration overrides for Instagram, TikTok, Threads, YouTube, Google Business, Pinterest, Vimeo, Reddit, and Facebook (including Stories and Reels).
update_postUpdate a post that has not been published yet. Every field is optional - only the fields you send are changed. You can change the text content and media (via `content` or `containers`), the scheduled publish time, the draft flag, and any platform-specific configuration. Sending `content` or `containers` replaces the post body entirely; platform config is merged per network and per field within a network, so passing only `tiktok.disableComment` leaves the stored TikTok `postMode`/`privacyLevel` and any YouTube config alone. Changing `scheduledAt` cancels the queued publishing job and re-creates it for the new time. The set of social accounts a post publishes to cannot be changed - delete the post and create a new one instead. Posts that are already published (even for a single account) cannot be edited.
list_postsList posts for the current organization with optional filters by tenant, social account, date ranges, and pagination. Returns posts sorted by creation date.
get_postGet detailed information about a specific post including its content containers and media attachments.
get_post_analyticsFetch engagement analytics for a published post across all social accounts. Returns per-account metrics (likes, comments, shares, views, impressions, reach, engagement rate) and aggregated totals. Only works for published posts. May refresh and replace stored platform credentials and persist resolved post identifiers and URLs. For Facebook video and single-photo posts the platform post id is resolved and cached on the first read, so platform_post_id may differ from the id returned at publish time. Engagement fields the platform does not expose are reported as 0 and named in platform_specific.unavailable_fields - check that array before reporting a 0 as a real count.
delete_postDelete a post. If the post is scheduled but not yet published, it will also be cancelled from the publishing queue.
delete_remote_postDelete a published post from all remote social network platforms it was published to. The Outstand database record is kept but the junction rows are marked as deleted. Networks that do not support post deletion (TikTok, Instagram, Threads) will be reported as failed while others are still attempted.
repost_postRepost (reshare) a published post to all remote social network platforms it was published to. Optionally pass a "quote" to add commentary on top of the repost where the network supports it (X quote tweet, Bluesky quote post, LinkedIn reshare with commentary, Threads quote post) - otherwise a plain repost/reshare is created. Returns per-account results. Networks that do not support reposting via API (Facebook, Instagram, Pinterest, TikTok, Google Business, Vimeo, YouTube) will be reported as failed while others are still attempted.
create_replyPublish a comment or reply on a post that was published through Outstand. Identify the target by either platform_post_id or account_username. Optionally thread the reply under a specific comment with parent_comment_id (Facebook, Instagram, LinkedIn, Threads).
get_repliesFetch comments and replies on a published post for a specific social account. May refresh and replace stored platform credentials before fetching replies. Requires network and username to identify which account. Set include_replies to nest each comment's replies (Facebook, Instagram, LinkedIn).
list_social_accountsList all connected social media accounts for the current organization. Use this to discover available accounts before creating posts. Filter by network platform, username, tenant ID, or specific account ID.
get_social_accountGet detailed information about a specific connected social media account by its ID.
delete_social_accountPermanently disconnect and remove a social media account from the organization. This action is irreversible.
connect_blueskyConnect a Bluesky account using a handle and app password. Unlike other platforms that use OAuth, Bluesky uses direct authentication. Create an app password at https://bsky.app/settings/app-passwords. Reconnecting a handle already connected for the same tenant replaces that account instead of creating a duplicate.
get_account_metricsFetch follower, engagement, and post metrics for a connected social account. Returns followers count, following count, posts count, and engagement data. Defaults to the last 30 days. May refresh and replace stored TikTok or Bluesky credentials before fetching metrics.
list_pinterest_boardsList all Pinterest boards for a connected Pinterest account. Required when creating Pinterest posts to know which board to target.
create_social_networkStore OAuth app credentials (client key and secret) for a social network platform. This is a BYOK (Bring Your Own Keys) setup - users provide their own OAuth app credentials obtained from each platform's developer portal.
list_social_networksList all configured social network OAuth credentials for the organization. Secrets are never returned.
get_social_networkGet details of a specific social network configuration by ID. Secrets are never returned.
update_social_networkUpdate OAuth credentials for a configured social network. Use when rotating keys or updating app credentials.
delete_social_networkRemove a social network configuration and its OAuth credentials. This is irreversible and may affect connected accounts.
get_auth_urlGenerate an OAuth authorization URL for connecting a new social media account. The user must visit this URL in a browser to complete authorization.
upload_mediaRequest a presigned URL for uploading a media file. After receiving the URL, upload the file via HTTP PUT to the returned upload_url within 1 hour, then call confirm_media_upload to activate it.
confirm_media_uploadConfirm that a media file has been uploaded to the presigned URL. This activates the file and returns its public URL for use in posts. Files have a 60-day retention period.
list_mediaList all uploaded media files for the organization with pagination.
get_mediaGet details of a specific media file including its public URL, metadata, and size.
delete_mediaDelete an uploaded media file from storage.
get_account_usageGet current usage for the organization: connected social account count vs limit, post count for the current billing period, and billing period dates.
Outstand: connect to Claude, ChatGPT, Cursor · Connectors.fun