SocialsForAI

io.github.SocialsForAiPublished by GitHub account SocialsForAiv0.1.1Updated Nov 13, 2026

Post and schedule to X, LinkedIn, Bluesky, Mastodon and Telegram from an AI agent.

The publisher's own server: Socials Homes

VerifiedStreamable HTTPWeb executableProductivity & WorkflowCommunication & Collaboration

Overview

AI-generated overview

Lets an assistant publish or schedule posts to X, LinkedIn, Bluesky, Mastodon and Telegram, with dry runs, human approval and per-account results.

What you can do
  • Connect social accounts through a link the account owner approves
  • Validate a post against each network's limits without publishing
  • Publish now or schedule, with an idempotency key so retries do not post twice
  • Request human approval and read the reviewer's note if rejected
  • Read per-account results, metrics and errors, and list available platforms and limits
When to use it
Use it when an assistant should draft, check and publish or schedule social posts across several networks from one place, especially when a person must approve before anything goes out.
Requirements
Remote streamable HTTP endpoint at socialsforai.com/api/mcp. Sign-in via OAuth in the browser (email) for clients that support MCP sign-in, or an API key sent as an Authorization Bearer header. A workspace and connected social accounts are needed; the CLI path needs Node 18 or later.
Before you install
The assistant can publish to public social accounts, so use dry runs and required approval before going live. An API key is shown once at workspace creation and grants posting rights; scope keys narrowly (posts:write, account limits, daily post limits). Posting is billed per account that posted in a month, with a free plan available.

Installation

In SourceWeft

  1. Open SocialsForAI in the dashboard and add it to a workspace.
  2. Connect the required credentials. They are stored privately and never shown on public pages.
  3. Enable the server for the chats that should use its tools.

Web executable via Streamable HTTP. Remote servers run from the web runtime once configured in a workspace.

Use with an agent

Paste this prompt into Claude Code, Codex, Cursor or another agent — or into SourceWeft chat. The agent reads this server's install guide, shows you its publisher, endpoint and sign-in, and adds it to your client once you agree. Keys never go into a command.

Read https://sourceweft.com/mcp/io.github.SocialsForAi%2Fsocialsforai/install.md and connect the MCP server it describes to my client. Before changing any config, show me its publisher, endpoint and sign-in method and wait for my OK. Never put an API key in a command or in a file I would commit; ask me where it should come from.

Read the install guide the agent follows

Other MCP clients

Add this to your client's mcpServers config. The client completes OAuth sign-in on first connect.

{
  "mcpServers": {
    "socialsforai": {
      "type": "http",
      "url": "https://socialsforai.com/api/mcp"
    }
  }
}

README

SocialsForAI

One API to post to social networks, built for AI agents and the apps that run them. Send one request with the accounts and the text; get one result per account. This repository holds the agent-facing pieces: a skill, plugins for Claude Code, Cursor and Gemini CLI, the MCP server listing, and a command-line client.

What an agent can do with it

  • Create its own workspace and API key with one request, no human sign-up first.
  • Hand a person a link to connect their social accounts. The agent never sees a password.
  • Validate a post against each network's limits without publishing (dry_run).
  • Publish now or schedule, with an idempotency key so a retry never posts twice.
  • Ask a human to approve a post before it goes out, and read their feedback if they reject it.
  • Read per-account results, metrics, and errors that say how to fix them.

Call GET https://socialsforai.com/v1/platforms for the networks available right now and their limits.

Install

MCP server (any MCP client)

https://socialsforai.com/api/mcp

Streamable HTTP. Clients that support MCP sign-in need only the URL: a browser window opens, you sign in by email and approve. Clients without sign-in can send an API key as Authorization: Bearer sk_....

Claude Code

As a plugin (skill and MCP server together):

/plugin marketplace add SocialsForAi/socialsforai/plugin install socialsforai@socialsforai

Or the MCP server alone:

bash
claude mcp add --transport http socials https://socialsforai.com/api/mcp

Then run /mcp, pick socials, and sign in.

Skill (any agent that loads Agent Skills)

bash
npx skills add SocialsForAi/socialsforai

