How to Set Up an MCP Server for LinkedIn
An MCP server for LinkedIn lets AI agents read profiles, search jobs, send messages, and publish posts through the Model Context Protocol. This guide compares the main open-source and managed implementations, walks through setup for each approach, and covers the LinkedIn API compliance constraints that most guides skip.
What an MCP Server for LinkedIn Actually Does
An MCP server for LinkedIn sits between your AI agent and LinkedIn's data. It translates agent requests into LinkedIn API calls or browser actions, then returns structured results the agent can reason about. The Model Context Protocol standardizes this interface, so the same agent that queries your file system or searches the web can also look up a LinkedIn profile or post an update.
Without an MCP server, connecting an agent to LinkedIn means writing custom API wrappers, handling authentication, and managing rate limits yourself. With one, you configure a server once and your agent gains LinkedIn tools alongside every other MCP-connected service.
LinkedIn has over 1.3 billion registered members, making it the largest professional network. That scale makes it valuable for lead research, hiring workflows, and competitive analysis. But LinkedIn also enforces strict automation policies, which shapes how every MCP implementation works.
There are three distinct approaches to LinkedIn MCP servers, and each carries different tradeoffs around capability, compliance, and reliability.
Three Approaches to LinkedIn MCP Integration
Every LinkedIn MCP server falls into one of three categories. The right choice depends on your use case, risk tolerance, and whether you have LinkedIn API partner access.
Browser Automation
Servers like linkedin-mcp-server by stickerdaniel use a headless browser to interact with LinkedIn's web interface. This approach provides the broadest feature set without needing API credentials. The stickerdaniel implementation uses Patchright (a Playwright fork designed to avoid bot detection) and offers 14 tools including profile lookup, company search, job search, messaging, and feed access.
The upside: no API approval required. The downside: LinkedIn's Terms of Service prohibit automated browser access, and their detection systems have become increasingly sophisticated. Browser-based servers also break when LinkedIn changes its frontend, which happens frequently.
API-Based Servers
Servers like mcp-linkedin use LinkedIn's API through unofficial client libraries. These are more stable than browser automation since APIs change less frequently than UIs, but they still use undocumented endpoints that LinkedIn can block at any time.
The adhikasp implementation authenticates with your LinkedIn email and password, then accesses feed posts and job listings. The feature set is narrower than browser automation, but the connection is more reliable session to session.
Managed Platforms
Services like Composio and Apify wrap
LinkedIn access in a hosted MCP endpoint. Composio handles OAuth authentication and provides tools for posting, deleting posts, retrieving organization data, and fetching profiles. Apify offers profile data extraction and lead enrichment through their MCP connector.
Managed platforms cost money (Apify starts around $5/month, Composio offers a free tier with limits) but handle infrastructure, authentication rotation, and rate limit management for you.
Setting Up a LinkedIn MCP Server Step by Step
The stickerdaniel browser-based server is the most common starting point because it requires no API credentials. Here's how to set it up with Claude Desktop or any MCP-compatible client.
Install the Server
The fastest path uses uvx, which handles Python dependencies automatically:
uvx linkedin-scraper-mcp@latest
For Docker deployment, pull the image and mount a volume for persistent browser profiles:
docker run -v ~/.linkedin-mcp:/data linkedin-mcp-server
Configure Your MCP Client
Add the server to your MCP client configuration. For Claude Desktop, add this to your claude_desktop_config.json:
{
"mcpServers": {
"linkedin": {
"command": "uvx",
"args": ["linkedin-scraper-mcp@latest"]
}
}
}
Authenticate With LinkedIn
On first use, the server launches a browser window for manual LinkedIn login. Your session persists in ~/.linkedin-mcp/ so you don't need to log in every time. If you're running headless, use the --no-headless flag for the initial authentication, then switch back.
Verify the Connection
Ask your agent to run a simple profile lookup. If the server is configured correctly, it will return structured profile data including experience, education, and skills sections.
Setting Up Composio (Managed Alternative)
If you prefer OAuth-based access without browser automation:
- Create a Composio account and generate an API key
- Run the MCP registration script to get your endpoint URL
- Add the endpoint to your MCP client with the
--transport httpflag - Complete the OAuth authorization flow when prompted
Composio's tools are narrower (posting, profile retrieval, organization management) but operate within LinkedIn's authorized API framework.
Give Your LinkedIn Research a Persistent Home
Stop losing agent-collected profiles and job data between sessions. Fast.io workspaces index your LinkedIn research for semantic search, so agents and humans can query weeks of accumulated intelligence. 50 GB free, no credit card.
LinkedIn API Compliance and Account Safety
This is the section most LinkedIn MCP guides skip, and it's the one that matters most. LinkedIn actively monitors for automation and will restrict or ban accounts that violate their terms.
What LinkedIn Prohibits
LinkedIn's User Agreement explicitly bans using "bots or other automated methods to access the Services, add or download contacts, send or redirect messages." This applies to browser automation servers, unofficial API clients, and any tool that mimics human actions programmatically.
The LinkedIn Partner API program is the only authorized path for programmatic access, and it requires an incorporated company, an existing product with proven traction, and a 3-6 month approval process with less than a 10% acceptance rate.
Practical Risk Levels
Low risk: Using Composio or similar OAuth-based services for posting and basic profile access. These operate through authorized API endpoints.
Medium risk: Running browser automation with conservative limits. Keep profile lookups under 20-30 per day, avoid bulk messaging, and use a secondary account if possible. The stickerdaniel server's README notes that no users have reported bans, but recommends reducing volume if LinkedIn sends warnings.
High risk: Bulk scraping profiles, automated connection requests, or mass messaging. LinkedIn's detection algorithms identify these patterns with high accuracy, and enforcement has tightened significantly since 2024.
Safe Usage Guidelines
- Use a dedicated
LinkedIn account for MCP testing, not your primary professional profile
- Keep daily lookups under 20-30 for browser automation approaches
- Space requests naturally rather than firing them in rapid bursts
- Never store scraped profile data in persistent databases without consent (this violates both LinkedIn's terms and GDPR/CCPA in many jurisdictions)
- Monitor your account for restriction warnings and reduce automation immediately if you receive one
- For production workflows, invest in LinkedIn Partner API access or use a managed platform with proper OAuth
Storing and Managing LinkedIn Data With Agents
Once your MCP server retrieves LinkedIn data, you need somewhere to put it. The agent's context window is ephemeral. Job listings, profile summaries, and lead research disappear when the session ends unless you persist them.
Local Storage
The simplest approach is writing results to local files. Your agent saves JSON or markdown files to a project directory. This works for individual research but breaks down when multiple agents need the same data or when you want to hand results to a colleague.
Cloud Storage Services
S3, Google
Drive, or similar services give you durability and sharing. But they lack built-in search, so finding a specific profile summary later means building your own indexing layer.
Fast.io Workspaces
Fast.io workspaces solve both problems. Upload LinkedIn research files to a workspace and Intelligence Mode automatically indexes them for semantic search. Ask "which candidates have machine learning experience" and get answers with citations to the source files, without building a vector database.
The Fast.io MCP server connects alongside your LinkedIn MCP server, giving agents a persistent storage layer through the same protocol. An agent can query LinkedIn for job listings, save the results to a Fast.io workspace, then search across weeks of accumulated research using natural language.
The free agent plan includes 50 GB of storage, 5,000 credits per month, and 5 workspaces with no credit card required. For teams building recruiting pipelines or sales prospecting workflows, the workspace becomes the central hub where agent-gathered LinkedIn data meets human review.
Other options worth considering include Notion (good for structured databases but no MCP server) and Airtable (strong filtering but limited AI search). The key requirement is that your storage layer should be queryable by agents, not just writable.
Common LinkedIn MCP Workflows
Here are the workflows where a LinkedIn MCP server provides the most value, with practical notes on what works reliably today.
Lead Research and Enrichment
An agent searches
LinkedIn for profiles matching specific criteria (job title, company, location), then compiles a research brief. This works best with the stickerdaniel server's search_people and get_person_profile tools. Keep searches focused and volumes low to stay within safe automation limits.
Pair this with a Fast.io workspace to persist lead profiles across sessions. Enable Intelligence Mode and agents can search across all collected leads using natural language queries like "find CTOs at Series B startups in healthcare."
Job Market Analysis
Agents can search job listings by keyword and location, extract requirements and salary data, and identify trends. The search_jobs and get_job_details tools are lower risk than profile scraping since job listings are public by design.
Content Publishing
Composio's MCP server supports creating and deleting LinkedIn posts through authorized API endpoints. An agent can draft a post based on research, publish it, and track engagement, all through MCP tools. This is the safest automation category since it uses LinkedIn's official content API.
Competitive Intelligence
Monitor competitor company pages for new hires, job postings, and content strategy. The get_company_profile and get_company_posts tools provide structured access to public company data. Save snapshots to a shared workspace where your team can review trends over time.
What Doesn't Work Well
Automated connection requests and cold outreach messaging are technically possible with browser automation servers, but LinkedIn's detection systems flag these patterns aggressively. Automated messaging through unofficial channels is the fastest path to an account restriction. Stick to manual outreach or use LinkedIn's Sales Navigator with its official API if you need programmatic messaging.
Frequently Asked Questions
Can AI agents access LinkedIn data through MCP?
Yes. Several open-source and managed MCP servers connect AI agents to LinkedIn for profile lookups, job searches, and content publishing. Browser automation servers like stickerdaniel's linkedin-mcp-server offer the broadest feature set. Managed platforms like Composio provide OAuth-based access through authorized API endpoints. Each approach carries different compliance tradeoffs.
How do I automate LinkedIn with Claude?
Install a LinkedIn MCP server (uvx linkedin-scraper-mcp@latest is the quickest option), add it to your Claude Desktop configuration, and authenticate through the browser login prompt. Claude can then use LinkedIn tools alongside other MCP services. For safer API-based automation, configure Composio's LinkedIn MCP endpoint with OAuth authentication.
Is using a LinkedIn MCP server compliant with LinkedIn's Terms of Service?
Browser automation and unofficial API servers violate LinkedIn's Terms of Service, which prohibit bots and automated access. LinkedIn's Partner API program is the only authorized path, but it requires an incorporated company and a months-long approval process with a low acceptance rate. Managed platforms using OAuth for posting operate in a safer zone. Use dedicated test accounts and conservative volume limits to reduce risk.
What tools does a LinkedIn MCP server provide?
Depending on the implementation, tools include get_person_profile, search_people, get_company_profile, search_jobs, get_job_details, get_inbox, send_message, get_feed, and connect_with_person. Managed platforms typically offer a smaller set focused on posting and profile retrieval through authorized APIs.
How do I store LinkedIn data collected by AI agents?
Save agent-collected LinkedIn data to a persistent workspace rather than relying on conversation context. Fast.io workspaces automatically index uploaded files for semantic search, so you can query across weeks of collected profiles and job listings using natural language. The free plan includes 50 GB of storage and no credit card is required.
Related Resources
Give Your LinkedIn Research a Persistent Home
Stop losing agent-collected profiles and job data between sessions. Fast.io workspaces index your LinkedIn research for semantic search, so agents and humans can query weeks of accumulated intelligence. 50 GB free, no credit card.