> ## Documentation Index
> Fetch the complete documentation index at: https://docs.daoco.org/llms.txt
> Use this file to discover all available pages before exploring further.

# Connect Sprout Social

> Connect an eligible Sprout Social account to daoco with its own OAuth client.

Sprout Social is a **Conditional**, read-only CRM & Sales integration. It uses Sprout-hosted OAuth and [MCP](/connections/integrations#what-is-mcp) to analyze connected TikTok post performance and published insights.

<Info>
  Each customer workspace needs a Sprout OAuth client created from an eligible
  Sprout account. daoco keeps every workspace's client secret and OAuth tokens
  separate.
</Info>

## Connect a customer workspace

You need a Sprout administrator who can access **Global Features > API**. Confirm that the customer's use complies with their Sprout API agreement.

<Steps>
  <Step title="Open OAuth Client Management">
    In Sprout, open **Settings > Global Features > API**. Accept the Analytics API terms if prompted, then open **OAuth Client Management**.
  </Step>

  <Step title="Generate a user-based configuration">
    Choose **Generate configuration** and select **User-based authentication**.
  </Step>

  <Step title="Add the daoco redirect URI">
    Copy the exact **OAuth redirect URI** shown on the Sprout Social setup card in daoco and add it to the client's allowed redirect URIs.
  </Step>

  <Step title="Enter the workspace OAuth credentials">
    In daoco, open **Connections > Integrations > CRM & Sales > Sprout Social**. Paste the customer's client ID and client secret. The endpoint and scopes are already filled in.
  </Step>

  <Step title="Connect Sprout Social">
    Choose **Save and connect**, then sign in to the customer's Sprout account and approve access.
  </Step>
</Steps>

The setup card reads the callback URI resolved by the daoco backend for the active deployment. By default it uses that deployment's Convex HTTP endpoint. If `MCP_TENANT_OAUTH_CALLBACK_URL` is configured, the card displays that exact override instead.

<Accordion title="Default endpoint and scopes">
  daoco preconfigures these values, so customers do not need to enter them:

  ```text theme={null}
  Endpoint: https://mcp.sproutsocial.com/mcp
  Scopes: openid profile organization_id
  ```
</Accordion>

<Accordion title="Optional deployment-wide client">
  If Sprout explicitly approves a multi-tenant OAuth client for daoco, set
  `MCP_SPROUT_SOCIAL_CLIENT_ID` and `MCP_SPROUT_SOCIAL_CLIENT_SECRET` in the
  Convex deployment environment. Customers will then see a one-click OAuth
  connection instead of the credential form. Do not use this model without
  confirmation from Sprout.
</Accordion>

<Warning>
  If **Global Features > API** is missing, ask a Sprout account administrator to confirm your plan, role, and API access. Do not paste the OAuth client secret into chat, tickets, or customer-facing documentation.
</Warning>

See Sprout's [API setup documentation](https://api.sproutsocial.com/docs/) and [hosted MCP connection overview](https://support.sproutsocial.com/hc/en-us/articles/41236268336653-ChatGPT-Connection-Overview-and-Setup) for provider requirements.
