Social Media Automation

How to Schedule Social Media Posts with MCP: Claude, ChatGPT or any AI agent (With Real Prompts)

Posting to social media with an MCP makes everything faster and easier. Just type "post this to Facebook" and it works, see how you can set it up for yourself.

Frank Heijdenrijk••Updated 10/15/2026•15 min read
How to schedule social media posts with MCP in Claude, ChatGPT, or any AI agent
Published10/15/2026
Updated10/15/2026
Fact-checkedYes
Expert reviewCompleted

You can now type "schedule this for Tuesday 9am on LinkedIn and Instagram" into Claude, and it actually happens. Not a draft you copy-paste, but a scheduled post sitting in your calendar. Here is exactly how to schedule social media posts with MCP, with the real prompts and what the AI did with them.

MCP stands for Model Context Protocol. It's the open standard that lets AI assistants call external tools, which is what turns a chatbot that writes captions into one that publishes them. Claude, ChatGPT and Cursor all support it, and so do newer agents like Grok, Hermes and Muse, each with its own setup page on our site.

What you get from this guide:

  • A working setup in about 5 minutes, in the client of your choice
  • 10 copy-paste prompts, each with the tool calls it triggers
  • Fixes for the things that go wrong

We use WoopSocial's MCP server throughout, but the steps work for any remote social media MCP server.

Quick answer: To schedule social media posts with MCP:

  1. get a social media MCP server URL,
  2. add it as a custom connector in Claude, ChatGPT or Cursor,
  3. connect your social accounts,
  4. ask the AI to schedule a post with a date, time and time zone,
  5. confirm the tool call.

What MCP Actually Does When It Schedules a Post (60-Second Explainer)

When you tell Claude to get a post scheduled, it does all the thinking: it writes the copy, selects the platforms, and determines the date. However, it doesn't have your Instagram login or directly communicate with LinkedIn. It makes a request to tools on an MCP server, and the server manages your account connections and does the posting.

Key points to take note of:

  • The AI writes and decides while the MCP server posts.
  • Your social passwords and tokens never touch the AI. It only sees a connection to the server.
  • You approve the actions. Most clients ask permission before each tool call, so there's a checkpoint before anything goes live.
code
You  →  Claude / ChatGPT / Cursor  →  MCP server (WoopSocial)  →  Instagram / LinkedIn / TikTok

There are two kinds of MCP servers. Remote servers live at a URL (nothing to install), and work in web clients. Local (stdio) servers run on your machine through Node or Python, which suits developers but doesn't work in web clients. This tutorial uses a remote server because it works everywhere.

For more context, check out our earlier post on social media MCP, the social media MCP page, and the Model Context Protocol spec.

What You Need Before You Start

  1. An AI client that supports remote MCP: Claude, ChatGPT, Cursor or Claude Code.
  2. A social media MCP server. We'll use WoopSocial's: one URL, 9 platforms, OAuth or API key, and a free plan with 2 accounts and no credit card.
  3. The right account types, where platforms require them. MCP can't change these:
  • Instagram needs a Business or Creator account
  • Facebook posts go to a Page, not a personal profile
  • LinkedIn Pages need you to have an admin role on the Page

Plan caveats

  • Claude: Custom connectors are available on paid plans, and Free allows one custom connector at the time of writing. Anthropic's current help article says so.
  • ChatGPT: Custom MCP servers live under Developer mode and the newer "Plugins" area. OpenAI's help centre says full MCP with write actions is in beta for Business and Enterprise/Edu, while the developer guide lists Pro, Plus, Business, Enterprise and Education. Scheduling is a write action, so check your plan.
  • Cursor: Available on all plans according to Cursor's current docs.

How to Schedule Social Media Posts with MCP in 5 Steps

Step 1: Get your MCP URL

