Doc

Add the MCP service

Add the Sogrowly Social MCP service to your AI agent

This guide is for users who want their AI agent to query Sogrowly workspaces, choose publishable channels, and publish content directly through the Sogrowly Social MCP service.

MCP Endpoint

https://sogrowly.com/api/social/mcp

The production server is usually configured with:

NEXT_PUBLIC_SITE_URL=https://sogrowly.com

Authentication

Generate a Social API key in Sogrowly, then pass it to the MCP server through the Authorization header in your MCP client configuration:

Authorization: Bearer sma_live_xxx

If you only need to query workspaces and channels, the API key needs at least this permission:

social:channels:read

If you also need to publish posts, the API key also needs:

social:publish

Common Configuration

Different AI agents may use slightly different MCP configuration fields, but the core values are usually url, transport, and headers:

{
  "mcpServers": {
    "sogrowly": {
      "transport": "streamable-http",
      "url": "https://sogrowly.com/api/social/mcp",
      "headers": {
        "Authorization": "Bearer sma_live_xxx"
      }
    }
  }
}

If your client uses type instead of transport, configure it like this:

{
  "mcpServers": {
    "sogrowly": {
      "type": "http",
      "url": "https://sogrowly.com/api/social/mcp",
      "headers": {
        "Authorization": "Bearer sma_live_xxx"
      }
    }
  }
}

Available Tools

social.account             -> Query workspaces and publishable channels
social.media.create_upload -> Create a presigned upload URL for local media
social.post                -> Publish a post to one or more channels

Recommended flow:

1. Call social.account
   action=list_workspaces
   -> Choose a workspaceId

2. Call social.account
   action=list_channels, workspaceId=...
   -> Choose channels[].id as the channelId

3. If the post includes a local file, call social.media.create_upload
   mimeType=..., fileName=...
   -> Upload the file bytes to upload.url with HTTP PUT
   -> Use temporaryUrl.url or publishAsset.source as the media source

4. Call social.post
   workspaceId=..., targets[].channelId=...
   -> Read data.summary and data.taskResults

Your AI agent does not need, and should not access, your social account tokens.

Allowed Origins

If a browser-based MCP client calls the server across origins, the server must allow the client origin. The server allows the current site origin by default. You can also extend the allowed origins with a comma-separated environment variable:

SOCIAL_MCP_ALLOWED_ORIGINS=https://client.example.com,https://another-client.example.com