LinkedIn Scraper MCP
Extract profiles, jobs, companies from LinkedIn. Session-based auth — log in once, scrape headlessly. Job search works without login. Free alternative to Proxycurl.
LinkedIn Scraper MCP
Extract profiles, job postings, and company data from LinkedIn for AI agents. Session-based authentication with persistent cookies -- log in once, scrape headlessly.
Free alternative to Proxycurl ($50/mo), PhantomBuster ($69/mo), and Snov.io ($39/mo).
Why This Tool?
| Feature | This Tool | Proxycurl | PhantomBuster | Snov.io |
|---|---|---|---|---|
| Free to use | Yes | $49/mo | $69/mo | $39/mo |
| MCP server (for AI agents) | Yes | No | No | No |
| Profile scraping | Yes | Yes | Yes | Yes |
| Job search | Yes | No | Yes | No |
| Company pages | Yes | Yes | Yes | Partial |
| People search | Yes | No | Yes | Yes |
| No API key needed | Yes | No | No | No |
| Works without login (jobs) | Yes | N/A | No | N/A |
How It Works
- Log in to LinkedIn once via a visible browser window (your real credentials)
- Session cookies are saved locally in
.sessions/ - All subsequent scraping runs headlessly using those cookies
- Session typically lasts days/weeks before re-login needed
Job search and company pages work without login. People search and full profiles require a login session.
Quick Start
As MCP Server (Claude Desktop, Cursor, etc.)
{
"mcpServers": {
"linkedin": {
"command": "python",
"args": ["/path/to/mcp-servers/linkedin/server.py"]
}
}
}
Install dependencies:
pip install "mcp[cli]" playwright playwright-stealth
playwright install chromium
Tools
login
Opens a browser window for manual LinkedIn login. You only need to do this once.
search_jobs (no login required)
Search LinkedIn job postings with filters.
{
"query": "python developer",
"location": "Dubai",
"remote": "remote",
"job_type": "full-time",
"experience": "mid-senior",
"max_results": 25
}
Example output:
{
"query": "python developer",
"type": "jobs",
"count": 25,
"results": [
{
"title": "Senior Python Developer",
"company": "Tech Corp",
"location": "Dubai, UAE (Remote)",
"posted_date": "2 days ago",
"job_url": "https://linkedin.com/jobs/view/..."
}
]
}
Filters: remote (remote/onsite/hybrid), job_type (full-time/part-time/contract/internship), experience (entry/mid-senior/director/executive)
get_company (no login required)
Get company page data.
{"company_slug": "google"}
Output:
{
"name": "Google",
"tagline": "Organizing the world's information...",
"industry": "Technology, Information and Internet",
"company_size": "10,001+ employees",
"headquarters": "Mountain View, CA",
"website": "https://google.com",
"founded": "1998",
"specialties": ["search", "advertising", "cloud computing", "AI"]
}
get_profile (full data requires login)
Get a LinkedIn profile.
{"username": "johndoe"}
Output:
{
"name": "John Doe",
"headline": "Senior Software Engineer at Google",
"location": "San Francisco Bay Area",
"current_title": "Senior Software Engineer",
"current_company": "Google",
"connections": "500+",
"skills": ["Python", "Machine Learning", "Go", "Kubernetes"],
"profile_url": "https://linkedin.com/in/johndoe/"
}
search_people (login required)
Search for people by keywords, company, title, or location.
{
"query": "CTO",
"company": "startup",
"location": "San Francisco",
"max_results": 20
}
Authentication
LinkedIn is aggressive with bot detection. This tool uses a session-based approach:
- Call the
logintool -- a browser window opens - Log in with your LinkedIn credentials manually
- Close the browser -- cookies are saved to
.sessions/linkedin.json - All future requests use these cookies in headless mode
Your credentials are never stored -- only the session cookies, which are gitignored.
Rate limiting: LinkedIn soft-blocks after ~50 pages/hour. The tool adds delays automatically, but avoid rapid-fire requests.
What Works Without Login
| Feature | Without Login | With Login |
|---|---|---|
| Job search | Full access | Full access |
| Company pages | Full access | Full access |
| Profiles | Name, headline, location only | Full profile |
| People search | Not available | Full access |
Use Cases
- Recruiting: Search for candidates by skills, location, company
- Sales prospecting: Find decision-makers at target companies
- Job hunting: Monitor job postings with specific filters
- Competitive intelligence: Track competitor company pages
- Market research: Analyze hiring trends and company growth
License
MIT
Serveurs connexes
Trino MCP Server
Securely interact with Trino databases to list tables, read data, and execute SQL queries.
Mallory MCP Server
Access real-time cyber and threat intelligence, including details on vulnerabilities, threat actors, and malware.
Memory Custom : PouchDB
Extends the Memory server with PouchDB for robust document-based storage, custom memory file paths, and interaction timestamping.
Local FAISS
About Local FAISS vector store as an MCP server – drop-in local RAG for Claude / Copilot / Agents.
Certinia MCP Server by CData
A read-only MCP server that allows LLMs to query live Certinia data. Powered by CData.
CData WooCommerce
A read-only MCP server for querying live WooCommerce data using the CData JDBC Driver.
SolanaBot
Interact with the Solana blockchain to check balances, send SOL, and airdrop SOL.
OData MCP Bridge (Go)
A Go bridge providing universal access to OData v2 services through MCP tools, with support for multiple authentication methods.
AI Knowledge System
An enterprise-ready system to archive AI conversations from ChatGPT and Claude into a Supabase database.
Membase MCP
A decentralized memory layer for AI agents providing secure, persistent storage for conversation history and knowledge.