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

linkfetch-mcp

v0.1.3

Published

LinkedIn MCP server for Claude, Cursor, Codex and any AI agent: jobs, companies, people, posts and inbox. A stdio bridge to LinkFetch's hosted MCP server.

Readme

LinkedIn MCP server for Claude, Cursor and any AI agent

npm License: MIT MCP Registry

linkfetch-mcp gives any AI agent a full set of LinkedIn tools: search every public LinkedIn job since April 2026, look up companies, score and sort them with AI functions, and, through a LinkedIn account you connect, search people and posts, read profiles and your inbox, and send messages and connection requests.

It is a small stdio bridge to LinkFetch's hosted MCP server: every tool call goes to https://linkfetch.io/mcp with your API key, so the tools and prices are always current and nothing runs a browser on your machine. If your client supports remote MCP over HTTP, you can skip this package and use the URL directly.

Full tool list with prices, and setup for each client: linkfetch.io/mcp/claude

Tools

  • Jobs and companies (no LinkedIn account needed): search_jobs, get_job, search_companies, get_company
  • AI functions: ai_score, ai_classify, ai_extract, ai_write, each over up to 25 jobs or companies
  • Your leads: list_leads, save_lead, list_lead_lists
  • Through your connected LinkedIn account: people and company search, profiles, employees, posts and reactions, connections, invitations, conversations, messages, comments, reactions, follows

Each call costs a flat number of credits, stated in the tool's description. Every connected account works inside daily and weekly limits that LinkFetch enforces whatever the agent asks for.

Setup

Create an API key (lf_…) on the MCP page of your LinkFetch dashboard. New accounts start with free credits. Then add the server to your client: every client runs npx -y linkfetch-mcp with LINKFETCH_API_KEY set. Node.js 18+ is required.

Upgrading from 0.1.x? Keys starting with sk_live_ stopped working when LinkFetch 2 launched in October 2026. Create a new lf_… key and replace it in your config.

Claude Desktop

Settings → Developer → Edit Config, or edit ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) / %APPDATA%\Claude\claude_desktop_config.json (Windows):

{
  "mcpServers": {
    "linkfetch": {
      "command": "npx",
      "args": ["-y", "linkfetch-mcp"],
      "env": { "LINKFETCH_API_KEY": "lf_..." }
    }
  }
}

Fully quit and reopen Claude.

Claude Code

claude mcp add linkfetch -e LINKFETCH_API_KEY=lf_... -- npx -y linkfetch-mcp

Cursor, Windsurf, Gemini CLI, Cline

These use the same mcpServers block as Claude Desktop above. Put it in:

| Client | Config file | |---|---| | Cursor | ~/.cursor/mcp.json (global) or .cursor/mcp.json (project) | | Windsurf | ~/.codeium/windsurf/mcp_config.json | | Gemini CLI | ~/.gemini/settings.json | | Cline | MCP Servers → Configure → cline_mcp_settings.json |

VS Code (GitHub Copilot agent mode)

.vscode/mcp.json:

{
  "servers": {
    "linkfetch": {
      "command": "npx",
      "args": ["-y", "linkfetch-mcp"],
      "env": { "LINKFETCH_API_KEY": "lf_..." }
    }
  }
}

OpenAI Codex CLI

~/.codex/config.toml:

[mcp_servers.linkfetch]
command = "npx"
args = ["-y", "linkfetch-mcp"]
env = { LINKFETCH_API_KEY = "lf_..." }

Zed

settings.json:

{
  "context_servers": {
    "linkfetch": {
      "command": "npx",
      "args": ["-y", "linkfetch-mcp"],
      "env": { "LINKFETCH_API_KEY": "lf_..." }
    }
  }
}

Your own agent

Any MCP client library can spawn the server over stdio. OpenAI Agents SDK (Python):

from agents import Agent, Runner
from agents.mcp import MCPServerStdio

async with MCPServerStdio(params={
    "command": "npx",
    "args": ["-y", "linkfetch-mcp"],
    "env": {"LINKFETCH_API_KEY": "lf_..."},
}) as linkfetch:
    agent = Agent(name="LinkedIn researcher", mcp_servers=[linkfetch])
    result = await Runner.run(agent, "Which companies in Berlin started hiring data engineers this week?")

LangChain users can load the same server with langchain-mcp-adapters.

No install: remote MCP

Clients that support remote MCP over Streamable HTTP can connect to the hosted server directly:

  • URL: https://linkfetch.io/mcp
  • Header: Authorization: Bearer lf_...

Claude (desktop or claude.ai): Settings → Connectors → Add custom connector, with https://linkfetch.io/mcp?key=lf_... as the URL.

Claude Code: claude mcp add --transport http linkfetch https://linkfetch.io/mcp --header "Authorization: Bearer lf_..."

Environment variables

| Variable | Required | Default | | |---|---|---|---| | LINKFETCH_API_KEY | yes | | Your lf_… key | | LINKFETCH_MCP_URL | no | https://linkfetch.io/mcp | Point at another LinkFetch MCP endpoint |

Errors

A missing, old or rejected key comes back as an error on every request, with what to do about it, so the agent can tell you. Tool errors (no credits left, no LinkedIn account connected, a limit reached) come from the hosted server as normal tool results.

Development

npm install
npm run build
LINKFETCH_API_KEY=lf_... node dist/index.js

src/index.ts is the whole server: it opens one MCP client connection to the hosted server and forwards tools/list and tools/call to it.

License

MIT