npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@himanshu31shr/linkedin-mcp-server

v1.0.1

Published

MCP server for LinkedIn API integration — compatible with all major AI IDEs

Readme

LinkedIn MCP Server

npm version License: MIT

A Model Context Protocol (MCP) server that provides AI agents with read/write access to the LinkedIn API.

Features

  • Profile Tools: Fetch user profile and email.
  • Post Tools: Create text, link, image, and document posts. Delete posts.
  • Media Tools: Upload images and documents to LinkedIn.
  • Organization Tools: Fetch organization details, post on behalf of an organization, fetch and delete org posts.
  • Social Action Tools: Fetch, create, and delete comments on posts. Add or remove reactions (like, celebrate, etc.).
  • Organization Analytics Tools: Get organization page, follower, and share statistics.

Prerequisites

You need a LinkedIn Access Token. Create an app on the LinkedIn Developer Portal, then either:

  • Use the built-in OAuth flow (see Development Setup), or
  • Generate a token manually from the developer portal.

Quick Start (npm — recommended)

The easiest way to use this server is via the published npm package. No cloning required.

Install globally

npm install -g @himanshu31shr/linkedin-mcp-server

Then run it:

LINKEDIN_ACCESS_TOKEN=your-token linkedin-mcp-server

Or run directly with npx

LINKEDIN_ACCESS_TOKEN=your-token npx -y @himanshu31shr/linkedin-mcp-server

MCP Client Configuration

Claude Desktop

Add the following to your claude_desktop_config.json:

Using npx (no install needed):

{
  "mcpServers": {
    "linkedin": {
      "command": "npx",
      "args": ["-y", "@himanshu31shr/linkedin-mcp-server"],
      "env": {
        "LINKEDIN_ACCESS_TOKEN": "your-linkedin-access-token"
      }
    }
  }
}

Using a global install:

{
  "mcpServers": {
    "linkedin": {
      "command": "linkedin-mcp-server",
      "env": {
        "LINKEDIN_ACCESS_TOKEN": "your-linkedin-access-token"
      }
    }
  }
}

Using a local clone:

{
  "mcpServers": {
    "linkedin": {
      "command": "node",
      "args": ["/path/to/linkedin-mcp-server/dist/index.js"],
      "env": {
        "LINKEDIN_ACCESS_TOKEN": "your-linkedin-access-token"
      }
    }
  }
}

Cursor

In Cursor's Settings > AI > MCP Servers, add a new server:

  • Type: command
  • Name: linkedin
  • Command: npx -y @himanshu31shr/linkedin-mcp-server
  • Environment Variables: Add LINKEDIN_ACCESS_TOKEN with your token.

Antigravity / Windsurf / Other MCP Clients

Use the same pattern — point the MCP client to:

npx -y @himanshu31shr/linkedin-mcp-server

And set the LINKEDIN_ACCESS_TOKEN environment variable.

Available Tools

| Tool | Description | |------|-------------| | get_profile | Fetch the authenticated user's LinkedIn profile | | get_email | Fetch the authenticated user's email address | | create_text_post | Create a text-only post | | create_link_post | Create a post with a link attachment | | create_image_post | Create a post with an image | | create_document_post | Create a post with a document (PDF, etc.) | | delete_post | Delete a post by URN | | upload_image | Upload an image to LinkedIn | | get_organization | Fetch organization details | | create_org_post | Create a post on behalf of an organization | | get_org_posts | Fetch recent posts for an organization | | delete_org_post | Delete an organization post | | get_post_comments | Fetch comments on a post | | create_comment | Add a comment to a post | | delete_comment | Delete a comment | | add_reaction | Add a reaction to a post | | remove_reaction | Remove a reaction from a post | | get_org_page_statistics | Get organization page statistics | | get_org_follower_statistics | Get organization follower statistics | | get_org_share_statistics | Get organization share statistics |

Development Setup

If you want to contribute or run from source:

  1. Clone and install:

    git clone https://github.com/himanshu31shr/linkedin-mcp-server.git
    cd linkedin-mcp-server
    npm install
  2. Build:

    npm run build
  3. Get a LinkedIn Access Token (automated OAuth flow):

    npm run auth

    Follow the prompts — this will save your LINKEDIN_ACCESS_TOKEN to the .env file automatically.

  4. Run locally:

    npm run dev

Scripts

| Script | Description | |--------|-------------| | npm run build | Compile TypeScript to JavaScript | | npm run dev | Run in development mode with tsx | | npm run auth | Run the OAuth token flow | | npm test | Run tests with Vitest | | npm run test:coverage | Run tests with coverage report | | npm run lint | Type-check with TypeScript | | npm run inspect | Launch MCP Inspector for debugging |

Releasing a New Version

The CD pipeline automatically publishes to npm when a version tag is pushed.

# Bump version (creates commit + tag automatically)
npm version patch   # or: npm version minor / npm version major

# Push commit and tag to trigger publish
git push origin main --tags

The pipeline will:

  1. Validate the tag matches package.json version
  2. Run lint, tests, and build
  3. Publish to npm with provenance
  4. Create a GitHub Release with auto-generated notes

License

MIT