MCP server for interacting with Linkedin Community Management API.
This MCP server:
- Can be hosted locally or remotely : uses HTTP+SSE transport defined in MCP
- Implements the Draft Third-Party Authorization Flow from MCP specs to delegate authorization to LinkedIn's OAuth authorization server
⚠️ Disclaimer: The Third-Party Authorization Flow proposal status is currently in draft. The only MCP client, to my knowledge, that currently implements this specification of the protocol is the MCP Inspector
user-info
- Get current logged in user infos (name, headline and profile picture)create-post
- Create a new post on LinkedIn
Follow those instructions to run Linkedin MCP server on your host. You'll need to provide your own Linkedin client.
- Node 22 (
lts/jod
) - pnpm 10
- a Linkedin client with
Community Management API
product installed andhttp://localhost:3001/callback
added to the authorized redirect URLs
- Install dependencies:
pnpm install
- Create env file and populate with your Linkedin client credentials and a random string secret value for
JWT_SECRET
:
cp .env.template .env && vi .env
- Run the server:
pnpm run dev
- Configure your favorite MCP client to use this new server:
{
"mcpServers": {
"linkedin": {
"url": "http://localhost:3001/sse"
}
}
}
Start the MCP Inspector to debug this server, which is available as a package script:
pnpm run inspector
Access the inspector in your browser at http://localhost:5173
- Den Delimarsky that bravely gave a first shot at this new authorization flow with Microsoft Entra ID and detailed his results in his blog post: https://den.dev/blog/auth-modelcontextprotocol-entra-id/
- Matt Pocock and his always welcome neat TS tricks specifically in the context of writting your own MCP server on AI Hero: https://www.aihero.dev/publish-your-mcp-server-to-npm