BlogUpdated Aug 26, 2026

How to Schedule Mastodon Posts with MCP (Claude, ChatGPT, Cursor)

Schedule Mastodon posts from Claude or ChatGPT with MCP. The standard ActivityPub API keeps it simple: OAuth once and queue posts from chat.

To schedule Mastodon posts with MCP, connect a remote MCP server to your AI client and link your Mastodon account. SocialRobot exposes one at https://socialrobot.io/api/mcp: after one OAuth approval, the agent can draft posts, queue them with create_post for any future time, reschedule or delete them, and pull analytics. Posts wait on your calendar for review before publishing.

Mastodon is built on ActivityPub, a real open standard with a stable documented API, and the practical effect is that automation here is straightforward in a way closed networks never are. There is no approval gauntlet designed around advertisers, no per-creator feature flags deciding what your account may do. The API says what posting looks like, every instance speaks it, and tools built on top keep working.

One genuinely Mastodon-specific thing does apply, and it matters more than any API detail: instances are communities with their own rules about automation. Some welcome scheduled posting, some restrict bots, a few prohibit automated behavior outright. Check your instance's rules once before wiring anything up; the technology will not save you from a moderator who says no. The full walkthrough of the SocialRobot MCP setup covers the generic connection flow for every platform.

Setup

Link your Mastodon account in SocialRobot first. Then point your MCP client at:

{
  "mcpServers": {
    "socialrobot": {
      "type": "http",
      "url": "https://socialrobot.io/api/mcp"
    }
  }
}

The first connection opens SocialRobot login plus one consent screen, with publishing and media scoped separately from analytics. Works in Claude, ChatGPT, Cursor, VS Code, Windsurf, Zed, or any remote-MCP client.

A release announcement, done properly

Open source projects are the classic Mastodon population, and release day is where scheduling earns its keep. Say version 2.1 of your library ships Tuesday:

Our v2.1 release goes out Tuesday at 14:00 UTC. Draft a Mastodon post announcing it: what changed in one sentence, the three highlights as short bullets, link to the changelog, under 500 characters total, casual but precise. Schedule it for Tuesday 14:00 UTC. Then draft a follow-up for Thursday sharing the most interesting community contribution in the release, and queue that too.

The agent drafts both, calls create_post twice with those slots, and both sit in your SocialRobot calendar waiting for review. Release notes tend to shift until the last minute, so when the build slips:

Push both Mastodon posts back two days.

reschedule_post moves each one; nothing else changes. If the Thursday follow-up needs the actual contributor's name after you confirm it:

Update the Thursday post to credit @ana_dev for the parser rewrite.

Edit it in the calendar, approve, done. With an image (release graphic, screenshot), the agent uploads via get_media_upload_url and attaches it during the same flow.

After launch week, numbers:

How did both release posts do? Any boosts worth noting?

get_posts_with_analytics returns per-post reach so the next announcement starts from evidence.

Prompts and the tools behind them

You sayThe agent calls
"Queue the release announcement for Tuesday 14:00 UTC"create_post
"Attach this release graphic"get_media_upload_url, create_post
"Move everything back two days"reschedule_post
"Delete the April Fools draft"delete_post
"What is queued for next week?"list_posts
"Which posts got the most boosts this month?"get_posts_with_analytics

Instance rules come first

ActivityPub makes the integration easy, but each instance remains a community with its own automation policy. Read yours before scheduling anything recurring, and favor workflows where a human approves every post, which is exactly how SocialRobot's calendar works by default.

Why this network suits MCP well

The same properties that make Mastodon pleasant to automate make it pleasant to delegate. Stable APIs mean fewer surprises between drafting and publishing. Federated audiences reward steady presence across time zones, which is precisely what scheduling buys: your announcement lands at 14:00 UTC whether or not you are awake. And because the same server covers Instagram, LinkedIn, X, TikTok, Facebook, Threads, Pinterest, and Bluesky, announcing a release everywhere becomes one conversation instead of eight tabs.

Getting started

  1. Create a SocialRobot account (MCP included on every plan).
  2. Connect your Mastodon account.
  3. Add https://socialrobot.io/api/mcp to Claude, ChatGPT, or Cursor.
  4. Queue your next release post. Review it in the calendar. Ship it.
  5. Or compare all MCP schedulers in the roundup.

Connect your accounts and let your agent publish.

SocialRobot MCP is free on every plan. Add socialrobot.io/api/mcp to Claude, ChatGPT, or Cursor and start scheduling from chat.

Read the MCP guide