Sign up for a free WoopSocial account, then go to app.woopsocial.com/api-access. You'll find two options:

  • OAuth URL (recommended): https://api.woopsocial.com/mcp. Paste it in and approve the popup. No key to copy.
  • API-key fallback: https://api.woopsocial.com/mcp?api_key=YOUR_KEY. For clients without the OAuth popup, like ChatGPT's "No Auth" option or a Cursor config.

The key is part of that URL, so treat it like a password. Don't paste it into shared chats or a public repo so it doesn't get leaked.

Step 2: Connect your social accounts

In the WoopSocial dashboard, connect the accounts you want to post to. It's a normal OAuth flow per platform. Later, you can also ask the AI for a connection link: the oauth_create_authorization tool creates an OAuth link.

Step 3: Add the connector to your AI client

Jump to yours: Claude, ChatGPT or Cursor and Claude Code.

Step 4: Verify the connection

Prompt:

List my social accounts in WoopSocial

You should see the social_accounts_list tool call, a permission prompt, and then a list of the accounts you connected.

Step 5: Schedule your first post

Schedule this post to LinkedIn and Instagram for Tuesday at 9:00 Amsterdam time: [your text + image]

The AI works through this sequence:

  1. social_accounts_list to find your LinkedIn and Instagram accounts
  2. A media upload, if you attached an image or video
  3. posts_validate to check the post against each platform's rules
  4. posts_create with SCHEDULE_FOR_LATER to queue it
  5. A confirmation with the post ID and the converted time

Make sure you read that confirmation. That's where you catch any issues. A good scheduling prompt always has four elements: the platform, the content, the date and time, and a time zone. If you omit one, the AI will typically ask, which is fine, but spelling them out the first time makes a double check unnecessary.

There's the entire process involved. All following prompts will be essentially a variation on Step 5, and the first time you run it, it's worth opening the dashboard calendar to make sure the post ended up where you intended. After that you can mostly trust the confirmation message.

Set Up in Claude (Web, Desktop and Cowork)

Here's the best way to set up in Claude:

  1. Simply go to the Claude connector marketplace for WoopSocial
  2. Click "Connect to Claude"
  3. Log in with WoopSocial
  4. Start posting

Enable it per chat. In a new chat, open the "+" menu, go to Connectors, and toggle woopsocial on.

Permissions. Claude asks for approval before each tool call, with "Allow once" or "Always allow". Fine to always keep approval on for tools like posts_create.

Media gotcha. If an upload fails, add *.cloudflarestorage.com under Settings → Capabilities → domain allowlist. Media is uploaded there, and Claude's network settings can block it by default.

Claude Desktop. Remote servers are added through Connectors, not claude_desktop_config.json. Anthropic's docs say the config file won't connect remote servers.

Set Up in ChatGPT

ChatGPT works, with a few more limits. Read them first.

  1. Go to Settings → Apps → Advanced settings and turn Developer mode on
  2. Click Create app
  3. Name: WoopSocial. Description: Publish social media content
  4. URL: https://api.woopsocial.com/mcp?api_key=YOUR_KEY
  5. Authentication: "No Auth"

"No Auth" looks odd, but the key in the URL does the authentication. In the newer path, go to chatgpt.com/plugins, click +, and choose "Add custom MCP server".

ChatGPT asks you to confirm write actions by default. Leave that on, it's your approval step, and it gives you a last look at the text, platforms and time before anything is queued. Use the app in chat with @WoopSocial or by selecting it.

Limits to note:

  • Web only, no mobile
  • Agent mode doesn't use custom apps, per OpenAI's help centre
  • Refresh the app after server updates
  • Write actions are beta on some plans

OpenAI's developer mode guide has more details. Here's a good test prompt:

Turn this blog post into a LinkedIn post and an X post and schedule both for tomorrow 8am CET.

Set Up in Cursor (and Claude Code for Developers)

Cursor, fastest route: use "Add to Cursor" on WoopSocial's Cursor Directory listing.

Cursor, manual route: edit ~/.cursor/mcp.json:

json
{
  "mcpServers": {
    "woopsocial": {
      "url": "https://api.woopsocial.com/mcp?api_key=${env:WOOPSOCIAL_API_KEY}"
    }
  }
}

