BulkPublish MCP Server

Social media automation for AI agents.

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

What it can do

  • List Channels: List all connected social media channels (X/Twitter, Instagram, LinkedIn, Facebook, TikTok, etc.). Returns channel ID, platform, account name, and token status.
  • Create Post: Create a new social media post. Can be saved as a draft or scheduled for a specific time. Supports platform-specific content overrides, media attachments, labels, and thread format. IMPOR
  • List Posts: List posts with optional filters for status, search text, date range, channel, and label. Returns paginated results with platform statuses and metrics.

What data it sees

Do you need an account

No: the server works without sign-in

Social media automation for AI agents. Schedule posts, upload media, manage channels, and track analytics across 11 platforms — all from your AI assistant.

29 Tools

Category Tools
Posts create_post, update_post, delete_post, list_posts, get_post, publish_post, retry_post, get_post_metrics, publish_story, bulk_posts
Channels list_channels, get_channel_health, get_channel_options, search_mentions
Media upload_media (URL or local file), list_media, get_media, delete_media
Labels list_labels, create_label, update_label, delete_label
Schedules list_schedules, create_schedule, update_schedule, delete_schedule
Analytics get_analytics
Quota get_quota_usage
Queue get_queue_slot

Supported Platforms

Facebook, Instagram, X/Twitter, TikTok, YouTube, Threads, Bluesky, Pinterest, Google Business Profile, LinkedIn, Mastodon

Setup

npx -y @bulkpublish/mcp-server

Requires BULKPUBLISH_API_KEY environment variable. Get your key at app.bulkpublish.com/developer.

Links

Server tool list (35)

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

list_channelsList all connected social media channels (X/Twitter, Instagram, LinkedIn, Facebook, TikTok, etc.). Returns channel ID, platform, account name, and token status.
create_postCreate a new social media post. Can be saved as a draft or scheduled for a specific time. Supports platform-specific content overrides, media attachments, labels, and thread format. IMPORTANT: YouTube and TikTok REQUIRE video — do not include them when posting images only. Instagram defaults to feed_photo — set postTypeOverrides for video content (reel, feed_video).
list_postsList posts with optional filters for status, search text, date range, channel, and label. Returns paginated results with platform statuses and metrics.
get_postGet a single post by ID with full details including platform statuses, labels, media files, recurring schedule info, and metrics.
publish_postPublish a draft or scheduled post immediately. The post will be queued for publishing to all its target channels.
retry_postRetry publishing a failed or partially failed post. Only retries the platforms that failed, not the ones that already succeeded.
upload_mediaUpload a media file (image or video) from a URL or local file path. The file is stored in BulkPublish for use in posts. Supported formats: JPEG, PNG, WebP, GIF, MP4, MOV, WebM. Max 100MB. Provide either url OR filePath, not both.
list_mediaList uploaded media files with optional search and pagination. Returns file metadata including URLs, dimensions, and labels.
get_analyticsGet an analytics summary for a date range. Returns total posts, status breakdown (published, failed, scheduled), per-platform stats, and daily post counts.
list_labelsList all labels available for tagging posts and media.
create_labelCreate a new label for organizing posts or media files.
get_quota_usageCheck current quota usage for your BulkPublish plan. Returns daily/monthly post limits, scheduled post limits, channel limits, media storage usage, and more.
update_postUpdate an existing post. Can change content, status, schedule, media, labels, and platform-specific settings.
delete_postDelete a post by ID. Only draft and failed posts can be deleted.
get_post_metricsGet engagement metrics for a published post. Returns likes, comments, shares, impressions, and other platform-specific metrics.
publish_storyPublish a post as a story on Facebook or Instagram.
bulk_postsPerform a bulk action on multiple posts. Supports deleting or retrying multiple posts at once.
get_queue_slotGet the next available queue slot for a channel. Useful for finding optimal scheduling times based on the channel's posting schedule.
get_channel_healthCheck the health status of a connected channel. Returns token validity, connection status, and any issues.
get_channel_optionsGet platform-specific options for a channel (e.g. available post types, character limits, media requirements).
search_mentionsSearch for @mention suggestions on a channel. Useful for finding users/pages to mention in posts.
get_mediaGet details of a single media file by ID. Returns metadata, URL, dimensions, and labels.
delete_mediaDelete a media file by ID. Removes the file from storage and detaches it from any posts.
update_labelUpdate an existing label's name or color.
delete_labelDelete a label by ID. Removes the label from all associated posts or media.
list_schedulesList all recurring post schedules. Returns schedule name, cron expression, target channels, and active status.
create_scheduleCreate a new recurring post schedule. Posts will be automatically created and published based on the cron expression.
update_scheduleUpdate an existing recurring schedule. Can change name, content, cron expression, timezone, or active status.
delete_scheduleDelete a recurring schedule by ID. Stops all future posts from this schedule.
compose_postOpen an interactive composer to draft or schedule a social media post. Shows the user's connected channels to pick from and pre-fills any provided text. The user finishes in the UI; on submit it creates the post via create_post.
view_analyticsOpen an interactive analytics dashboard for a date range — totals, status breakdown, per-platform stats, and daily post counts.
view_postsOpen an interactive list of posts with their status, schedule, and channels. Optionally filter by status.
view_channelsOpen an interactive view of connected social channels with platform, account, and connection/token status.
view_mediaOpen an interactive gallery of uploaded media files with thumbnails and metadata.
view_quotaOpen an interactive view of current plan quota usage — daily/monthly post limits, channel limits, and media storage.