MCP Tool Reference
This page lists every tool the Social Champ MCP server exposes. The server URL is https://mcp.socialchamp.com/mcp.
After you approve access, your AI assistant selects the right tools automatically. You don't call tools by name — just describe what you want in plain language, and the assistant picks the tool that fits. The example prompts below show the kind of natural request that triggers each tool.
New to MCP? Start with the MCP guide to connect your account, then browse MCP examples for ready-to-use prompts.
Channels & Workspaces
| Tool | What it does | Example prompt |
|---|---|---|
get_workspaces | Lists all available workspaces for the account. | What workspaces do I have in Social Champ? |
get_channels | Lists all connected social channels for the account. | Show me all my connected social accounts. |
get_channel | Fetches details for a single connected channel by its channelId. | Give me the details of my main Instagram channel. |
get_filtered_channels | Lists channels filtered by platform type and/or free-text search across name, screen name, or email. | List just my LinkedIn and Facebook channels. |
Reading Posts
| Tool | What it does | Example prompt |
|---|---|---|
get_scheduled_posts | Fetches upcoming scheduled posts, optionally bounded by a date range. | What posts do I have scheduled this week? |
get_paginated_posts | Browses post history with page and pageSize controls and optional date filtering. | Show me my last 20 published posts. |
get_posts_for_channels | Fetches posts scoped to specific channel ids, with an optional limit and date range. | Show me everything posted on my Twitter account this month. |
get_posts_with_assets | Fetches posts that include media assets such as images or videos. | Find my posts that have images or videos attached. |
list_collections | Lists the user's recycle collections with id, title, post count, and workspace, used before recycling a post. | What recycle collections do I have? |
Creating Content
| Tool | What it does | Example prompt |
|---|---|---|
create_text_post | Creates and optionally schedules a text-only post to one or more channels. | Post 'Happy Friday everyone!' to my Twitter and LinkedIn now. |
create_image_post | Creates and optionally schedules an image post to one or more channels from publicly accessible image URLs. | Schedule this product photo with a caption to Instagram tomorrow at 2pm. |
instagram_first_comment | Sets or replaces the first-comment text on a scheduled or published Instagram (IG_BUSINESS) post; rejects non-IG posts. | Add the hashtags as a first comment on that Instagram post. |
location_search | Resolves a free-text place query into taggable location candidates for an FB or IG channel, returning id/name/place to pass into post creation. | Find the location tag for the Eiffel Tower for my Instagram post. |
AI Content
| Tool | What it does | Example prompt |
|---|---|---|
generate_post | Drafts a social-media post body in the workspace's brand voice (text only, does not schedule). | Write me a post announcing our new pricing page in a playful tone. |
generate_image | Generates up to 4 images for a post from a prompt; counts against the monthly image-generation quota. | Make me a hero image for our product launch in our brand orange. |
rewrite | Rewrites an existing post body to shorten, expand, or rephrase it, returning original plus rewritten text. | Make this draft shorter and punchier. |
suggest_hashtags | Generates a set of hashtags for a topic or existing post. | Suggest 15 hashtags for a Black Friday sale on bath products. |
Editing & Lifecycle
| Tool | What it does | Example prompt |
|---|---|---|
update_post | Updates an existing post's text, channels, images, or schedule time by postId. | Change the caption on my scheduled post and move it to 4pm. |
delete_post | Deletes a single existing post by postId, such as canceling a scheduled post. | Cancel the post I scheduled for Saturday. |
recycle_post | Copies an existing post into a recycle collection so it re-publishes on that collection's schedule, leaving the original untouched. | Add this evergreen post to my recycle queue. |
Bulk Actions
| Tool | What it does | Example prompt |
|---|---|---|
bulk_schedule | Schedules up to 100 posts in one call, each with its own text, channels, media, and optional time; one failure aborts the whole atomic batch. | Schedule this whole content calendar of 30 posts for next month. |
bulk_delete | Deletes many posts (past or future) by explicit ids or by predicate (channels/date/status/error state); destructive, defaults to dryRun, capped at 500. | Delete all my failed posts from last week. |
bulk_label | Applies, replaces, or clears labels on up to 200 posts in one call, reporting per-post failures. | Tag all these posts with the 'Campaign Q2' label. |
Labels
| Tool | What it does | Example prompt |
|---|---|---|
label_list | Lists the post labels available in the workspace, used before applying a label. | What labels do I have set up? |
label_create | Creates a new post label in the workspace and returns its id; errors DUPLICATE if the title already exists. | Create a new label called 'Product Launch'. |
label_apply | Replaces the entire label set on a post with the supplied list; empty list clears all labels. | Set the labels on this post to just 'Promo'. |
label_remove | Removes specific labels from a post without touching the rest (subtractive); empty list clears all. | Remove the 'Draft' tag from this post. |
Queue
| Tool | What it does | Example prompt |
|---|---|---|
queue_pause | Pauses publishing on one or more channels so future and queued posts are held without firing; omitting channels pauses the whole workspace. | Pause posting on my Facebook page for now. |
queue_resume | Resumes a paused channel and releases held posts, separately reporting any channels still frozen by a billing lock. | Resume posting on my Facebook page. |
queue_reorder | Reschedules many posts at once via a list of postId/dateTime pairs (time-only updates, up to 100); per-item failures captured. | Shift all of Tuesday's posts to Wednesday. |
queue_clear | Bulk-deletes upcoming scheduled posts in a date range (defaults from now), optionally by channel; irreversible, run dryRun first. | Clear my entire upcoming queue for the next two weeks. |
Calendars & Sharing
| Tool | What it does | Example prompt |
|---|---|---|
create_public_calendar_link | Creates a shareable public calendar link for selected channels and a date range, optionally password-protected with permission roles. | Make a shareable calendar link for my client to review April's posts. |
get_shareable_calendars | Lists existing shareable calendars for a workspace. | Show me the shareable calendars I've already created. |
update_shareable_calendar | Updates a shareable calendar's name, date range, password, active status, or permission roles by calendarId. | Extend my shared calendar's date range to the end of May. |
delete_shareable_calendar | Deletes a shareable calendar by calendarId. | Delete the shared calendar link I made last month. |
get_in_app_calendar_url | Returns the authenticated in-app Social Champ calendar URL, optionally for a specific public calendar token. | Give me the link to open my calendar in Social Champ. |
get_calendar_view_options | Returns the supported calendar viewing modes and capabilities. | What calendar view options are available? |
Approvals
| Tool | What it does | Example prompt |
|---|---|---|
approval_list_pending | Lists posts awaiting approval that the account owns (up to 50), filterable by channel, team member, and status. | What posts are waiting on me to review? |
approval_approve | Approves a post awaiting review (account must be a stage approver); optional comment and reschedule time when it clears the final stage. | Approve the launch post that's pending review. |
approval_reject | Rejects a post awaiting review, moving it to DECLINED and notifying the owner; optional comment recommended. | Reject this post and note that the date is wrong. |
approval_assign | Sends an approval reminder to a pending post's stage approvers (throttled to 1/hour); optional email asserts a specific approver is in the loop. | Send a reminder to the reviewers about the post waiting for approval. |