Post to X from Claude
Three ways to let Claude post to X (Twitter) — the hosted MCP endpoint, a Claude.ai custom connector, and Claude Code.
Updated September 2026
How do you let Claude post to X?
Connect your X account to Chirpie, then give Claude the Chirpie MCP server. Claude gets a chirpie_post tool and you can say "post this to X" in plain language. There are three ways to wire it up: the hosted endpoint at https://chirpie.ai/mcp (nothing to install), a custom connector in Claude.ai, or a local server in Claude Code.
Step 1 — Connect X to Chirpie
Sign up at chirpie.ai, then connect X from the accounts dashboard. X uses OAuth 2.0 with PKCE; Chirpie stores the tokens encrypted and refreshes them automatically before they expire.
You can also start the flow from the API:
curl -X POST https://chirpie.ai/api/v1/accounts \
-H "Authorization: Bearer chirpie_sk_YOUR_KEY" \
-H "Content-Type: application/json" \
-d '{ "platform": "x" }'Open the returned authorization_url, approve, and the account appears in GET /api/v1/accounts.
Create an API key at chirpie.ai/dashboard/keys — it starts with chirpie_sk_ and is shown once.
Step 2, option A — The hosted MCP endpoint
The fastest path. No install, no local process:
claude mcp add --transport http chirpie https://chirpie.ai/mcp \
--header "Authorization: Bearer chirpie_sk_YOUR_KEY"Scope it to your user account so it follows you across projects:
claude mcp add --transport http chirpie --scope user https://chirpie.ai/mcp \
--header "Authorization: Bearer chirpie_sk_YOUR_KEY"Short flags work too: -t for --transport, -H for --header, -s for --scope.
Step 2, option B — A Claude.ai custom connector
If you use Claude in the browser or desktop app rather than the terminal:
- Go to Customize → Connectors at claude.ai/customize/connectors.
- Click +, then Add custom connector.
- Enter
https://chirpie.ai/mcpas the remote MCP server URL. - Click Add, then authorize when prompted.
Custom connectors are available on Free, Pro, Max, Team, and Enterprise plans; Free is limited to one. On Team and Enterprise an owner adds the connector organization-wide first, under Organization Settings → Connectors, and members then authenticate individually.
The Claude.ai connector dialog takes a URL and optional OAuth details — there is no field for a custom header. Authorize through the OAuth flow rather than trying to paste an API key.
Step 2, option C — Claude Code with the local server
If you would rather run the server yourself, or you are already using the Chirpie CLI:
npm install -g chirpie
chirpie login
claude mcp add chirpie -- npx @chirpie/mcpchirpie login writes an API key to ~/.chirpie/config.json, and the MCP server reads it from there — so no key lives in your MCP config. Commit the server definition to your repo if you want the whole team to have it:
{
"mcpServers": {
"chirpie": {
"type": "stdio",
"command": "npx",
"args": ["@chirpie/mcp"]
}
}
}Step 3 — Ask Claude to post
Restart your client so it picks up the new tools, then:
Post to X: "Shipped a fix for the scheduler race condition. Threads now publish atomically."
Claude calls chirpie_list_accounts to find your X account UUID, then chirpie_post. You get back a post ID and a platform_post_id once it lands on X.
More things you can ask for:
- "Turn this changelog into a 5-post X thread."
- "Schedule that for 9am UTC tomorrow."
- "How did my last post do?"
- "Delete the post I just made."
What tools does Claude get?
| Tool | What it does |
|---|---|
chirpie_post | Create one post, optionally with media or a schedule |
chirpie_thread | Create a 2–25 post thread |
chirpie_list_posts | List posts, filterable by status or account |
chirpie_get_post | Fetch one post |
chirpie_delete_post | Delete a post from Chirpie and from X |
chirpie_list_accounts | List connected accounts |
chirpie_analytics | Impressions, likes, reposts, replies, quotes, bookmarks, clicks |
X specifics to tell Claude
- Standard accounts cap at 280 characters; X Premium accounts go to 25,000. The
max_post_lengthfield on the account tells the agent which it is. - Up to 4 images (JPEG, PNG, WebP, GIF, 5 MB each) or 1 video (MP4/MOV, up to 512 MB) per post, passed as public URLs in
media_urls. - Threads use native reply chains, so a 5-post thread reads as a proper thread on X.
Under the hood
Every tool call maps to a plain REST request, so nothing is hidden from you:
curl -X POST https://chirpie.ai/api/v1/posts \
-H "Authorization: Bearer chirpie_sk_YOUR_KEY" \
-H "Content-Type: application/json" \
-d '{
"account_id": "550e8400-e29b-41d4-a716-446655440000",
"text": "Shipped a fix for the scheduler race condition."
}'FAQ
Do I need an X developer account? No. Chirpie holds the X API integration. You authorize Chirpie once via OAuth and that is it.
Which setup should I pick?
Hosted endpoint if you want zero install. Claude.ai connector if you work in the browser. Local npx @chirpie/mcp if you want the process on your own machine or are already using the CLI.
Is my API key exposed to the model?
With the local server the key stays in ~/.chirpie/config.json and never enters the conversation. With the hosted endpoint it lives in your client's MCP config, the same way any other API credential does.
Can Claude post to other platforms too? Yes — the same tools cover Bluesky, LinkedIn, Threads, Mastodon, Instagram, Facebook, and Telegram. Pick the account by its UUID.
Can Claude schedule posts?
Yes. Ask for a time and it passes schedule_at. Posts publish within about five minutes of the target.
What happens if I hit my monthly limit?
The API returns 429 with code rate_limited, and Claude will tell you. See rate limits.