# abhineet34/linkedin-mcp-server [Health: Active]

**Category:** 🌐 Social Media  
**Repository:** https://github.com/abhineet34/linkedin-mcp-server  
**GitHub Stars:** 2  
**Views:** 3  
**Installs:** 0  
**Upvotes:** 0  
**Directory Page:** https://allmcps.com/mcp/abhineet34-linkedin-mcp-server

## Description
Local LinkedIn MCP server for posting to LinkedIn from Claude. 9 tools — create/edit/delete posts (text, image, article), upload images, fetch profile, look up company pages, and check follower counts. Uses the official LinkedIn REST API with OAuth 2.0 (wmembersocial, OIDC).

## Tools
Capabilities this server exposes over MCP:

- **linkedin_get_profile** — Get your LinkedIn profile (name, email, photo, URN)
- **linkedin_create_post** — Create a post (text, image, or article/link)
- **linkedin_update_post** — Edit a post's text or visibility
- **linkedin_delete_post** — Delete a post
- **linkedin_upload_image** — Upload an image to use in a post
- **linkedin_get_post** — Get a post by its URN
- **linkedin_list_posts** — List posts by a member or company
- **linkedin_get_organization** — Look up a company page
- **linkedin_get_org_follower_count** — Get a company page's follower count

## Claude Desktop Quick Installation
Heuristic fallback — verify the package name and runner against the repository README before running it. Uses `npx` (confidence: low):

```json
"mcpServers": {
  "linkedin-mcp-server": {
    "command": "npx",
    "args": ["-y","abhineet34-linkedin-mcp-server"],
    "env": {
      "LINKEDIN_ACCESS_TOKEN": ""
    }
  }
}
```

**Requires environment variables:** `LINKEDIN_ACCESS_TOKEN` — the values above are empty placeholders; fill in real credentials before running (see the repository for what each one is for).

## Documentation

## What abhineet34/linkedin-mcp-server MCP server does

The abhineet34/linkedin-mcp-server MCP server exposes LinkedIn actions as MCP tools for an AI assistant. It can retrieve the authenticated member's name, email address, profile photo, and LinkedIn URN. For publishing workflows, it supports text posts, image posts, and article or link posts, along with image upload before publishing.

Post management includes reading a post by its URN, listing posts associated with a member or company, changing post text or visibility, and deleting posts. The server also provides organization lookup and follower-count retrieval for LinkedIn company pages. These capabilities support both personal publishing and basic company-page research, subject to the permissions granted to the LinkedIn application.

## How it works

The abhineet34/linkedin-mcp-server MCP server runs locally and communicates with an MCP client over the local process connection. The README documents Claude Desktop, Claude Code, Cline, Continue, and other MCP-compatible assistants as possible clients; the compatible client configuration shown uses Claude Desktop.

LinkedIn access is supplied through the `LINKEDIN_ACCESS_TOKEN` environment variable. The token is generated through a LinkedIn developer application using the OpenID Connect products for `openid`, `profile`, and `email`, plus the Share on LinkedIn product for `w_member_social`. Requests are then made to LinkedIn's REST API on behalf of the authenticated account.

## Setup and configuration

The documented setup requires Node.js 18 or newer. Clone the repository, enter its directory, install dependencies with npm, and run the build script. The build creates a `dist/` directory containing the server entry point. Claude Desktop is configured to start Node with the built `dist/index.js` file and to pass the access token through the environment.

Before generating a token, the README instructs developers to create a LinkedIn Company Page, create an app associated with that page, request the required LinkedIn products, and add LinkedIn's OAuth redirect URL. The token generator provides the access token after authorization. Tokens described in the README expire after 60 days, so a replacement must be generated when the token stops working.

The authenticated profile tool returns a member URN. The documentation notes that this URN is needed as `author_urn` when creating posts, so it should be retained for publishing workflows.

## Tools and capabilities

The abhineet34/linkedin-mcp-server MCP server exposes nine named tools:

- `linkedin_get_profile` retrieves profile identity details.
- `linkedin_create_post` publishes text, image, or article/link content.
- `linkedin_update_post` changes post text or visibility.
- `linkedin_delete_post` removes a post.
- `linkedin_upload_image` uploads an image for use in a post.
- `linkedin_get_post` retrieves a post by URN.
- `linkedin_list_posts` lists member or company posts.
- `linkedin_get_organization` finds a company page by name or ID.
- `linkedin_get_org_follower_count` returns a company's follower count.

## Limitations and notes

Using the server requires a LinkedIn developer application and an access token with the appropriate products and scopes. LinkedIn requires the application to be associated with a Company Page; the README specifically warns that a personal profile URL is not accepted for app creation. The token-generation flow also depends on configuring the exact authorized redirect URL.

The server is local rather than a hosted endpoint, and the supplied documentation focuses on Claude Desktop configuration. LinkedIn access tokens expire after 60 days according to the README. The available operations are limited to the listed profile, post, image, organization, and follower-count functions; no broader LinkedIn API coverage is documented.

_Full upstream README: https://allmcps.com/mcp/abhineet34-linkedin-mcp-server/readme_

