MCP
Social media MCP server for AI agents
A social media MCP server lets an AI agent publish, schedule and analyze posts on your accounts through one set of tools. Chat33 hosts one at https://chat33.io/api/mcp/mcp with 20 tools for Instagram, Facebook, TikTok, YouTube, X (Twitter), LinkedIn and Bluesky, built on each platform's official API, not browser automation. It works on every plan, including Free.
Claude can write a post. Chat33 lets it publish one — and answer the DMs it brings in.
https://chat33.io/api/mcp/mcp
Pick a platform
Connect your client
Browser sign-in
claude mcp add --transport http --scope user chat33 https://chat33.io/api/mcp/mcp
Browser sign-in
Settings → Connectors → Add custom connector Name: Chat33 URL: https://chat33.io/api/mcp/mcp
Browser sign-in
ChatGPT → Settings → Developer mode → Create plugin → paste the URL
Browser sign-in or API key
{
"mcpServers": {
"chat33": {
"url": "https://chat33.io/api/mcp/mcp"
}
}
}Browser sign-in
codex mcp add chat33 --url https://chat33.io/api/mcp/mcp
Any other MCP client
OAuth if supported, else API key
Header x-api-key: sk_live_... or Authorization: Bearer sk_live_...
API key
Community node n8n-nodes-chat33
Prefer OAuth sign-in wherever your client supports it: pick chat33 in its connector/MCP menu, choose Authenticate (or the equivalent login button), and approve in the browser tab that opens. No client should ever ask you to paste an API key for this step, and Chat33 never prints an OAuth URL for you to copy — the browser handles it.
Without OAuth, use the API-key fallback: create a key in Settings → API Keys, then send it as an x-api-key header or an Authorization: Bearer header on the connection.
Tools
The exact tools your agent gets. You don't call them yourself; the agent picks them from what you ask.
Account
- list_accounts — List connected social accounts (channels), optionally filtered by platform
- whoami — Show the workspace, plan, granted scopes, and connected accounts behind this connection
Publishing
- create_post — Create and queue (or schedule) a post across one or more connected accounts
- validate_post — Dry run a post: checks media & platform compatibility without publishing
- list_posts — List posts, filterable by status, platform, or channel; paginated
- get_post — Get a single post by ID, including its live status and engagement stats
- delete_post — Cancel a queued or scheduled post before it publishes
- get_post_logs — Get delivery/publish log entries for a post, for debugging failures
Media
- upload_media — Ingest a media file from a public https URL, returns a hosted URL to post with
- create_upload_url — Get a presigned URL to PUT a local file to, for files with no public URL, or over 4.5MB
Analytics
- get_analytics — Aggregate engagement analytics (views, likes, comments, shares) across published posts
Automations
- list_flows — List all DM-automation flows, newest-updated first, with triggers and status
- get_flow — Get a single flow by ID, including its full node/edge graph and synced triggers
- create_flow — Create a DM-automation flow (trigger + action node graph) in DRAFT status
- set_flow_status — Change a flow's status: ACTIVE, PAUSED, ARCHIVED, or DRAFT
Inbox
- list_conversations — List Instagram and Facebook Messenger DM conversations, newest activity first
- get_messages — Read a DM conversation's messages, oldest to newest
- reply_to_conversation — Send a DM reply; tells the assistant to get your approval first, since it messages a real person
Comments
- list_post_comments — Read comments (with replies) on a post, live from Meta
- reply_to_comment — Reply to a comment publicly or privately; tells the assistant to get your approval first
Auth & scopes
Browser sign-in is the default. For a client that can't sign in, create an API key in Settings → API Keys and send it as a header. In Claude Code:
claude mcp add --transport http --scope user chat33 https://chat33.io/api/mcp/mcp --header "x-api-key: sk_live_..."
Every tool is authorized like the REST call behind it, so an API key needs the matching scope. whoami works with any valid key.
Flow authoring: create_flow's description carries the full node/edge schema, so an agent can build a valid flow from a plain-English request. New flows are created as DRAFT; call set_flow_status with ACTIVE to turn one on.
Try asking
- Post this video to my TikTok as private
- Share this article on LinkedIn, connections only
- Post today's update to Bluesky
- How did my last 10 TikTok posts perform?
- Create a flow that DMs everyone who comments SKILL on my latest reel
MCP or REST?
Use MCP when a model decides what to publish. Use the REST API when your own code does. Same account, same plan limits.
Limits, plainly
- Your plan's limits on posts and connected accounts apply.
- Instagram and Facebook DM replies only work within 24 hours of the contact's last message.
- Meta allows one private reply per comment, within 7 days.
- LinkedIn: personal profiles only.
- Bluesky: no DMs or comments through Chat33, and no post analytics yet.
- Accounts connected through the developer connect API are publish-only.
Troubleshooting
401 Unauthorized
The connection isn't signed in, or an API key is missing, invalid, or wasn't sent as a header at all. Re-run the client's sign-in step, or re-check the connector config / header flag.
403 Insufficient scope
The connection is missing a scope the tool needs. Flow tools need flows:read/flows:write, and inbox/comment tools need inbox:read/inbox:write/comments:read/comments:write: an API key created before those tools shipped won't have them. Add the scope in Settings → API Keys. For a browser sign-in connection, disconnect it under Connected AI apps and sign in again.
Tool call fails with a platform error
Run validate_post first — it surfaces missing media, unsupported formats, and channel mismatches without publishing anything.
Questions
- Is it free?
- Yes. The MCP connection works on every Chat33 plan, including Free. Your plan's limits on posts and connected accounts still apply.
- Which clients does it work with?
- Claude Code, Claude Desktop, claude.ai, ChatGPT, Cursor and Codex have dedicated setup pages. Any other MCP client can connect with the endpoint https://chat33.io/api/mcp/mcp, over OAuth if it supports it, or an API key.
- Do I need an API key?
- No. Most clients sign in to Chat33 in your browser and approve access. An API key (x-api-key or Authorization: Bearer) is a fallback for clients that can't do browser sign-in.
- Which platforms can my agent publish to?
- Instagram, Facebook, TikTok, YouTube, X (Twitter), LinkedIn and Bluesky, each on that platform's official API, not browser automation.