Model Context Protocol

Social Media MCP Server

Give Claude, ChatGPT, or Cursor real access to your social accounts. Connect the hosted MCP server once, then let your agent list accounts, validate, and publish through the same tools your dashboard uses.

claude mcp add socialclaw \
  --env SOCIALCLAW_API_KEY=sc_live_your_key \
  -- npx -y socialclaw mcp

Built for agents, not just chat

Real tool calls against a real workspace, with the same validation and delivery inspection the dashboard and CLI already rely on.

Validation first

validate_schedule checks provider rules and media limits before apply_schedule creates anything, so a badly formed post gets caught, not published.

One workspace key

The same key your dashboard and CLI already use. No separate credential to manage per platform or per client.

Hosted or local

Point a client at the hosted endpoint with zero install, or run a local stdio server from the socialclaw npm package.

The full publishing lifecycle

Connect accounts, upload media, validate, schedule or publish, then inspect delivery, all as tool calls an agent can chain together.

Open tool discovery

initialize and tools/list need no credentials, so MCP directories and clients can inspect the toolset before anyone signs in.

Every major client

Claude on claude.ai, Claude Code, Claude Desktop, ChatGPT, and Cursor all connect the same way, hosted or local.

How it works

How an agent publishes

The same validation-first flow every SocialClaw surface shares.

Authenticate once

One workspace API key covers every connected account and every tool call.

Validate the schedule

validate_schedule runs provider rules before anything is queued, so bad posts fail at plan time.

Publish and inspect

apply_schedule creates the run; run_status and post_attempts show what actually went live.

Connect your MCP client

Create a workspace API key in the dashboard, then pick the setup that matches your client. Requires Node.js 20+ and socialclaw 0.1.14 or later for the npx based setups.

Claude on claude.ai, no code

Open Settings, Connectors, Add custom connector, name it SocialClaw, and paste this as the server URL. Leave the OAuth fields empty. The key travels in the URL because the connector dialog has no header field, so treat it like a password.

Connector URL
https://getsocialclaw.com/mcp?apiKey=sc_live_your_key

Hosted endpoint, any HTTP client

The same server runs hosted at getsocialclaw.com/mcp over streamable HTTP. Send your workspace API key as a bearer token with every request.

Terminal
claude mcp add --transport http socialclaw https://getsocialclaw.com/mcp \
  --header "Authorization: Bearer sc_live_your_key"

Claude Code, local stdio

One command registers SocialClaw as a local MCP server for Claude Code, with your workspace key as an environment variable.

Terminal
claude mcp add socialclaw \
  --env SOCIALCLAW_API_KEY=sc_live_your_key \
  -- npx -y socialclaw mcp

Claude Desktop, Cursor, and other JSON clients

Drop this block into the client's MCP server config. Or run npm install -g socialclaw and socialclaw login once, and the config needs no env block at all.

config.json
{
  "mcpServers": {
    "socialclaw": {
      "command": "npx",
      "args": ["-y", "socialclaw", "mcp"],
      "env": {
        "SOCIALCLAW_API_KEY": "sc_live_your_key"
      }
    }
  }
}
Capabilities

18 tools, the whole publishing lifecycle

Discover accounts, upload media, validate, publish, and inspect, mirroring the same workflow the dashboard and CLI already use.

list_accounts

List connected social accounts, optionally filtered by provider.

account_capabilities

Publish rules per account: allowed media, text limits, publish readiness.

connect_account

Start connecting a new account; returns the OAuth authorize URL.

upload_asset

Upload a local image or video; returns a hosted media URL.

list_assets

Browse media you already uploaded; each returns a publicUrl to reuse as media_link.

validate_schedule

Validate a schedule against provider rules before publishing.

preview_campaign

Preview how a campaign expands into concrete posts.

apply_schedule

Create a publishing run with idempotency-key deduplication.

publish_draft

Publish a previously created draft run.

list_posts

List posts with status, account, provider, and run filters.

get_post

Inspect one post's delivery state and provider identifiers.

post_attempts

Debug failed posts via per-attempt provider errors.

retry_post

Retry a failed post.

cancel_post

Cancel a scheduled post before it publishes.

run_status

Status summary for a publishing run.

get_analytics

Analytics snapshots for a post, account, or run.

workspace_usage

Workspace usage counters and plan entitlements.

workspace_health

Workspace and provider connection health.

Ready to grow
your socials?

Supported social platforms

Every other way in

Same workspace, same connected accounts, on whichever surface fits what you are building.

What builders are saying

Real quotes from Reddit, G2, Trustpilot, and Instagram.

Works with every major platform

Connect once, then schedule and publish everywhere from the same workspace.

Frequently Asked Questions

It is a Model Context Protocol server built into the socialclaw npm package. It lets MCP clients such as Claude on claude.ai, Claude Code, Claude Desktop, and Cursor publish to connected social accounts through the SocialClaw workspace: list accounts, upload media, validate schedules, publish posts, and inspect delivery.

Schedule to social media Works with Claude ChatGPT Codex OpenClaw
Start free