How to Add a LinkedIn MCP to ChatGPT (Developer Mode, Step by Step)
Most guides about LinkedIn and AI assistants only cover Claude. ChatGPT can do it too, but the path is different, it is hidden behind a setting called Developer Mode, and there is one final step that catches almost everybody. Here is the whole thing, in order.
Can ChatGPT connect to LinkedIn at all?
Yes, through an MCP server. MCP (Model Context Protocol) is an open standard for plugging an AI assistant into an outside service. A LinkedIn MCP server sits between ChatGPT and LinkedIn’s official API, so you can say “post this to LinkedIn on Thursday at 9am” and it happens, without you opening LinkedIn.
What ChatGPT does not have is a built-in LinkedIn integration. You have to add a connector yourself, and to add a custom one you need Developer Mode switched on.
What do I need before I start?
Three things, and it is worth checking them now rather than halfway through:
- A paid ChatGPT plan. Developer Mode is available on Plus, Pro, Team, Enterprise and Edu. It is not on the free plan.
- The web version of ChatGPT. Developer Mode connectors are a web feature. The iPhone and Android apps will not show the setup screens.
- A LinkedIn account you can sign in to. You will approve the connection on LinkedIn’s own page, so no password ever goes into ChatGPT.
The rest of this guide uses Kalovio as the server, because it is free, hosted, and built to publish posts rather than scrape profiles. The steps are the same shape for any remote MCP server — only the URL changes.
How do I turn on Developer Mode in ChatGPT?
In ChatGPT on the web:
- Open Settings from your profile menu.
- Look for the Connectors section. OpenAI moves this around between releases, so it may sit under a different heading on your account — if it is not obvious, search the settings for “developer”.
- Switch Developer mode ON.
If you cannot find the toggle anywhere, the usual reason is one of the two conditions above: you are on the free plan, or you are in a mobile app. Neither has a workaround.
How do I add the LinkedIn MCP server?
Once Developer Mode is on, a Plugins entry appears in the left-hand menu of Settings. Then:
- Open Plugins and press the + button.
- Choose New Plugin.
- Name: Kalovio
- Connection → Server URL:
https://kalovio.com/mcp - Authentication: OAuth
- Tick the box confirming you understand you are adding a third-party connector.
- Press Create.
ChatGPT then sends you through sign-in. You sign in with LinkedIn, LinkedIn shows you a consent screen listing exactly what you are granting, and you approve it. That single screen creates your account and connects LinkedIn at the same time — there is no separate password to invent.
Two separate sign-ins, and that is on purpose. One is ChatGPT proving to the server that it is you. The other is the server holding your LinkedIn permission. They never touch each other. Your LinkedIn access token stays encrypted on the server side and is never handed to ChatGPT, never written into a chat, and never shown in any tool output.
Why is the connector not doing anything in my chat?
This is the step nearly every guide leaves out, and it is the reason most people think the setup failed.
A Developer Mode connector is not automatically active in a new conversation. Adding it in Settings makes it available; it does not switch it on. In each chat you have to turn it on yourself:
- Start (or open) a chat.
- Click the + button near the message box — the tools menu.
- Find Kalovio in the list and switch it ON for this conversation.
Now ask it something simple, like “check my LinkedIn account status”. If it answers with your connected account, you are done. If you open a brand-new chat tomorrow, you may have to flip that switch again — that is how Developer Mode connectors behave, not a fault in the server.
What can I actually do once it is connected?
With Kalovio connected, you write in plain English and the assistant does the LinkedIn part:
- Publish now — text posts, a link with your own commentary, or a post with one image.
- Schedule — any date and time, in your own timezone.
- A weekly queue — set your posting slots once, then drop posts into the next free one.
- Drafts — write now, edit later, publish when you are happy.
- Multi-image carousels (2 to 9 swipeable images) and PDF document carousels.
- Mentions of company pages and of other Kalovio users, as real clickable tags.
- A voice profile so drafts come back sounding like you rather than like a press release.
- Link-click tracking through short links, so you can see which posts actually sent people anywhere.
Posts are capped at 3,000 characters, which is LinkedIn’s own limit. A caption is optional when you attach an image or a PDF, so an image-only post is fine.
How do I get an image into a post from ChatGPT?
Not by attaching it to the chat. A plain connector cannot receive a file you drop into the conversation — MCP passes tool arguments as plain text data, and image attachments in a chat are not part of that.
Instead, ask for an upload link. The server hands you a private web page where you drag your images or PDF in, and it replies with short ids you can paste back into the chat, such as “publish my post with these images: img_a, img_b”. Files are capped at 20 MB each, 100 per account, kept for 30 days.
Does connecting in ChatGPT also work in Codex?
No. This surprises people, so it is worth saying plainly: ChatGPT and Codex are separate. Connecting a server in ChatGPT on the web does not carry across to Codex. Each app adds its own connector and each one signs in on its own. The same is true the other way around, and true of Claude as well.
| App | What it takes | Plan needed |
|---|---|---|
| Claude | Settings → Connectors → Add custom connector | Works on the free plan |
| ChatGPT | Developer Mode → Plugins → New Plugin, then switch it on per chat | Paid plan, web only |
| Codex | Connects separately; not carried over from ChatGPT | Not recommended for this |
Troubleshooting: “not attached or available in this chat”
That message, or the assistant simply telling you it has no LinkedIn tools, almost always comes from one of these:
- The connector is off in this conversation. The single most common cause. Open the tools + menu and switch it on, then ask again in the same chat.
- You are in a mobile app. Move to ChatGPT on the web.
- The plugin was created without OAuth. Open Plugins, check Authentication is set to OAuth, and re-create it if it is not.
- The URL has a typo. It must be
https://kalovio.com/mcp, including the/mcpat the end. - Sign-in was never completed. If the LinkedIn consent window was closed early, nothing is connected. Ask the assistant to check your account status — it will hand you a fresh link.
- Your LinkedIn access expired. LinkedIn member tokens last about 60 days and self-serve apps get no refresh token, so reconnecting periodically is normal and expected. Ask to reconnect and you get a one-click link.
What will not work, whichever app you use
These are LinkedIn’s limits, not the connector’s, so no tool can engineer around them:
- It cannot read posts it did not create. The permission for that is closed to self-serve apps, so your older LinkedIn history is invisible to it.
- No engagement analytics. Impressions and follower numbers need LinkedIn’s partner-gated Community Management API. Link-click tracking is a different thing and is not a substitute.
- Tagging a company needs that page’s numeric organisation id. LinkedIn offers self-serve apps no name-to-id lookup, so known companies are resolved from a shared directory and unknown ones need the number once.
- No DMs, no connection requests, no lead scraping. None of that is on offer here.
- Multi-image and document posts ride LinkedIn’s newer versioned gateway, which may not be enabled for every self-serve app. If it is blocked you get a clear message rather than a silent failure.
On the rules. 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. Anyone promising you hands-off posting with no risk at all is overstating it. The honest framing is narrower: the permission is open and self-serve, you grant it yourself through LinkedIn’s own consent screen, you approve the exact text of every post before it publishes, nothing is scraped, and you can revoke access from LinkedIn settings at any time.
That approval step is built in. Publishing, scheduling, queueing and deleting are all two-step: the first call shows you a preview with a signed token covering that exact content, and nothing happens until you confirm. It is also what stops a stray instruction inside a web page or document from posting on your behalf.
Kalovio is free during its public beta, with no card required. That may change later, and it will be said plainly if it does.
Questions people ask
Do I need ChatGPT Plus to add a LinkedIn MCP server?
Yes. Adding a custom MCP connector needs Developer Mode, which is available on paid plans — Plus, Pro, Team, Enterprise and Edu — and only in the web version of ChatGPT. There is no free-plan or mobile-app route.
Why does ChatGPT say the connector is not available in this chat?
Because a Developer Mode connector is not switched on automatically in a new conversation. Open the tools + menu next to the message box and turn the connector ON for that chat, then ask again. This is the most common reason a correct setup looks broken.
Does a connector added in ChatGPT also work in Codex?
No. ChatGPT and Codex connect separately and sign in separately. Adding a server in ChatGPT on the web does nothing for Codex, and the same applies to Claude — each app needs its own setup.
Can ChatGPT post an image I attached to the chat?
No. A plain remote connector cannot receive a chat attachment, because tool arguments are plain text data rather than files. Ask for an upload link instead, drop your images or PDF on the page it gives you, then paste the returned ids back into the chat.
Is my LinkedIn password shared with ChatGPT?
No. You sign in on LinkedIn's own page and approve a consent screen. The resulting access token is encrypted and held on the server side — it is never passed to ChatGPT, never logged, and never shown in tool output. You can revoke it from your LinkedIn settings whenever you like.
How often do I have to reconnect LinkedIn?
Roughly every 60 days. LinkedIn member tokens expire after about that long, and self-serve apps are not given a refresh token, so periodic reconnection is normal. Ask the assistant to reconnect and it gives you a link that takes a few seconds.
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