Skip to main content

Make.com and other MCP clients

Social Champ runs a hosted Model Context Protocol (MCP) server. Point any MCP client at it, and an assistant can draft, schedule, edit and read back posts on the channels your account already has connected.

Endpointhttps://mcp.socialchamp.com/mcp
ProtocolJSON-RPC 2.0 over HTTP POST
Auth headerAuthorization: Bearer <token>
Tools44

The server accepts two kinds of bearer token:

  • A Social Champ API key. This is the fastest way to try the server from a script, or to connect your own account.
  • An OAuth 2.0 access token. Use this when a client acts for someone else.

Nothing else about the request changes between the two.

Connect Make.com​

Make connects to Social Champ through its MCP Client app. The app has two modules: Call a tool, which runs one named tool, and Execute an action with AI, which lets the AI pick and run the tools it needs.

  1. In your Make scenario, add an MCP Client module.
  2. Select Create a connection.
  3. In MCP Server, select + New MCP Server.
  4. In URL, enter https://mcp.socialchamp.com/mcp.
  5. Choose how to sign in:
    • API key. Paste a Social Champ API key into the API Key / Access token field. See Create an API key.
    • OAuth. Leave the field empty. When you save, Make opens a Social Champ sign-in page. Sign in and approve access. Make registers itself automatically, so you do not need a client ID. Its redirect URI is https://www.make.com/oauth/cb/mcp.
  6. Select Save.

To check the connection, add a Call a tool module and run get_channels. It returns the channels in your account and their IDs.

tip

Use an API key for scenarios that run on your own account. Use OAuth when each person should approve access with their own Social Champ login. OAuth works on every plan. Creating an API key depends on your plan.

Try it with an API key​

You can call the server directly with one request. No registration and no redirect are needed.

Create an API key in Social Champ under Settings → Developer → API Keys. Then list the tools the server exposes:

curl -sS https://mcp.socialchamp.com/mcp \
-H "Authorization: Bearer $SOCIALCHAMP_API_KEY" \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'

Calling a tool uses the same shape, with the tool name and its arguments. This request schedules a post on two channels:

{
"jsonrpc": "2.0",
"id": 2,
"method": "tools/call",
"params": {
"name": "create_text_post",
"arguments": {
"text": "Doors open at 9. Coffee is on us.",
"channelIds": ["642523d40be0b54def3ba82f", "6512a71c0be0b54def4c11ab"],
"isScheduled": true,
"dateTime": "2026-10-02T09:00:00Z"
}
}
}

Leave out isScheduled and dateTime to publish right away. Set saveAsDraft: true to save the post to Publish → Drafts instead. A draft never publishes on its own.

Channel IDs come from get_channels. Request them before you post instead of hard-coding them. If a channel is removed from Social Champ and added again later, it can come back with a new ID.

Connect with OAuth​

Use OAuth for a client that acts for Social Champ users other than you.

The server supports dynamic client registration, so you do not need to contact us for a client ID. A client finds the endpoints, registers itself, and runs a standard authorization code flow with PKCE. Most MCP client libraries do all five steps for you once you give them the endpoint above.

  1. Discover the resource. GET https://mcp.socialchamp.com/.well-known/oauth-protected-resource/mcp returns the resource identifier and the authorization server that protects it.
  2. Discover the authorization server. GET https://mcp.socialchamp.com/.well-known/oauth-authorization-server returns the issuer and the three endpoints below.
  3. Register. Send POST /oauth2/mcp/register as described in RFC 7591, with at least one entry in redirect_uris. You get back a client ID. You also get a client secret, unless you register with token_endpoint_auth_method: "none", which is the default.
  4. Authorize. Send the user to /oauth2/mcp/authorize with response_type=code and a PKCE challenge. The server only accepts the S256 challenge method.
  5. Exchange and refresh. POST /oauth2/mcp/token exchanges the code for an access token. Later, it exchanges a refresh token for a new access token.

What the authorization server advertises​

Issuerhttps://mcp.socialchamp.com
Authorize/oauth2/mcp/authorize
Token/oauth2/mcp/token
Register/oauth2/mcp/register
Grantsauthorization_code, refresh_token
PKCES256
Client authclient_secret_post, client_secret_basic, none

The registration and token endpoints are meant to be called from a server. Browser-based clients on other domains are not supported yet.

Scopes​

Every token must include read_profile and manage_post. Together they cover posting, scheduling, the calendar, labels, media and the AI tools. A token without both is rejected with 401.

manage_team is optional. It controls six tools used by agencies: approval_list_pending, approval_approve, approval_reject, approval_assign, bulk_delete and bulk_label. A client connected without it still works for every other tool. Only those six return an insufficient_scope error, which names the missing scope so the client can ask for it again. For an API key, select manage_team when you create the key.

What the tools cover​

There are 44 tools, grouped by the part of Social Champ they work with. See MCP tools for details on each one.

AreaCountTools
Posts11create_text_post, create_image_post, update_post, delete_post, bulk_schedule, get_paginated_posts, get_posts_for_channels, get_posts_with_assets, get_scheduled_posts, queue_reorder, instagram_first_comment
Channels4get_channels, get_channel, get_filtered_channels, location_search
Workspaces1get_workspaces
Calendars6get_calendar_view_options, get_shareable_calendars, get_in_app_calendar_url, create_public_calendar_link, update_shareable_calendar, delete_shareable_calendar
Queue3queue_pause, queue_resume, queue_clear
Labels5label_list, label_create, label_apply, label_remove, bulk_label (manage_team)
Recycling2list_collections, recycle_post
Approvals5(manage_team) approval_list_pending, approval_approve, approval_reject, approval_assign, bulk_delete
AI4generate_post, suggest_hashtags, rewrite, generate_image
Media3create_media_upload, complete_media_upload, import_media_from_url

Things to know before you build​

  • Approvals change what success means. If the workspace uses an approval workflow, a post created through a tool is held for approval and does not publish until someone approves it. The tool still returns success. Each held post in the result is marked approvalStatus: "PENDING".
  • Media URLs must be public. Image and video URLs must be direct file links that the social platform can download. For files that need a login, use create_media_upload and complete_media_upload, or import_media_from_url. See MCP media.
  • Destructive tools start with a dry run. bulk_delete and queue_clear report what they would remove until you set dryRun: false.
  • Rate limits. Each key or token gets 60 requests per minute, and each account gets 1,000 requests per hour. Reads count as well as writes. Every response shows the remaining budget in its RateLimit-* and X-Account-RateLimit-* headers. A 429 response includes Retry-After. Use bulk_schedule instead of calling create_text_post in a loop. See Rate limits.
  • There is a second route. /mcp/claude serves the same server with 43 of the 44 tools for the Claude directory listing. It leaves out generate_image. Build against /mcp unless we tell you otherwise.

Get help​

If a tool or field does not work the way this page describes, contact Social Champ support. Include the tool name and the arguments you sent.