Use ${env:} so the key stays out of the file and out of your repo. Cursor's MCP docs have the current reference.

Claude Code is a one-liner:

bash
claude mcp add --transport http woopsocial "https://api.woopsocial.com/mcp"

Run /mcp, find woopsocial, and choose Authenticate.

The developer use case. The changelog post is the task everyone forgets:

When I merge a release PR, draft the changelog post and schedule it to LinkedIn Pages and X.

The agent reads the PR, so the draft is what is shipped, not some generic announcement. Then the agent schedules through whatever tool calls it through everywhere else. Prefer to review the message first? Just add "save it as a draft" in the prompt and approve it from the dashboard.

10 MCP Prompts for Scheduling Social Media Posts (Copy-Paste)

Swap the parts in brackets for your own content. Each prompt shows the tool calls it triggers.

1. See what's connected

List my connected accounts

Triggers: social_accounts_list. Check if everything is intact - if this is wrong, nothing else works.

2. Schedule to one platform with a specific ime zone

Schedule [text] to LinkedIn for Tuesday 09:00 Europe/Amsterdam

Triggers: social_accounts_list → posts_validate → posts_create (SCHEDULE_FOR_LATER). Expect a confirmation with the post ID and UTC time.

3. Post an Instagram Reel now

Post this now to Instagram as a Reel with this caption: [caption] [attach video]

Triggers: media upload → posts_validate → posts_create with the Reel post type. An Instagram professional account is needed here.

4. One announcement, rewritten per platform

Same announcement on LinkedIn, X and Threads, but rewrite it for each: [announcement]

Triggers: posts_validate → posts_create with contentOverride per target. One post, and you get separate copy for each platform.

5. Save as a draft for approval

Save this as a draft. I'll approve it in the dashboard

Triggers: posts_create with DRAFT. Best when a client or manager signs off first.

6. Plan a whole week

Plan and schedule 5 posts for next week, one per weekday at 10am, about [topic]. Show me the plan first

Triggers: posts_validate → repeated posts_create calls (bulk). Asking for the plan first gives you an edit point.

7. Pin an image to a board

Pin this image to my 'Recipes' board with a link to [URL]

Triggers: posts_validate → posts_create with pinterestBoardId and link. Pinterest requires a board for every Pin.

8. Upload to YouTube as unlisted

Upload this video to YouTube as unlisted, titled [title]

Triggers: media upload → posts_validate → posts_create. YouTube requires a title and privacy setting, so include both.

9. Post to TikTok with the required toggles

Post this TikTok video, public, comments on, label as AI-generated

Triggers: media upload → posts_validate → posts_create with TikTok's required toggles plus isAiGeneratedContent.

10. Check what's scheduled and what failed

What's scheduled this week, and did anything fail?

Triggers: social_account_posts_list, filtered by delivery status.

Make sure to bookmark this list. After you've tried out each prompt, you'll come up with your own variations. AI isn't following a script, so you can mix them up any way you want.

The Details You Need To Know

Time zones

The API schedules in UTC (the scheduledFor field). The AI converts for you, but only if it knows what zone you're in. Always include a city or zone ("9am Amsterdam time", "8am CET"), then make sure to read the converted time in the confirmation. This is especially relevant when travelling or working across time zones: "9am" means something different to you than it does to others, so clarify whose 9am you're referring to.

Images and video

Media uploads in chunked sessions to 5 GB via MCP, so large videos are okay. WoopSocial resizes per platform with FFmpeg, so one source file can be used on multiple platforms. If you get an upload failure for a Claude, check the domain allowlist.

Validation before posting

The agent can call posts_validate, which returns errors and warnings without creating anything. Validation is all-or-nothing: if one target has a problem, the whole post is blocked. That's a safety feature, because you never end up live on four platforms and missing from a fifth. When it happens, the AI tells you which target failed and why, so you can fix that one setting and try again.

