Updated

Posting to X from an AI agent: the APIs and MCP servers, compared

An AI agent (Claude, ChatGPT, Claude Code, Cursor or your own) can reach X through X's own API, X's own MCP server, or the API or MCP server of a tool that posts for you: Typefully, Buffer, Postiz or Flaghand. They differ in what the agent can do and, above all, in whether a person sees the post before it goes live.

Checked on October 25, 2026, from each product's own pages, linked under Sources. Prices and features change, so check those pages before you choose.

The short answer

What the agent can do

Drafts Schedule Post at once Threads Media
X API No No Yes Reply to each part in turn Up to 4 photos, 1 GIF or 1 video
X MCP, hosted Articles only No Articles only No Not listed
xmcp, self-hosted No No Yes Reply to each part in turn Upload tools
Typefully Yes Yes Yes Yes Yes
Buffer Yes Yes Yes Yes Yes
Postiz Yes Yes Yes Yes, media on every part Yes
Flaghand Yes Proposes a time; you approve it No Yes, one draft Up to 4 per post, with alt text

Who decides, how it signs in, what it costs

A person approves before it posts? How the agent signs in Public price
X API No Your own X developer app, then OAuth for the account Pay per use: $0.015 a post, $0.200 with a link
X MCP, hosted No X's xurl bridge with your own X app's keys Pay per use, on your app
xmcp, self-hosted No Your own X app's keys, in your .env Pay per use, on your app
Typefully Only if the agent's user can't publish (Business plan) OAuth or API key; the key has its creator's access Free; Creator $99 a year; Business from $18 a month per social set, billed yearly
Buffer Only for a Needs Approval member (Team plan) OAuth or API key; reaches your whole account Free; Essentials from $6, Team from $12 a month per channel
Postiz No: approval is a conversation, not a state API key, in a header or the URL, or OAuth token $29 to $99 a month; 7-day trial; open source to self-host
Flaghand Always, by the owner's passkey OAuth (Claude, ChatGPT) or a draft-only API token Early access; sign-up isn't open yet

X's API, used directly

An agent posts with POST /2/tweets using a user token: OAuth 2.0 with the tweet.write scope (plus tweet.read and users.read) or OAuth 1.0a. The post goes live at once. A thread is several calls, each a reply to the post before it. Media is uploaded first (media.write), then attached: up to 4 photos, 1 animated GIF or 1 video.

X's API reference has no draft or schedule call for posts (Articles have drafts). Scheduled posts live in X's separate Ads API, for ads accounts. Nothing asks a person first: whoever holds the token can post.

You need your own developer app, and each account authorizes it. X bills pay per use from credits you buy: $0.015 a post and $0.200 for a post with a link, $0.005 to add alt text.

Where it's better: no added scheduler subscription, every feature X's API has (polls, reply settings, Communities, search, analytics), and no other company holding your account's token. For light use, a competitor's free plan can cost less than paying X directly.

X's MCP server

X hosts an MCP server at https://api.x.com/mcp. Its page lists what the model can do: fetch posts and who liked, reposted or quoted them, search posts, users and news, read timelines and mentions, manage bookmarks, get trends, and "create draft Articles and publish them". It lists no tool that creates a post, and the OAuth scopes the server lists don't include tweet.write, which X's create-post endpoint requires.

To sign in as you, you run X's xurl mcp bridge on your machine with your own X app's client ID and secret; it logs in once in your browser and refreshes the token. An app-only bearer token works without the bridge, for reads only. X's troubleshooting table has you move the app to pay per use.

X's open-source xmcp, which you run yourself in Python, turns X's API into tools, including createPosts, media upload and deletePosts. X_API_TOOL_ALLOWLIST chooses which tools load. Like the API, it posts at once. Your MCP client may ask you before a tool runs; X doesn't.

Where it's better: far more reading than any tool here: full-archive search, timelines, trends, news and bookmarks, for an agent that researches before it writes.

Typefully

Typefully's API and MCP server (https://mcp.typefully.com/mcp, OAuth or API key) create drafts and threads, upload media, schedule, and publish: "publish_at": "now" publishes at once. There's an Agent Skill for coding agents, and webhooks.

API keys "inherit the same permissions as the user who created them". Creating a draft needs write access; scheduling or publishing needs publish access. Free and Creator have one user, so the agent's key can publish. On Business, a key made by a separate Write-role user can't. plan_at puts a draft on the calendar, where it "never auto-publishes until confirmed".

Where it's better: a free plan with the API and MCP (10 posts a month, 1 social set), X, LinkedIn, Threads, Bluesky, Mastodon and Substack, X analytics and AI writing. More in Flaghand vs Typefully.

Buffer

Buffer's MCP server (https://mcp.buffer.com/mcp, OAuth) has create_post, which "schedules or publishes a post": to the queue, at a set time, next, or now (shareNow), or as a draft. X threads go in metadata.twitter.thread, and each part can carry media. The API key "acts on behalf of your account only" and reaches every organization and channel in it. Buffer's own advice is to "leave the approval prompts on": your AI app's prompts are the check.

On the Team plan, posts by a Needs Approval member "will always be saved as drafts awaiting approval", including through the API and the MCP server. The account owner or a Full Access member approves them into the queue. Connect the agent as that member and Buffer's server holds its posts for you.

Where it's better: a free plan with the API (3 channels, 10 scheduled posts per channel, 3,000 requests a month), far more networks (Instagram, Facebook, TikTok, YouTube, Pinterest and more), and a team approval role on Team.

Postiz

Postiz's MCP server (https://mcp.postiz.com/mcp) has 13 tools; schedulePostTool schedules, drafts or publishes at once. The API takes type now, schedule or draft. X threads carry images on every part. It signs in with an API key, as a bearer token or in the URL, or with an OAuth token that doesn't expire.

Postiz's preview links collect comments, but in its own words "approval is a conversation, not a state: there is no 'approved' flag that blocks publishing".

Where it's better: open source (AGPL-3.0) to self-host without plan limits, 34 platforms, AI images and video, and unlimited posts on every paid plan. More in Flaghand vs Postiz.

Flaghand

An agent drafts X posts and threads (a thread is one draft, up to 25 posts), uploads images and video with alt text, checks each draft and proposes a time. One call, POST …/posts, drafts, checks and requests approval for a whole plan. Agents connect to Flaghand's MCP server at /mcp by OAuth (Claude, ChatGPT) or with a workspace API token.

No token scope can approve, schedule or post, on any plan. Those routes refuse every token and accept only an owner of the workspace, signed in with a passkey. Apps that connect by OAuth get a draft-only token: read, drafts, media and request-approval.

Approving freezes each post into a snapshot (the account, the time, the text, every media file and its alt text, and the exact request), hashed with SHA-256 and signed with your passkey. Any change needs a new approval, and the scheduler checks the signed snapshot again right before posting. Afterwards Flaghand reads each X post back and compares it with what you approved: normalized text, author, hidden reply mentions, media count, available alt text, reply chain and quote. It doesn't verify link destinations or the media files themselves. Flaghand prepays X's API, so you don't buy X credits.

Where it does less: X and LinkedIn personal profiles only, no free plan, no AI writing of its own (your agent writes), and it's in early access: sign-up isn't open yet. An agent can't post anything urgent without you.

Which to pick

How to let an AI agent post on social media safely has nine checks to run on any of these. Flaghand's agent documentation covers its API and MCP server. Get access to Flaghand.

Sources

All read on October 25, 2026.