# LinkedIn outreach from Cursor

> Run LinkedIn outreach from Cursor with HeyLead, an MCP server that finds the right people, writes in the voice of your own LinkedIn posts, follows up and handles replies. One entry in .cursor/mcp.json, one sign-in, no API key.

This is the Markdown twin of https://heylead.dev/cursor-linkedin-outreach (the page, in text). Index for agents: https://heylead.dev/llms.txt

Last updated 28 September 2026

Cursor can run your LinkedIn outreach once it has the tools. HeyLead is an MCP server that gives it them: find the right people, write to them in the voice of your own LinkedIn posts, follow up, handle replies. One JSON entry, one browser sign-in, then one sentence in the chat.

## Connect HeyLead in Cursor

Merge this into `.cursor/mcp.json` in your project, or `~/.cursor/mcp.json` for every project, keeping the servers you already have:

`{"mcpServers":{"heylead":{"url":"https://heylead.dev/mcp"}}}`

Open Cursor Settings → MCP, switch HeyLead on, and complete the browser sign-in it opens. The hosted server speaks Streamable HTTP with OAuth, so there is no Python, uv, API key or `command` entry.

Or paste this into Cursor's chat and let the agent do the edit:

`Set up HeyLead using https://heylead.dev/llms.txt`

### Finish and verify

1. Sign in with Google when Cursor opens HeyLead in the browser.
2. Connect LinkedIn in the [dashboard](https://heylead.dev/dashboard/). Your LinkedIn password never touches HeyLead.
3. Ask the agent: “Show my HeyLead status.” It should call `show_status` and report your workspace, even if it is empty.

A saved `mcp.json` is only the first step. Setup is verified when HeyLead answers a tool call. If the server shows red or no tools appear, see [troubleshooting](https://heylead.dev/docs/troubleshooting).

## Then just ask, in the chat you write code in

- "I shipped a webhook debugger for Stripe. Find 40 people who would buy it."
- "Show me the personas and the search before anything exists."
- "Launch it."
- "Who replied this week, and what did they say?"
- "Pause everything."

`generate_icp` answers with 2 to 4 buyer personas grounded in your website. `create_campaign` saves a draft and sends nothing. Outreach starts only when you say launch. HeyLead sends from your own LinkedIn account at a human pace: at most 20 invitations a day and 100 a week on a free LinkedIn account (more on Premium or Sales Navigator), Monday to Friday 08:00 to 22:00 in your time zone, minutes apart. It backs off when LinkedIn pushes back and resumes on its own. You can pause any campaign at any time.

## Why an MCP server and not a browser extension

Cursor already holds the context that matters: the repo, the README, the changelog. HeyLead reads that through the same chat and writes the brief from it. It reaches LinkedIn through Unipile's API from the cloud, never through your browser, so campaigns keep running with the laptop closed. Every decision the agents take is readable with `inspect` or on the campaign page.

## Questions people ask

### Does HeyLead work with Cursor's agent mode?

Yes. Once the server is on, every HeyLead tool is available to the agent in chat and in agent mode. Tools that send need your say-so in the conversation; nothing sends from a file edit.

### Can I use the same account from Claude Code too?

Yes. It is one hosted workspace. Connect from [Claude Code or Claude Desktop](https://heylead.dev/claude-linkedin-outreach) with the same sign-in and the campaigns are the same.

### Is it open source?

The client is MIT on [GitHub](https://github.com/D4umak/linkedin-outreach-mcp); the hosted backend, prompts and knowledge base are proprietary. Self-hosting is described on [open-source LinkedIn automation](https://heylead.dev/open-source-linkedin-automation).

Related: [LinkedIn MCP server](https://heylead.dev/linkedin-mcp-server) · [LinkedIn outreach from Claude](https://heylead.dev/claude-linkedin-outreach) · [Quickstart](https://heylead.dev/docs/quickstart)