Failed posts and retries

retryPolicy allows 1 to 5 retries with a delay from 60 seconds to 24 hours. Timeouts and brief rate limits retry automatically. Failures that need you, like a disconnected account or no credits, aren't retried. Failures can also trigger a webhook, or a Zapier or Make trigger. For bigger automations, see our guide to the best social media API for n8n.

Approvals

Use two layers - DRAFT status on the server and tool approval in the client. You should never choose "always allow" for posts_delete.

Platform rules MCP doesn't remove

  • TikTok requires privacy and interaction choices on every post
  • Pinterest needs a board for every Pin
  • YouTube needs a title and privacy setting
  • Instagram needs a Business or Creator account
  • X posting uses credits after the first few.

Troubleshooting

SymptomLikely causeFix
Connector won't addURL typo, or a plan limitRe-copy https://api.woopsocial.com/mcp exactly, then check your plan's custom connector limit.
OAuth popup doesn't appearPopup blockerAllow popups for the client's site or use the API-key URL.
"No accounts found"Accounts are connected in a different projectUse the connection for the same project where you connected the accounts.
Media upload failsDomain not on the allowlist (Claude)Add *.cloudflarestorage.com under Settings - then go to Capabilities.
Wrong posting timeTime zone not statedName a city or zone, and check the time (UTC) in the confirmation.
Agent says it posted, nothing appearscheck delivery statusAsk: "Check the delivery status of my last post."
ChatGPT tools are read-onlyPlan doesn't include MCP write actionsCheck your plan, or run the same flow in Claude or Cursor.

Which MCP Server Should You Use?

Considering all important metrics, WoopSocial is the best MCP server you can use. Nine platforms, remote, OAuth or API key, 22 tools, and a free plan with 2 accounts. Pro is just $19 per month for 20 accounts.

Here are a few alternatives:

  • Buffer MCP: good if you already use Buffer.
  • Postiz: open-source, good for self-hosting.
  • Zernio: the broadest list of networks.
  • Ayrshare: long-standing, but with no OAuth it can't be added as a claude.ai connector, per its own docs.

See the full roundup of the best social media MCP servers, or the social media API for AI agents page if you're building something custom.

FAQ

Can Claude post to social media?

Yes, once you add a social media MCP server as a custom connector. Claude calls tools on the server, which manages your accounts and publishes, and Claude asks permission before each call.

Can ChatGPT schedule social media posts?

Yes, via a custom MCP app in Developer mode or in the Plugins area. Write actions are currently in beta on some plans, and Custom apps work on the web only, not in mobile or agent mode

Is MCP safe for my social accounts?

Generally, yes. Your passwords and tokens stay with the MCP server, not the AI, and most clients ask approval before each tool call. Treat any URL containing an API key like a password.

Do I need to code?

No. You only have to paste a URL and approve in Claude and ChatGPT. No code to schedule in Cursor and Claude Code - just a config line or one command. After that, there's nothing but plain language.

Can MCP schedule Instagram Reels and TikToks?

Yes. Reels are created using the Reel post type, and TikTok posts work with its require privacy and interaction settings, and an AI-generated label when applicable.

Is there a free social media MCP server?

Yes. Woop Social's free plan offers the MCP server with 2 accounts + no credit card.

What's the difference between MCP and an API?

An API is how a software reaches a service and somebody writes the code to call the API. MCP describes a service's tools in a way that AI can use them without the need for that code.

Conclusion

One URL, four clients, five steps. Get the MCP URL, connect your accounts, add the connector, verify with an account list, and you can easily schedule your posts Bookmark the prompt list; tell us which prompt you'd add in plain language.

The little habits that make it consistently reliable - put in a time zone, always read the confirmation, keep approval on for posting, and always check what's scheduled every week.

Get your free WoopSocial API key and run the prompts. It takes just a few minutes - you'll easily schedule your social media posts with MCP without even leaving your chat window.

Bookmark the prompt list; tell us which prompt you'd add.

Related reads