LinkedIn MCP Server: Connect AI Agents to LinkedIn Data
LinkedIn is the highest-intent dataset on the public web. It is also the most underused by AI agents, because the official LinkedIn API gives you almost nothing useful and the third-party options are scattered. An MCP server changes that. This guide explains what a LinkedIn MCP server is, what an agent can actually do with one, and how to wire CreatorCrawl's into Claude, Cursor, Windsurf, or any other MCP-compatible runtime.
What an MCP server gives agents
MCP (Model Context Protocol) is a standardised way for AI clients to discover and call tools on a server. Instead of writing per-platform integration code, you point your agent at the server URL and it picks up the available tools automatically.
A LinkedIn MCP server, done right, exposes the kinds of actions a human researcher would take inside LinkedIn, but in a way an agent can call by name:
| Tool | What an agent uses it for |
|---|---|
| get_linkedin_profile | "Pull the full profile for this person, including experience and recent activity" |
| get_linkedin_company | "Get the company profile and headcount for Acme Corp" |
| get_linkedin_company_posts | "What has Acme posted in the last 30 days" |
| get_linkedin_post | "Pull this specific LinkedIn post and its engagement" |
| search_linkedin_ads | "Find every LinkedIn ad Acme is running right now" |
| get_linkedin_ad | "Pull the full creative and targeting for this LinkedIn ad" |
CreatorCrawl exposes all of these as MCP tools at a single endpoint. The data is the same data a logged-out browser would see, structured into clean JSON instead of HTML.
Why LinkedIn data is worth pulling into agents
Three reasons it pays off in practice.
Outbound qualification. Agents can read a prospect's profile, their company's recent posts, and the company's active ads, then write a relevant opener. That used to be an SDR's full week, now it is a single agent prompt.
Hiring intelligence. Agents can pull a hiring company's recent posts, their headcount changes, and the kind of ads they are running to infer where they are investing. This is the signal recruiters used to manually piece together.
Competitive intel. The LinkedIn ads endpoint is the single most underrated public dataset on the web. You can see what your competitor is paying to show people right now, what audience they are targeting, and what their creative says. An agent can run that audit on a schedule.
The MCP layer matters because all three of these workflows involve chaining calls. The agent reads a profile, decides who to look at next, pulls a company, branches to the company's ads, and synthesises everything. Doing this with raw REST means writing orchestration code. Doing it with MCP means writing a prompt.
Setup
Prerequisites
- Sign up for CreatorCrawl, grab an API key.
- Pick an MCP client.
Endpoint: https://app.creatorcrawl.com/api/mcp. Same URL for every platform we cover.
Claude Desktop
Settings, MCP Servers, add this config:
{
"mcpServers": {
"creatorcrawl": {
"url": "https://app.creatorcrawl.com/api/mcp",
"headers": {
"x-api-key": "your_api_key_here"
}
}
}
}
Restart Claude Desktop. The LinkedIn tools register with the rest of the CreatorCrawl tools.
Cursor
Same config in Cursor settings under MCP Servers. Saved configs auto-load.
Windsurf
Same JSON in Windsurf settings under MCP. Cascade picks it up after a restart.
Custom MCP client
import { Client } from '@modelcontextprotocol/sdk/client/index.js'
import { StreamableHTTPClientTransport } from '@modelcontextprotocol/sdk/client/streamableHttp.js'
const transport = new StreamableHTTPClientTransport(
new URL('https://app.creatorcrawl.com/api/mcp'),
{ requestInit: { headers: { 'x-api-key': 'your_api_key_here' } } },
)
const client = new Client({ name: 'recruiting-agent', version: '1.0.0' })
await client.connect(transport)
const profile = await client.callTool({
name: 'get_linkedin_profile',
arguments: { url: 'https://www.linkedin.com/in/williamhgates/' },
})
Example prompts
Outbound research
"Look up the LinkedIn profile at https://linkedin.com/in/example, then pull the most recent 10 posts from their company's LinkedIn page. Write me a personalised cold email opener that references something the company actually posted in the last month."
The agent chains profile, company, posts, and writes the copy.
Ad spy audit
"Find every LinkedIn ad that Linear is running right now. For each one tell me the audience targeting, the creative, and what stage of the funnel it looks aimed at."
The agent runs search_ads filtered by company, fetches each ad, then synthesises.
Hiring signal sweep
"For each of these 20 companies, pull their LinkedIn company page and their recent posts. Flag any that have posted hiring announcements or product launches in the last 60 days."
Batch company + posts call, agent filters.
Competitor monitoring on a schedule
"Every Monday morning, pull the latest posts from these 5 competitor LinkedIn pages and summarise what they have been talking about, highlighting anything that looks like a launch or pricing change."
Plug this into a scheduled agent run and the digest writes itself.
Founder market research
"I am building a tool for sales engineers. Search LinkedIn for sales engineer profiles at SaaS companies with 50 to 500 employees. Pull their backgrounds and tell me what tools they reference in their bios most often."
Agent searches, fetches profiles, summarises themes.
Pricing
Each tool call uses 1 credit. The packs are the same as the rest of CreatorCrawl:
| Pack | Credits | Price |
|---|---|---|
| Free | 250 | $0 |
| Starter | 5,000 | $29 |
| Pro | 20,000 | $99 |
| Scale | 100,000 | $299 |
Credits never expire. There is no monthly minimum.
FAQ
Is this the official LinkedIn API. No. The official API is restricted to LinkedIn-approved partners and gives you almost no useful third-party data. CreatorCrawl returns what a logged-out browser would see, in structured JSON.
Does this work for private profiles. No. Public profiles only. LinkedIn shows a lot publicly so most useful data is reachable.
Is this allowed. Yes. We only return data that LinkedIn already publishes to anonymous visitors. Same as a logged-out search result.
Can I use this from non-Claude agents. Yes. MCP is open. OpenAI Responses API, LangChain, your own runtime, all work.
Next
If you have not set up MCP before, the MCP docs walk through the basics. If you want similar tools for TikTok, Instagram, YouTube, or Reddit, they are in the same endpoint. Sign up for free and start.
Explore CreatorCrawl
More from the Blog
How to Build an MCP Server for Web Scraping (and Why You Might Not Want To)
A working MCP server for scraping the web, end to end. The auth model, the tool schemas, the error shapes that AI agents actually need. Plus an honest read on when to build your own and when to plug into a managed one.
Read moreClaude Skills for Social Media Data: Adding Live Creator Data to Claude Code
A Claude Skill turns a long instruction file into a reusable capability. CreatorCrawl ships one for social media data. This post explains what skills are, why they are different from MCP, and how to install ours in 30 seconds.
Read moreInstagram MCP Server: Connect AI Agents to Instagram Data
Set up an Instagram MCP server in Claude Desktop, Cursor, and Windsurf. Give your AI agents direct access to Instagram profiles, posts, reels, and engagement data without writing custom integration code.
Read more