BlogUpdated Aug 26, 2026

How to Schedule LinkedIn Posts with MCP (Claude, ChatGPT, Cursor)

Schedule LinkedIn posts from Claude, ChatGPT, or Cursor with MCP. OAuth once, then target company pages, mentions, and best times.

To schedule LinkedIn posts with MCP, connect a remote MCP server to your AI client and link your LinkedIn account. SocialRobot exposes the server at https://socialrobot.io/api/mcp: after one OAuth approval, the agent can draft a post, target a company page or people mentions, pick a time, and call create_post. The post appears on the SocialRobot calendar for review.

Most people who search for this want the same thing: they already write with an AI assistant. The draft exists five minutes after the idea does. What breaks the flow is everything after the draft, because publishing on LinkedIn still means copying text into a browser tab, picking a time by gut feel, and remembering which page you were posting to.

An MCP server closes that gap. Your assistant already has the draft; give it a connection to your LinkedIn accounts and it can do the rest without you leaving the conversation. If you are new to the setup, the full walkthrough of the SocialRobot MCP setup covers the generic connection flow.

This guide uses SocialRobot's MCP server because it is hosted (no local install), speaks OAuth (no API key to manage), and exposes scheduling tools built specifically for LinkedIn quirks like company targeting and mentions. The same flow works in Claude, ChatGPT, Cursor, VS Code, Windsurf, or any client that supports remote MCP servers.

Set it up once

Link your LinkedIn accounts in SocialRobot first. That includes your personal profile plus any Company Pages you manage; the MCP tools operate on whatever you connected there.

Then add the server to your MCP client:

{
  "mcpServers": {
    "socialrobot": {
      "type": "http",
      "url": "https://socialrobot.io/api/mcp"
    }
  }
}

The first connection opens a normal SocialRobot login and one consent screen. Publishing and media upload are separate scopes from analytics, so you can grant read-only access if you want the assistant reporting numbers but never posting.

That is the whole setup. No Docker, no local process, no API key rotation.

A real week of LinkedIn, from chat

Here is what the workflow looks like in practice rather than in theory.

Monday morning. You have three things worth saying this week: a launch announcement, a hiring post, and a take on your industry. Instead of drafting each one separately, try:

Look at my last ten LinkedIn posts, note which topics got the most engagement, then draft this week's launch announcement in that style. Schedule it for Tuesday at 9am EST.

The agent calls list_posts to see your history, drafts in your voice, and calls create_post with Tuesday 9am. The post lands in your SocialRobot calendar as scheduled, not live. Nothing publishes until you review it there.

Tuesday, after the launch post goes out. The hiring post needs a company page, not your profile:

Post the hiring update to our Company Page. Target it to Montevideo and mention our CTO. Thursday around 10am.

For this the agent chains linkedin_search_organizations to pick the right page, linkedin_search_geo_locations to resolve Montevideo into a targeting location, and linkedin_search_people_mentions to get your CTO's mention ID right. Those lookups are exactly the part people get wrong by hand, pasting names and hoping the platform matches them.

Friday. Numbers, not posting:

How did this week compare to last week on LinkedIn? Break down who engaged.

get_account_analytics and get_follower_demographics return the data, including company page audiences broken down by country, seniority, and industry. The agent summarizes it in the same thread where you have been working.

Prompts that map cleanly to the tools

You sayThe agent calls
"What are my best posting times?"Best-time analysis from your history via list_posts and analytics
"Draft and schedule a launch post for Tuesday 9am"create_post
"Post this to our Company Page, target Uruguay"linkedin_search_geo_locations, linkedin_search_organizations, create_post
"Mention @ourCTO in the next post"linkedin_search_people_mentions, create_post
"Move Thursday's post to Friday"reschedule_post
"Delete the draft about the old pricing"delete_post
"How did we do this month vs last?"get_account_analytics, get_posts_with_analytics

The review step is the point

Every post the agent creates goes to the SocialRobot calendar first. You approve, edit, or delete before anything reaches LinkedIn. The assistant writes and schedules; you keep the final word. That division of labor is why this is safe to hand a company account.

When MCP is not the right tool

If you are building your own product and want LinkedIn posting inside your app's code, use the HTTP API instead: documented endpoints, predictable requests, no agent in the middle. MCP earns its keep when a human assistant is driving and the task is conversational ("draft, target, schedule, report"). Both share the same quota pool, so mixing them is fine.

Getting started

  1. Create a SocialRobot account (free tier includes MCP).
  2. Connect your LinkedIn profile and Company Pages.
  3. Add https://socialrobot.io/api/mcp to your MCP client.
  4. Approve the scopes.
  5. Ask for your first post. Review it in the calendar. Ship it.
  6. Or compare all MCP schedulers in the roundup.

The whole loop, from idea to published, no longer requires a single copy-paste.

Connect your accounts and let your agent publish.

SocialRobot MCP is free on every plan. Add socialrobot.io/api/mcp to Claude, ChatGPT, or Cursor and start scheduling from chat.

Read the MCP guide