MCP Server vs LinkedIn API: What Is the Difference?
“LinkedIn MCP or API?” is a question people type into search a lot, and the honest answer is that it contains a false choice. Asking it is a bit like asking whether you want an engine or a steering wheel. One is the machinery; the other is how a person operates it. Once you see the layers separately, the decision about which to build with becomes obvious.
What is the LinkedIn API?
An API — an application programming interface, a set of fixed web addresses a program can call to make something happen — is what LinkedIn offers to software rather than to people. Instead of clicking “Post” in the LinkedIn app, your code sends a request to an address such as POST /v2/ugcPosts with the text of the post attached, and LinkedIn publishes it.
Two things matter about LinkedIn’s API in practice, and both catch people out.
It is split into products, and most of them are gated. You do not get “the LinkedIn API” as one thing. You request specific products inside a developer app. Two are free and self-serve: “Sign In with LinkedIn (OIDC)”, which tells you who the member is, and “Share on LinkedIn”, which grants the scope w_member_social — permission to publish on that member’s behalf. Anything richer, such as reading engagement numbers or posting as a company page, needs the Community Management API, which requires a registered legal company and a formal app review.
It is a raw building block, not a product. The API will not remember drafts for you, will not schedule anything for later, will not resize your image, and will not tell you when your token has expired. It does exactly one thing per call. Everything convenient around it is code someone has to write.
What is MCP, and why does it exist as a standard?
MCP stands for Model Context Protocol — an open standard for connecting AI assistants such as Claude or ChatGPT to outside tools and data. It was published as an open specification, and the AI apps implement it on their side.
It exists because of a plumbing problem. Before it, every AI app had to build a bespoke integration for every service: one for LinkedIn, one for your calendar, one for your database, all written differently, all maintained separately. That is a many-to-many mess. MCP replaces it with one shared shape. A tool describes what it can do once, in a standard format, and any AI app that speaks MCP can then use it.
So MCP is not a LinkedIn thing at all. It is a general adapter standard. A LinkedIn MCP server is simply a small service that speaks MCP on one side and speaks to LinkedIn on the other.
So does an MCP server replace the LinkedIn API?
No. It sits on top of one of two things:
- On the official API. The server holds an OAuth token — a limited, revocable key you approved on LinkedIn’s own page — and calls LinkedIn’s documented endpoints. This is the sanctioned route, and it inherits the API’s limits exactly.
- On scraping. The server drives a logged-in browser session using a copied cookie and reads pages as if it were you. This route is not limited by LinkedIn’s product gates, because it is not asking LinkedIn’s permission at all. It carries the corresponding account risk. The most visible open-source LinkedIn MCP server works this way and its own README warns that accounts “can be restricted or banned”.
This is the single most useful thing to understand about the category. Two MCP servers with almost identical tool lists can be doing completely different things underneath. When comparing tools, the question to ask is never “MCP or API?” — it is “which API, and with which permission?”
Neither layer is a rules loophole. LinkedIn’s API Terms of Use, section 3.1(26), restricts using the APIs “to automate posting on the LinkedIn Services”, and there is no written exception for member-approved posting. That applies whether you call the API from your own code or through an MCP server. The defensible position is the same either way: the permission is free and self-serve, the member consents through LinkedIn’s own OAuth screen, the member approves the exact text of every post, nothing is scraped, and access can be revoked at any time.
LinkedIn API vs LinkedIn MCP server: what is the difference?
| LinkedIn API (direct) | LinkedIn MCP server | |
|---|---|---|
| What layer is it? | The machinery LinkedIn exposes | A translator sitting on top of it |
| Who is it for? | Developers building their own product | Anyone working inside Claude or ChatGPT |
| Who talks to it? | Your code | An AI assistant, in conversation |
| What must you build? | A developer app, OAuth flow, token storage, refresh handling, retries, scheduling, image upload | Nothing, if you use a hosted one. You add a connector and sign in. |
| What does it cost? | No fee for the self-serve products; your build and hosting time | Depends on the tool. Kalovio is free in public beta, with no card. |
| How do you use it? | Write and deploy code | Type a sentence |
| What are its limits? | Whatever LinkedIn grants your app | The same limits, plus whatever the server chose to expose |
Read the last row twice. An MCP server can never do more than its underlying access allows. If a tool promises something LinkedIn’s self-serve products do not grant — full post history, engagement analytics, competitor data — then it is either partner-approved or it is scraping. There is no third option.
When should I use the LinkedIn API directly?
Use the API directly when the thing you are building is a product of your own. Specifically:
- You are shipping software other people will use. Your own app, your own sign-in, your own interface. MCP would be the wrong layer — it exists to reach AI assistants, and your users are not sitting in one.
- You need behaviour no conversation can express. Server-side batch jobs, webhooks, background pipelines, syncing to your database.
- You need control over failure. Your own retries, your own logging, your own rate handling.
- You are applying for gated products. The Community Management API review is for the company operating the app, so the app must be yours.
Be realistic about the work. Direct API use means creating a LinkedIn developer app, requesting the products, implementing an OAuth 2.0 flow, encrypting and storing tokens, handling expiry (self-serve member tokens last about 60 days and there is no refresh token at that tier, so members must reconnect), building multipart image upload, and adding your own scheduling. That is a real project, not an afternoon.
When should I use an MCP server instead?
Use an MCP server when you want to work through an AI assistant rather than build around one:
- You do not want to write code at all. This is the main case. Add the connector, sign in with LinkedIn, and ask for what you want.
- The AI is already doing the drafting. If Claude is writing the post anyway, moving it to LinkedIn through a connector removes the copy-and-paste step entirely.
- You want the convenience layer built for you. Drafts, scheduling, an image library, a saved voice profile — things the raw API has no concept of.
- You are one person or a small team. Building a private posting app to serve yourself is a lot of engineering for a job a connector already does.
Both at once is normal. These layers are not in competition. A hosted MCP server is itself a LinkedIn API client — someone did the developer-app work once so that thousands of members do not each have to. Choosing an MCP server is choosing not to rebuild that part.
Which endpoints does a LinkedIn MCP server actually call?
A tool built on the official API should be able to name them. Kalovio uses POST /v2/ugcPosts for text posts, single-image posts and article shares, and LinkedIn’s newer versioned gateway — /rest/images, /rest/documents and /rest/posts, sent with the headers LinkedIn-Version and X-Restli-Protocol-Version — for multi-image posts and PDF document posts. The permission behind all of it is w_member_social from the free “Share on LinkedIn” product, plus Sign In with LinkedIn for identity.
Naming endpoints is a useful test to apply to any tool in this space. None of the four LinkedIn posting SaaS pages that currently rank for these searches names a single OAuth scope or a single endpoint anywhere on the page.
The versioned gateway caveat. LinkedIn’s documentation says w_member_social is enough for multi-image and document posts, but the versioned gateway may still be product-gated for a self-serve app. A rejection there is handled with a clear message rather than a silent failure. Try it on your own account before relying on it.
What can neither layer do?
Because an MCP server inherits the API’s limits, these apply to both, and no tool built on self-serve access escapes them:
- Reading posts it did not create. The permission for wider post history,
r_member_social, is closed to self-serve apps. - Engagement analytics. Likes, comments and impressions live behind the partner-gated Community Management API.
- Resolving a company page by name. Tagging a company needs its numeric organisation id, and there is no name-to-id lookup at this tier.
- Messages, connection requests and lead scraping. Not available, by design.
The short version
The LinkedIn API is what LinkedIn exposes. MCP is a standard for letting an AI assistant use tools. A LinkedIn MCP server is the piece in between, and it is only as capable, and only as legitimate, as the access it sits on. Building your own product? Go to the API directly. Want to post from a conversation without writing code? An MCP server built on that same API is the shorter path.
Questions people ask
Is a LinkedIn MCP server the same as the LinkedIn API?
No. The LinkedIn API is the set of endpoints LinkedIn exposes to approved apps. An MCP server is a separate service that sits on top of an API and presents it to an AI assistant as named tools it can call in conversation. The MCP server is a client of the API, not a replacement for it.
Do I still need a LinkedIn developer app if I use an MCP server?
Not if you use a hosted one. The service operating it has already created the developer app and requested the products. You sign in with your own LinkedIn account through OAuth and grant it permission. You would only need your own developer app if you were building software of your own against the API directly.
Can an MCP server do things the LinkedIn API cannot?
Not through the official API, no — it inherits exactly the same limits. A server that appears to do more is either partner-approved for gated products, or it is scraping a logged-in browser session rather than calling the API. That difference is worth checking before connecting anything to your account.
Which is cheaper, the LinkedIn API or an MCP server?
LinkedIn charges no fee for the free self-serve products, so the cost of going direct is your build and hosting time, which is substantial. An MCP server's cost depends on the tool; some are paid, and Kalovio is free during its public beta with no card required. Pricing on any tool may change later.
What does MCP stand for?
Model Context Protocol. It is an open standard for connecting AI assistants to outside tools and data, so that one tool can be built once and used by any AI app that supports the standard, rather than a separate custom integration per app.
Does LinkedIn have an official MCP server?
No. LinkedIn does not publish one. Every LinkedIn MCP server available today is built by a third party, on top of either LinkedIn's official API or a scraped browser session.
Sources
Try Kalovio free
Run your LinkedIn from a chat with Claude or ChatGPT. Add this as a custom connector — free while in beta, and you approve every post before it goes live.
https://kalovio.com/mcpHow to connect