# Social Media MCP Server: What It Is and What to Check

A social media MCP server lets an AI agent post, reply to comments, read DMs, and pull analytics. What tools it needs, how auth works, and what to check first.

Canonical page: https://www.tryadeli.com/blog/social-media-mcp-server
Last updated: 2026-10-12

By Mika Reyes, Co-founder, Adeli. Published 2026-10-12.

## The short answer

A social media MCP server exposes social network actions (publish, comments, messages, analytics) as tools an AI agent like Claude can call. Check three things before connecting one: whose developer app it posts through, how it authenticates, and which tools can change data. Adeli's MCP server covers Instagram, Facebook, TikTok, YouTube, X, and Bluesky with one API key.

A social media MCP server is a service that turns a social network's API into **tools an AI agent can call**: publish a post, list comments, reply to a DM, pull last week's analytics. The agent (Claude, Codex, Cursor, or your own) decides when to call each tool, and the server makes the real API request on a real account. So **what the server can do, and whose credentials it uses**, matters more than where it sits in a directory listing.

## What is a social media MCP server?

**It is an adapter between an AI agent and one or more social network APIs.** The [Model Context Protocol](https://modelcontextprotocol.io/docs/getting-started/intro) (MCP) is an open standard for connecting AI applications to outside systems. A server lists its tools, the agent picks one, and the server runs it.

Think of a travel power adapter. The agent has one plug shape, and each MCP server reshapes a different service to fit it. A social media MCP server reshapes Instagram's, TikTok's, or X's API so "post this Reel at 9am" becomes a tool call.

The server gets **no special access** to any network. It can only do what that network's official API allows, through a developer app and tokens someone has to own. There are three common setups:

| Setup | Whose developer app? | Who passes platform review? | Networks per server |
| --- | --- | --- | --- |
| **Open-source server you run** (often from GitHub) | Yours | You | Usually one |
| **A platform's own MCP** | The platform's | Nobody, but scope is often narrow | One |
| **Unified social media API with an MCP server** (like Adeli) | The provider's | The provider | Many |

## What tools should a social media MCP server expose?

**At minimum: publish, read comments, read messages, and read analytics, with reads and writes clearly separated.** A server that only posts leaves the agent blind to what happened next. Here's the tool set to look for, with [Adeli's MCP tools](https://www.tryadeli.com/docs/mcp/tools) as a reference:

| Job | What the agent needs | Adeli MCP tools |
| --- | --- | --- |
| **Find the right account** | List the accounts it can act on | `list_profiles`, `list_accounts` |
| **Publish and schedule** | Create a post now or at a set time, then check async uploads | `create_post`, `get_tiktok_post_status`, `get_youtube_post_status` |
| **Comments** | List, reply, hide, delete | `list_comments`, `reply_to_comment`, `update_comment`, `delete_comment` |
| **Messages** | Read DM history and reply | `list_messages`, `send_message` |
| **Analytics** | Account and post metrics | `get_instagram_insights`, `get_tiktok_video_insights`, `get_youtube_channel_insights` |
| **Connect new accounts** | Send the account owner a sign-in link | `start_connect`, `get_connect_session` |

Two less obvious things separate a good server from a demo:

- **Async status tools.** TikTok and YouTube video publishing is asynchronous. Without a status tool, the agent reports "posted" before the platform has accepted the video.
- **Partial results.** A read across six accounts can succeed on five. Adeli returns `status: "partial"` with an `errors` list instead of failing the whole call, so the agent can say exactly which account broke.

## Can I use an MCP server as a social media scheduler?

**Yes, if its publish tool accepts a scheduled time.** On Adeli, `create_post` takes exactly the JSON body of `POST /api/v1/posts`, so sending a scheduled time instead of `publishNow` queues the post until it's due. A conversation like "draft five posts for next week and schedule them for 9am" becomes five `create_post` calls.

What MCP doesn't give you is a calendar view. If a person needs to review the queue visually, keep that in your own product and use the [posting API](https://www.tryadeli.com/social-media-posting-api) underneath.

## How do social media MCP servers authenticate?

**There are two separate logins, and people often mix them up.** One is the agent proving it may use the MCP server. The other is the social account owner granting access to their Instagram or TikTok.

**Layer 1: agent to MCP server.** The [MCP authorization spec](https://modelcontextprotocol.io/specification/2025-06-18/basic/authorization) says authorization is **optional**. HTTP servers that use it should follow the spec's OAuth 2.1 flow, and local stdio servers should read credentials from the environment instead. Social media servers use one of three models:

| Model | How it works | Trade-off |
| --- | --- | --- |
| **API key in a header** | The client sends `Authorization: Bearer <key>` on every request | One step to set up. The key sits in a local config file, so treat it like a password. Clients that only support OAuth can't add it directly. |
| **OAuth 2.1** | The client opens a browser sign-in and receives a scoped token | Works in OAuth-only clients. More moving parts for the server to run. |
| **Environment variables (stdio)** | A local server reads platform tokens from your shell | Fine on your own machine. Every token refresh is your job. |

**Layer 2: MCP server to social network.** The account owner always signs in on the network's own consent screen. With an open-source server, that's your app's OAuth flow and your token refresh job. With Adeli, `start_connect` returns an `authUrl` the account owner opens, and Adeli stores and refreshes the token.

## What should I check before giving an agent posting rights?

**Check what the agent can change, who it can change it for, and what it costs.** MCP's [tools spec](https://modelcontextprotocol.io/specification/2025-06-18/server/tools) says there should always be a human in the loop who can deny a tool call. It also says clients must treat tool annotations as untrusted unless the server is trusted.

Before you connect a server to accounts that matter:

1. **List the tools that change data.** Run a `tools/list` request and read every tool that isn't read-only. Anything that posts, deletes, sends a DM, or spends money needs your client's confirmation prompt left on.
2. **Check the annotations.** Adeli marks read-only tools with `readOnlyHint`, and `disconnect_account` and `ads_set_status` with `destructiveHint`, so clients that ask before acting will ask.
3. **Scope the credential.** Give each machine or agent its own key, read it from an environment variable, and never commit the config file. On Adeli, deleting a key under Settings → API keys revokes it immediately.
4. **Know which tools cost money.** Every X post is billed at X's price, and ad tools can start paid delivery. Adeli's `get_x_usage` tool returns what this month's X calls have cost.
5. **Check whose account each tool targets.** On Adeli, nothing defaults to a profile: every tool takes a `profileId` or an `accountId`, so an agent can't post to customer A while you meant customer B.
6. **Test on a throwaway account first.** A post an agent publishes by mistake can be seen before anyone deletes it.

## Are there social media MCP servers on GitHub?

**Yes, plenty, and most are single-network servers you run yourself.** They're a good fit if you post to your own accounts and already hold an approved developer app. For anything multi-tenant, the code is free but the platform work isn't:

- **Your own developer app** on every network, and a review for each one. Instagram publishing to accounts you don't own needs [Meta App Review and Business Verification](https://developers.facebook.com/docs/instagram-platform/overview).
- **TikTok's audit.** Per [TikTok's docs](https://developers.tiktok.com/doc/content-posting-api-get-started), content from unaudited clients is restricted to private viewing.
- **Token refresh** for every connected account, on each network's schedule.

When we went through Meta's reviews for clients, each round took roughly 8–10 days, and getting every permission approved can take several rounds. If that's where you're stuck, an MCP server on a unified API skips it.

## Which social media MCP server is best?

**The best one is the one that covers your networks with an app you don't have to get approved.** Use this checklist instead of a ranking:

| Question | Why it matters |
| --- | --- |
| Which networks are live? | One server per network means one setup, one key, and one review per network |
| Does it publish, or only read? | Data and social listening servers can't post |
| Whose developer app does it use? | If it's yours, you own every review and token |
| Can it reply to comments and DMs? | An agent that posts but can't reply leaves conversations hanging |
| Does it work in your client? | API-key servers and OAuth-only clients don't mix |
| How is it priced? | Per post, per seat, and per account models diverge fast at volume |

## How does Adeli's MCP server work?

**Adeli runs a hosted MCP server at `https://app.tryadeli.com/mcp`, over Streamable HTTP, authenticated with your Adeli API key.** Each tool calls the same REST endpoint with the same validation and errors, so nothing is available over MCP that isn't available over REST.

- **Networks:** Instagram, Facebook, TikTok, YouTube, X, and Bluesky are live. LinkedIn is coming soon, and it will show up as MCP tools the same way once it ships.
- **Who owns the platform work:** Adeli maintains the developer app on every supported network, goes through each review, and refreshes tokens.
- **Clients:** Claude Code, Claude Desktop, Codex, Cursor, and any client that can send an API key header to a remote MCP server. The [Claude setup guide](https://www.tryadeli.com/agents/claude) adds it in one command:

  ```bash
  claude mcp add --transport http adeli https://app.tryadeli.com/mcp \
    --header "Authorization: Bearer $ADELI_API_KEY"
  ```

- **No OAuth sign-in.** The server takes an API key, so OAuth-only clients such as claude.ai custom connectors can't add it directly. Desktop clients can bridge to it with `mcp-remote`.
- **Price:** per connected account, and **the first 3 are free**. X's API usage fees are passed through at X's published rates. See [pricing](https://www.tryadeli.com/pricing).

Setup guides for Claude, Codex, Cursor, n8n, Zapier, and more are on the [Adeli for agents](https://www.tryadeli.com/agents) page. For a deeper look at Instagram and TikTok options specifically, see [Instagram and TikTok MCP servers for Claude](https://www.tryadeli.com/blog/instagram-mcp-for-claude).

## Frequently asked questions

### Should my agent use the MCP server or the REST API?

Use the MCP server when an assistant such as Claude, Codex, or Cursor is doing the work in conversation. Call the REST API when you are writing your own agent or product code. On Adeli, every MCP tool wraps one REST endpoint, so the two can do the same things.

### Does a social media MCP server work with ChatGPT?

It depends on how the server authenticates. ChatGPT on the web only adds apps that sign in with OAuth. Adeli's MCP server takes an API key, so use it from Codex, or from any client that can send an Authorization header to a remote MCP server.

### Is a social media MCP server free?

Open-source servers are free to run, but you bring your own developer app on each network and pass each review. Adeli's first 3 connected accounts are free, every tier includes full API access, and X's API fees are passed through at X's published rates.

## Related Adeli pages

- [Post to Social Media from Claude, ChatGPT, or an AI Agent](https://www.tryadeli.com/agents.md): Setup guides for connecting Adeli's MCP server to Claude, ChatGPT/Codex, Cursor, Grok, OpenClaw, Hermes, Manus, Notion, n8n, and Zapier, each with a prompt you can send to your agent.
- [Social Media Posting & Scheduling API](https://www.tryadeli.com/social-media-posting-api.md): Adeli's social media posting and scheduling API publishes to Instagram, TikTok, YouTube, Facebook, X, and Bluesky in one request, now or at a set time. Free to start.
- [Adeli Pricing — priced per connected account](https://www.tryadeli.com/pricing.md): Your first 3 connected accounts are free, then $5 each for accounts 4–10, $3 each for 11–50, $2 each for 51–100, and $1 each up to 2,000. Above that, talk to sales.
- [All posts on the Adeli blog](https://www.tryadeli.com/blog.md)

## About the author

Mika Reyes is the CEO behind Adeli and a tech and AI content creator. She was previously co-founder and CEO of Parallax, which was acquired by Phantom, and a product lead at LinkedIn. She is a Forbes 30 Under 30 honoree.
