@isteam/linkedin-mcp

@isteam/linkedin-mcp

MCP server for LinkedIn that enables AI agents to post, comment, like, and manage content on LinkedIn.

Category
Visit Server

README

@isteam/linkedin-mcp

npm version License: MIT

MCP server for LinkedIn — post, comment, react, and manage content via AI agents.

Built by is.team — the AI-native project management platform.

Quick Start

Add to your MCP config (.mcp.json for Claude Code, or Claude Desktop settings):

{
  "mcpServers": {
    "linkedin": {
      "command": "npx",
      "args": ["-y", "@isteam/linkedin-mcp"],
      "env": {
        "LINKEDIN_ACCESS_TOKEN": "your-access-token",
        "LINKEDIN_PERSON_ID": "your-person-id"
      }
    }
  }
}

Tools (10)

Content & Engagement

Tool Description
create_post Create a LinkedIn text post (max 3000 characters)
create_article_post Share an article link with commentary
delete_post Delete a post by URN
comment_on_post Comment on a post (max 1250 characters)
like_post Like/react to a post

Profile & Analytics

Tool Description
get_me Get authenticated user info
get_post Get a post by URN (text, author, stats)
get_comments Get comments on a post
get_own_posts Get your recent LinkedIn posts
get_post_stats Get like/comment counts for a post

Environment Variables

Variable Required Description
LINKEDIN_ACCESS_TOKEN Yes OAuth 2.0 access token
LINKEDIN_PERSON_ID Yes* Your LinkedIn person ID (required in member mode)
LINKEDIN_ORGANIZATION_ID No Organization ID (for posting as a company page)
LINKEDIN_MODE No member (default) or organization

*Required when LINKEDIN_MODE is member (default).

Getting your credentials

  1. Create an app in the LinkedIn Developer Portal
  2. Request the w_member_social and r_liteprofile OAuth scopes
  3. Complete the OAuth 2.0 flow to get an access token
  4. Get your person ID from the /v2/userinfo endpoint

Organization mode

To post as a company page, set LINKEDIN_MODE=organization and provide LINKEDIN_ORGANIZATION_ID:

{
  "env": {
    "LINKEDIN_ACCESS_TOKEN": "your-access-token",
    "LINKEDIN_PERSON_ID": "your-person-id",
    "LINKEDIN_ORGANIZATION_ID": "your-org-id",
    "LINKEDIN_MODE": "organization"
  }
}

Rate Limits & Agent Safety

LinkedIn API enforces per-endpoint rate limits:

Endpoint Limit Notes
POST /rest/posts (create post) 1 req/sec, ~100/day Stricter daily cap on content creation
POST /rest/socialActions/.../comments 2 req/sec
POST /rest/reactions (like) 1 req/sec
GET endpoints (posts, comments, stats) ~100 req/hour Per authenticated user
General throttle ~60 req/min Varies by endpoint scope

Idempotency note: LinkedIn does not deduplicate identical posts. If your agent retries on timeout, it may create duplicate content. Use get_own_posts to verify before retrying a create operation.

Backoff: When rate-limited, the API returns 429 with a Retry-After header (seconds). Wait the specified duration before retrying.

Usage Examples

Share a thought leadership post:

"Post on LinkedIn: AI agents are changing how teams collaborate. At is.team, we're building a future where AI joins your standups and ships features alongside you."

Share an article:

"Share this article on LinkedIn with a summary: https://example.com/article-about-ai"

Engage with your network:

"Get my recent LinkedIn posts and show their engagement stats"

About is.team

is.team is an AI-native project management platform where AI agents and humans collaborate as real teammates. AI agents join boards, create tasks, chat, and get work done — just like any other team member.

Part of the is.team open-source MCP ecosystem:

License

MIT

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured