Skip to connector documentation

Hosted Streamable HTTP MCP

Connect your AI to the accounts you already own.

Social Fanout gives compatible MCP clients a per-user OAuth path to inspect connected accounts, dry-run exact posts, publish or schedule, and read a separate receipt for every account result.

https://socialfanout.com/mcp

Prefer the raw guide? Markdown version

Directory review is separate. OpenAI and Anthropic control their own listings. This page does not mean Social Fanout is already published or discoverable in either directory.

Bounded publishing

What the hosted connector can do

Provider availability depends on Social Fanout configuration, provider approval, account permissions, media rules, and upstream API status. An accepted or queued Social Fanout job is not proof that the native post is visible.

Per-user OAuth

Authorize one key without sharing it in chat

  1. Add the endpoint

    Add https://socialfanout.com/mcp as a custom connector in a compatible client, or choose Social Fanout after a directory listing becomes available.

  2. Sign in to Social Fanout

    Follow the first-party sign-in prompt. Never paste a Social Fanout API key or a social-platform token into chat.

  3. Select the exact key

    Choose one active Social Fanout key that you own and approve the named OAuth client. Its connector access is limited to the accounts and entitlement attached to that key.

  4. Keep control

    Review or revoke the application in Dashboard → Authorized assistants. Revocation blocks future connector calls.

The hosted connector does not return the selected API key or stored social-platform credentials to the MCP client.

Exact-action confirmation

Dry-run the request Claude or ChatGPT will actually send

  1. Inspect first

    List connections and capabilities, then choose one exact account. Use the selected connection ID as accountId; optional connectionId must match it.

  2. Run a preflight

    Call fanout_publish_post with dryRun: true for the exact content, destination, media, options, and schedule.

  3. Review the tokenized result

    A successful dry run returns a short-lived confirmationToken and confirmationExpiresAt. Review that result before the live call.

  4. Reuse it unchanged

    For the approved live request, pass the same token with dryRun: false and leave every publish field unchanged.

If content, destination, media, provider options, or schedule changes—or the token expires—run a new dry run and use its new token. Publishing and canceling are consequential write actions.

Data handling

What is sent, recorded, and under your control

The connector sends Social Fanout the signed-in account context and fields needed for the requested operation. Publishing can include post text, media URLs, a selected account identifier, provider-specific options, and a schedule. A live publish sends those fields onward to the selected social provider. Provider credentials stay on Social Fanout's servers.

Social Fanout records content-free authorization, revocation, and tool events for security, audit, support, reliability, capacity planning, and trusted Claude/OpenAI attribution. They can contain an event and tool name, outcome, dry-run state, trusted source classification, opaque key and grant identifiers, a key fingerprint, a one-way OAuth client-ID hash, and timestamps. They exclude post text, media URLs, destination or social-account identifiers, email addresses, access tokens, raw API keys, and the raw OAuth client ID.

Connector grants remain until revoked, the selected key becomes unavailable, or the account is deleted. Connector events remain until account deletion or operational cleanup; no fixed automatic purge interval is currently claimed. Revocation blocks future calls but does not immediately erase historical content-free events. Read the Privacy Policy for deletion and other controls.

Existing alternatives remain

Use the credential boundary that fits your client

These API-key paths are documented in the Quickstart and are distinct from the hosted OAuth connector.