
Schedule posts to 7 social networks, render video and carousels, read analytics and revenue.
Public tool metadata for what this MCP can expose to an agent.
list_postsList posts, filter by status/platformList posts, filter by status/platform
No parameter schema in public metadata yet.
get_postFetch one postFetch one post
No parameter schema in public metadata yet.
create_postCreate a draft or scheduled post (per-platform content/settings/media, UTM overrides, timezone)Create a draft or scheduled post (per-platform content/settings/media, UTM overrides, timezone)
No parameter schema in public metadata yet.
update_postUpdate a draft/scheduled postUpdate a draft/scheduled post
No parameter schema in public metadata yet.
delete_postDelete a postDelete a post
No parameter schema in public metadata yet.
publish_postPublish immediatelyPublish immediately
No parameter schema in public metadata yet.
retry_failedRe-queue the platforms that failed for a transient reason; never re-posts one that went outRe-queue the platforms that failed for a transient reason; never re-posts one that went out
No parameter schema in public metadata yet.
get_delivery_reportThe morning check: recent failed or partly failed posts with each platform's error and fix, unhealthy connections, approvals running lateThe morning check: recent failed or partly failed posts with each platform's error and fix, unhealthy connections, approvals running late
No parameter schema in public metadata yet.
preview_postShow exactly what each platform will receive (text after overrides, attachments, warnings)Show exactly what each platform will receive (text after overrides, attachments, warnings)
No parameter schema in public metadata yet.
bulk_create_postsCreate a whole campaign of posts from one manifestCreate a whole campaign of posts from one manifest
No parameter schema in public metadata yet.
list_campaignsCampaign tags in use, with post counts by status and platformCampaign tags in use, with post counts by status and platform
No parameter schema in public metadata yet.
delete_postsBulk-delete posts matching a filter (a filter is required)Bulk-delete posts matching a filter (a filter is required)
No parameter schema in public metadata yet.
list_mediaMedia already uploaded, so an asset can be reused instead of re-uploadedMedia already uploaded, so an asset can be reused instead of re-uploaded
No parameter schema in public metadata yet.
upload_mediaGet a presigned URL to upload an image/videoGet a presigned URL to upload an image/video
No parameter schema in public metadata yet.
repurpose_contentSave repurposed content as draft postsSave repurposed content as draft posts
No parameter schema in public metadata yet.
list_connectionsConnected social accountsConnected social accounts
No parameter schema in public metadata yet.
list_account_groupsNamed account groups (e.g. "Polish Pages")Named account groups (e.g. "Polish Pages")
No parameter schema in public metadata yet.
get_account_groupResolve a group by id/name/default → connection IDsResolve a group by id/name/default → connection IDs
No parameter schema in public metadata yet.
create_account_groupCreate a named group bundling connectionsCreate a named group bundling connections
No parameter schema in public metadata yet.
update_account_groupRename, recolour, set default, or replace a group's connectionsRename, recolour, set default, or replace a group's connections
No parameter schema in public metadata yet.
delete_account_groupDelete a group (the accounts stay connected)Delete a group (the accounts stay connected)
No parameter schema in public metadata yet.
add_connections_to_groupAdd connections to a groupAdd connections to a group
No parameter schema in public metadata yet.
remove_connections_from_groupRemove connections from a groupRemove connections from a group
No parameter schema in public metadata yet.
get_connection_linkLink the user opens in a browser to connect a new social account (OAuth needs a human)Link the user opens in a browser to connect a new social account (OAuth needs a human)
No parameter schema in public metadata yet.
submit_for_approvalSend a post to a human reviewer (required when the API key is approval-gated)Send a post to a human reviewer (required when the API key is approval-gated)
No parameter schema in public metadata yet.
list_pending_approvalsPosts waiting for review, with outcomesPosts waiting for review, with outcomes
No parameter schema in public metadata yet.
get_approval_statusPending / approved / rejected / changes requested for one submissionPending / approved / rejected / changes requested for one submission
No parameter schema in public metadata yet.
get_best_timesBest posting times per platform from the account's engagement historyBest posting times per platform from the account's engagement history
No parameter schema in public metadata yet.
suggest_scheduleSpread N posts across a date range at optimal times; returns concrete timestampsSpread N posts across a date range at optimal times; returns concrete timestamps
No parameter schema in public metadata yet.
get_posting_scheduleWeekly queue slots, global plus per-group overridesWeekly queue slots, global plus per-group overrides
No parameter schema in public metadata yet.
set_posting_scheduleReplace the weekly queue slots for the global schedule or one group (Pro)Replace the weekly queue slots for the global schedule or one group (Pro)
No parameter schema in public metadata yet.
list_video_templatesBrowse video templates and their editable fieldsBrowse video templates and their editable fields
No parameter schema in public metadata yet.
create_videoSubmit a render job from a templateSubmit a render job from a template
No parameter schema in public metadata yet.
get_video_statusPoll a render; completed renders return download URLsPoll a render; completed renders return download URLs
No parameter schema in public metadata yet.
generate_carouselDecompose long-form content into carousel slide textDecompose long-form content into carousel slide text
No parameter schema in public metadata yet.
list_carousel_stylesTemplate families, 40-palette library, formats, font pairingsTemplate families, 40-palette library, formats, font pairings
No parameter schema in public metadata yet.
render_carouselRender slides into branded PNGs in the media libraryRender slides into branded PNGs in the media library
No parameter schema in public metadata yet.
get_carousel_renderPoll a render; completed renders return post-ready media assetsPoll a render; completed renders return post-ready media assets
No parameter schema in public metadata yet.
list_brand_kitsSaved brand kits (palette, fonts, logo, handle) for render_carouselSaved brand kits (palette, fonts, logo, handle) for render_carousel
No parameter schema in public metadata yet.
generate_imageGenerate an image with AI for a post (1 AI credit); pass the URL to create_postGenerate an image with AI for a post (1 AI credit); pass the URL to create_post
No parameter schema in public metadata yet.
list_content_sourcesList WordPress/RSS sourcesList WordPress/RSS sources
No parameter schema in public metadata yet.
add_content_sourceConnect a WordPress site or RSS feedConnect a WordPress site or RSS feed
No parameter schema in public metadata yet.
delete_content_sourceRemove a sourceRemove a source
No parameter schema in public metadata yet.
fetch_source_contentImport the latest content nowImport the latest content now
No parameter schema in public metadata yet.
list_imported_contentList imported content for repurposingList imported content for repurposing
No parameter schema in public metadata yet.
get_analyticsPost performance (impressions, likes, comments, shares)Post performance (impressions, likes, comments, shares)
No parameter schema in public metadata yet.
get_revenue_overviewRevenue totals + trend; optionally recent transactions and Stripe/RevenueCat MRRRevenue totals + trend; optionally recent transactions and Stripe/RevenueCat MRR
No parameter schema in public metadata yet.
get_brand_voicesTone-of-voice profiles analysed from the user's contentTone-of-voice profiles analysed from the user's content
No parameter schema in public metadata yet.
get_brand_voice_promptReady-to-use system prompt for a voice; apply it when drafting postsReady-to-use system prompt for a voice; apply it when drafting posts
No parameter schema in public metadata yet.
Sponsors
PLANPOST_API_KEY*secretPlanPost API key from Settings -> API Keys (starts with pk_live_).
PLANPOST_API_URLdefault: https://api.planpo.stAPI base URL. Only change it for a self-hosted PlanPost.
MCP (Model Context Protocol) server for PlanPost, the agentic social scheduler with revenue attribution. It lets Claude, ChatGPT, Cursor, Gemini CLI and other AI agents schedule social media posts, create videos and carousels, manage content sources, and read analytics and revenue data by talking to your PlanPost account.
Add https://mcp.planpo.st/mcp to your agent as a remote MCP server (a
"connector" in Claude and ChatGPT) and leave the authentication fields empty.
The first time the agent uses it, a browser opens on planpo.st: log in, review
what the agent may do, and choose whether its posts wait for your approval.
No key to create or paste.
claude mcp add --transport http planpost https://mcp.planpo.st/mcp
{ "mcpServers": { "planpost": { "url": "https://mcp.planpo.st/mcp" } } }
Connected agents are listed under Settings → API Keys → Connected apps, where you can remove one at any time. They use the same permissions and the same monthly call allowance as API keys.
planpost-mcp