Uses Selenium WebDriver with Chrome for automated browser control to scrape LinkedIn profiles, including anti-detection measures with human-like delays and realistic browser settings
LinkedIn Scraper MCP Server
A Model Context Protocol (MCP) server that provides LinkedIn profile scraping capabilities with manual credential input. This server allows you to extract comprehensive profile data including experience, education, skills, and contact information.
Features
Manual Credential Input: No need for environment variables - provide LinkedIn credentials directly in tool calls
Comprehensive Data Extraction: Scrapes name, headline, location, about section, experience, education, skills, and contact info
Multiple Transport Methods: Supports both HTTP (production) and STDIO (development) transports
Browser Automation: Uses Selenium WebDriver with Chrome for reliable scraping
Anti-Detection: Includes human-like delays and browser settings to avoid detection
Installation
Install dependencies:
Install Chrome browser (if not already installed):
The server uses Chrome WebDriver which will be automatically managed
Ensure Chrome browser is installed on your system
Build the project:
Usage
HTTP Transport (Recommended)
Start the server with HTTP transport:
The server will start on http://localhost:8080
by default.
STDIO Transport (Development)
For local development with STDIO transport:
Command Line Options
--port <PORT>
: Specify HTTP server port (default: 8080)--stdio
: Use STDIO transport instead of HTTP--help
: Show help message
MCP Client Configuration
Add this to your MCP client configuration:
Available Tools
scrape_linkedin_profile
Scrapes a LinkedIn profile and returns comprehensive profile data.
Parameters:
url
(required): LinkedIn profile URL (e.g., "https://www.linkedin.com/in/username/")email
(required): LinkedIn account email for authenticationpassword
(required): LinkedIn account password for authenticationheadless
(optional): Run browser in headless mode (default: false)
Example Usage:
Response Format:
Development
Project Structure
Building
Running in Development
Security Considerations
Credential Handling: LinkedIn credentials are passed directly in tool calls and not stored
Rate Limiting: The scraper includes human-like delays to avoid being blocked
Browser Settings: Uses realistic browser settings to minimize detection
Session Management: Each scraping session is isolated and cleaned up properly
Troubleshooting
Common Issues
Chrome Driver Issues: The server automatically manages Chrome WebDriver, but ensure Chrome browser is installed
LinkedIn Authentication: If authentication fails:
Verify your LinkedIn credentials are correct
Check if your account has two-factor authentication enabled
Try logging in manually first to resolve any security challenges
Scraping Failures: If scraping fails:
Try running with
headless: false
to see what's happeningCheck if LinkedIn has updated their page structure
Ensure stable internet connection
Port Conflicts: If port 8080 is in use:
node dist/index.js --port 3000
Environment Variables
Optional environment variables:
PORT
: HTTP server port (default: 8080)NODE_ENV
: Set to 'production' for production mode
License
This project is for educational and research purposes. Please respect LinkedIn's Terms of Service and use responsibly.
Contributing
Fork the repository
Create a feature branch
Make your changes
Test thoroughly
Submit a pull request
Disclaimer
This tool is for educational purposes only. Users are responsible for complying with LinkedIn's Terms of Service and applicable laws. The authors are not responsible for any misuse of this software.
This server cannot be installed
local-only server
The server can only run on the client's local machine because it depends on local resources.
Enables extraction of comprehensive LinkedIn profile data including experience, education, skills, and contact information through browser automation. Requires manual LinkedIn credentials input and uses anti-detection measures for reliable scraping.
Related MCP Servers
- -securityFlicense-qualityA FastMCP-based server that enables programmatic LinkedIn automation and data extraction through browser automation, offering secure authentication and tools for profile operations and post interactions while respecting LinkedIn's rate limits.Last updated -43
- -securityAlicense-qualityA powerful LinkedIn Profile Analyzer that seamlessly integrates with Claude AI to fetch and analyze public LinkedIn profiles, enabling users to extract, search, and analyze posts data through RapidAPI's LinkedIn Data API.Last updated -19MIT License
- -securityFlicense-qualityA server that enables AI assistants to interact with LinkedIn programmatically for job searching, resume/cover letter generation, and managing job applications through standardized JSON-RPC requests.Last updated -10
- -securityAlicense-qualityEnables users to fetch, analyze, and manage LinkedIn posts data through tools that retrieve profiles, search posts by keywords, filter by date, and identify top-performing content based on engagement metrics.Last updated -MIT License