Developers
MCP server
Let AI agents like Claude or Cursor draft and schedule posts, with scoped keys and confirmations.
AI agents such as Claude, Cursor or any MCP-compatible client can work in a Sosial workspace through the Model Context Protocol: create and edit posts, schedule and unschedule them, list channels and media, and read the queue. The same validation, plan limits and approval rules apply as in the app.
Connection details
| Setting | Value |
|---|---|
| Endpoint | https://sosial.app/api/mcp |
| Transport | MCP Streamable HTTP, stateless |
| Auth | Workspace API key as Authorization: Bearer <key> |
Create a key
Open Team → AI & Developer — MCP and create a key with the permissions the agent needs. Like REST API keys, MCP keys are shown once, can be revoked at any time and belong to one workspace. Deleting posts is off by default.
Scopes
| Scope | Allows |
|---|---|
posts:read | get_post, get_scheduled_posts |
posts:write | create_post (drafts), update_post |
posts:schedule | schedule_post, unschedule_post (includes posts:write) |
posts:delete | delete_post (off by default) |
channels:read | get_channels, get_channel_status |
media:read | get_media |
comments:read | list_comments |
comments:write | reply_to_comment (includes comments:read) |
A call without the right scope returns insufficient_scope.
Tools
| Tool | Notes |
|---|---|
create_post | content and channel_ids, optional title, scheduled_at, timezone, idempotency_key. Without scheduled_at it's a draft. |
update_post | Edit the title, content or time of a draft or queued post. |
schedule_post | ISO 8601 time at least 5 minutes ahead. |
unschedule_post | Turns a queued post back into a draft. |
delete_post | Deletes a post. |
get_post | Status, per-channel targets and media summary. |
get_scheduled_posts | Filter by time window and channel, up to 50 per page. |
get_channels / get_channel_status | Connected channels only, never tokens. |
get_media | Uploaded media metadata. |
list_comments | Comments across the workspace's channels, newest first. |
reply_to_comment | Replies publicly as the connected channel. |
Confirmation
Destructive or public actions (deleting, unscheduling, replying to a comment, editing a post that goes out within 30 minutes) don't run on the first call. They return confirmation_required with a summary and a confirmation_token valid for 5 minutes. The agent repeats the call with that token once you've agreed, so an agent can't post or delete anything by accident.
Last updated: Oct 28, 2026, 1:52 PM UTC