Cursor

Add the MCP server in Cursor's MCP settings:

json
{  "mcpServers": {    "socials": { "url": "https://socialsforai.com/api/mcp" }  }}

This repository is also a Cursor plugin (.cursor-plugin/plugin.json) bundling the skill and the server.

Gemini CLI

bash
gemini extensions install https://github.com/SocialsForAi/socialsforai

CLI

bash
npx @socialsforai/cli --help# or install it: npm install -g @socialsforai/cli   (commands: socials, socialsforai)

Node 18 or later, no dependencies. See cli/README.md.

60-second quickstart

With the CLI:

bash
# 1. Create a workspace. The key is saved to ~/.config/socialsforai/config.jsonnpx @socialsforai/cli signup --name "My agent" --email [email protected]
# 2. Connect accounts: open the printed link and approve on each networknpx @socialsforai/cli connect --platforms bluesky,linkedin --wait
# 3. Check the post without publishingnpx @socialsforai/cli post --accounts bluesky,linkedin --text "Hello from my agent" --dry-run
# 4. Publish. The same idempotency key never posts twicenpx @socialsforai/cli post --accounts bluesky,linkedin --text "Hello from my agent" --idempotency-key first-post

The same thing over HTTP:

bash
curl -X POST https://socialsforai.com/v1/workspaces -d '{"name":"My agent","email":"[email protected]"}'# -> {"api_key":"sk_..."}   shown once
export SOCIALSFORAI_API_KEY=sk_...AUTH="Authorization: Bearer $SOCIALSFORAI_API_KEY"
curl -X POST https://socialsforai.com/v1/connect-links -H "$AUTH" -d '{"platforms":["bluesky","linkedin"]}'# -> {"id":"cl_...","url":"..."}   the account owner opens the url
curl https://socialsforai.com/v1/accounts -H "$AUTH"
curl -X POST https://socialsforai.com/v1/posts -H "$AUTH" -H "Idempotency-Key: first-post" \  -d '{"accounts":["acc_..."],"text":"Hello from my agent","wait":true}'

With an agent, after adding the MCP server or the skill:

Connect my LinkedIn and Bluesky accounts with SocialsForAI, then show me a dry run of a post announcing our launch before publishing anything.

Human approval

Add "approval": "required" to a post (CLI: --approval). Nothing is published; the response carries an approval.url. The person opens it, sees the preview for each network, and approves or rejects with a note. The agent waits with GET /v1/posts/{id}?wait=45 (CLI: socials get <post_id> --wait) and reads the note if it was rejected.

Scoped keys

Give an automation a key that can only do what it should:

bash
socials keys create --name "drafting agent" --scopes posts:write --account-ids acc_123 --require-approval --daily-post-limit 5

Scopes are posts:read, posts:write, accounts:read, accounts:write and admin.

What is in this repository

PathWhat it is
skills/socialsforai/SKILL.mdThe agent skill: the full workflow and the rules for using it safely
.claude-plugin/Claude Code plugin and marketplace manifests
.mcp.jsonMCP server config Claude Code loads with the plugin
.cursor-plugin/plugin.jsonCursor plugin manifest
plugin.json, mcp.jsonAgent Plugins standard manifests
gemini-extension.jsonGemini CLI extension manifest
server.jsonListing for the official MCP registry
cli/The @socialsforai/cli npm package
AGENTS.mdShort instructions for coding agents working with this repository

Pricing

Billed per account that posted in the month; connected accounts that stay idle cost nothing. There is a free plan. Current plans: https://socialsforai.com/pricing

Privacy and terms

Privacy · Terms

License

MIT. See LICENSE.

Source: README.md at commit ccabdf9

Tools

0
This server asks you to sign in, so SourceWeft could not read its tools without an account and has not indexed them. What a connected account sees can depend on that account and its permissions.

Version history

1
  1. v0.1.1LatestNov 13, 2026

Score

85% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 daysRequired25 pts
  • Auth declaredRequired10 pts
  • Tools listed15 pts

    Answer tools/list without a credential, or ship a package that starts in a sandbox without one.

  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts

Other Socials integrations