# LinkedIn MCP server: post, comment and like from any AI agent

> A hosted LinkedIn MCP server on LinkedIn's official API, with no cookies or scraping. Let Claude, ChatGPT, Cursor or any agent post, comment and like as you.

Updated 2026-11-01 · https://upsy.ai/guides/linkedin-mcp-server

## Short answer

Upsy is a hosted LinkedIn MCP server (a connector that lets an AI agent use LinkedIn) at `https://upsy.ai/connect`. Connect LinkedIn in Upsy with LinkedIn's own sign-in, add the address to your agent, and it can post, comment and like as you, through LinkedIn's official API. It can't read your feed, messages or other people's profiles: LinkedIn doesn't let any app do that without its approval, and the servers that do it drive your logged-in session, which LinkedIn's terms ban. Setup takes a few minutes, and it's free for personal use.

## What LinkedIn lets an MCP server do

LinkedIn has no official MCP server, and its API is closed by default. An app gets only a few permissions without LinkedIn's approval ([Microsoft Learn](https://learn.microsoft.com/en-us/linkedin/shared/authentication/getting-access)):

- **`profile` and `email`:** who you are.
- **`w_member_social`:** "Post, comment and like posts on behalf of an authenticated member." Posts can be text, a link, images or a video, shown to everyone or your connections, up to 150 a day per member ([Share on LinkedIn](https://learn.microsoft.com/en-us/linkedin/consumer/integrations/self-serve/share-on-linkedin)).

Reading even your own posts and comments needs `r_member_social`, which is "restricted and is available to approved users only" ([Posts API](https://learn.microsoft.com/en-us/linkedin/marketing/community-management/shares/posts-api)). No open permission covers the feed, other people's posts, messages or connections.

## LinkedIn MCP servers compared

| | Upsy | Composio's LinkedIn toolkit | Browser and cookie servers |
|---|---|---|---|
| How it connects | LinkedIn's API, with LinkedIn's sign-in | LinkedIn's API, with LinkedIn's sign-in | Your logged-in session or your `li_at` cookie |
| Posts | Text, a link card, up to 20 images or a video | Text, article, image and video posts | Varies |
| Comments and likes | Yes | Comments | Varies |
| Reads feed, profiles, messages | No | No; your own profile and page stats | Yes |
| Risk to your account | None beyond posting | None beyond posting | LinkedIn bans scraping bots, and accounts "can be restricted or banned" |
| Who runs it | Upsy | Composio | You |

Servers like [stickerdaniel/linkedin-mcp-server](https://github.com/stickerdaniel/linkedin-mcp-server) read profiles, jobs, your feed and your inbox by driving a real browser on your account. LinkedIn's [User Agreement](https://www.linkedin.com/legal/user-agreement) (section 8.2) bans software and bots that scrape or automate the site, and its [help center](https://www.linkedin.com/help/linkedin/answer/a1341387) says accounts using them may be "restricted or shut down". That project's own FAQ warns the same.

## Server details

| | |
|---|---|
| Address | `https://upsy.ai/connect` |
| Transport | Streamable HTTP |
| Sign-in | OAuth 2.1 with PKCE. No client secret, no API key |
| LinkedIn permissions | `openid`, `profile`, `email`, `w_member_social` |

The same server holds your other apps, like Gmail and Google Calendar. The full OAuth details are in the [Gmail MCP server guide](/guides/gmail-mcp-server).

## Connect LinkedIn to Upsy

1. Go to [upsy.ai](https://upsy.ai) and click **Set up Upsy**.
2. Open **Apps**, choose LinkedIn and sign in on LinkedIn's page. It asks to let Upsy use your name, photo and email, and to post, comment and react for you.
3. On the **Assistants** page, click **Add assistant** and choose your agent under **Which assistant?** for its exact steps.

## Add the server to your agent

When you sign in, Upsy shows a page where you tick LinkedIn, pick its access and click **Allow**.

- **Claude Code:** `claude mcp add --transport http --scope user upsy https://upsy.ai/connect`, then `/mcp` to sign in.
- **Cursor:** add `{"mcpServers":{"upsy":{"url":"https://upsy.ai/connect"}}}` to `~/.cursor/mcp.json`, then connect it in Cursor's MCP settings.
- **Codex:** `codex mcp add upsy --url https://upsy.ai/connect`, then `codex mcp login upsy`.
- **Claude:** Customize › Connectors › **Add custom connector**. See [Claude MCP](/guides/claude/custom-connector).
- **ChatGPT:** Plugins › **Add** › **Create custom MCP server**, with OAuth. See [ChatGPT MCP](/guides/chatgpt/custom-connector).
- **Grok and Muse:** paste the setup prompt Upsy shows into a chat and approve the sign-in.

## Check that it works

Ask your agent:

> Which LinkedIn account can you post as? Don't post anything yet.

It should call `linkedin_account` and answer with your name and email.

## LinkedIn tools

Labels come from each tool's MCP annotations: **Read**, **Write**, and **Sensitive write** (it publishes or can't be undone).

| Tool | What it does | Label |
|---|---|---|
| `linkedin_account` | The name and email your posts go out as | Read |
| `linkedin_post` | Posts right away, with no drafts. Up to 3,000 characters, to everyone or your connections only, plus one of: a link card, up to 20 images, or one MP4 video up to 200 MB. Images and videos come from a link or your Upsy files. | Sensitive write |
| `linkedin_comment` | Comments on a post, by its link, up to 1,250 characters | Sensitive write |
| `linkedin_like` | Likes a post, by its link. Other reactions, like Celebrate, aren't available | Write |

Hashtags work in posts. Mentions of people (@name) stay plain text.

## Access levels

Each agent gets its own level for LinkedIn on the Assistants page: **Full access**, **Read-only** (only `linkedin_account`), **Pick actions** (for example, likes but no posts) or **No access**. A tool the level doesn't allow isn't listed and can't be called.

## Prompts to try

- "Write a LinkedIn post announcing our launch, in my voice. Show me the final text before you post it."
- "Turn this X post into a LinkedIn post, with its image: https://x.com/…"
- "Post the video launch.mp4 from my Upsy files to LinkedIn, visible to my connections only."
- "Comment 'Congratulations, well deserved!' on this post: https://www.linkedin.com/feed/update/urn:li:activity:…/"
- "Like these three posts: …"

## Troubleshooting

### "LinkedIn access was revoked"

LinkedIn turned the connection down, usually because Upsy's access was removed in LinkedIn or the sign-in ran out. Reconnect LinkedIn under **Apps**.

### "LinkedIn is limiting this account's requests for now"

LinkedIn caps sharing at 150 requests a day per member. Try again later.

### The agent says it can't find the post

Give it the post's link from LinkedIn's **Copy link to post**, or its URN (`urn:li:activity:…`). Profile links don't work.

### A video post doesn't show yet

LinkedIn processes videos after upload. The post appears within a few minutes.

### The agent says it can't read my posts or feed

That's LinkedIn's rule, not a setting. No tool in Upsy reads LinkedIn.

## Security and privacy

- Agents never get your LinkedIn password or token. They call Upsy's tools, and Upsy calls LinkedIn.
- Posts are public by default and go out immediately, so keep your agent's approval prompt on for `linkedin_post` and `linkedin_comment`. Upsy has no approval prompt of its own.
- Every post, comment and like is in Upsy's **History** under the agent that made it, with a link. Upsy emails you when one agent sends 20 or more emails, messages or posts within 10 minutes.
- An email or web page can carry instructions aimed at your agent. Give agents that read untrusted content **Pick actions** without posting, or **No access** to LinkedIn.
- One click on the Assistants page turns an agent off, and disconnecting LinkedIn in Upsy cuts every agent off from it.

## FAQ

### Is there an official LinkedIn MCP server?

No. As of November 1, 2026, LinkedIn's API docs list no MCP server. Servers named "LinkedIn MCP" are built by others, either on LinkedIn's API, like Upsy, or on your logged-in session.

### Can an MCP server read my LinkedIn feed or messages?

Not through LinkedIn's API without LinkedIn's partner approval. Servers that do it use your session cookie or a browser signed in as you, which LinkedIn's User Agreement bans.

### Can Claude post on LinkedIn?

Yes. Add Upsy to Claude as a custom connector, connect LinkedIn in Upsy, and ask Claude to post. Claude asks before it calls the tool.

### Can it post to a company page?

No. Upsy posts as you. Posting as a company page needs permissions LinkedIn gives only to approved partners.

### Can I schedule LinkedIn posts?

Upsy posts right away; there are no drafts. To post later, ask an assistant that runs scheduled tasks, like ChatGPT or Claude, to post at that time.

---

Upsy connects personal AI assistants (Muse, Grok, ChatGPT, Claude, Cursor, Claude Code, Codex, Devin) to your Gmail, Google Calendar, Google Drive, Slack, Notion and other apps through one MCP server, with a shared memory, files and a cloud browser signed in to your sites. You choose what each assistant may do in each app, see everything it did, and turn it off in one click. Upsy is free. To add Upsy to an assistant, add a remote MCP server (Streamable HTTP) named Upsy at https://upsy.ai/connect. It signs in with OAuth; there is no API key.
