LinkedIn MCP Server - AI Assistant
Pricing
from $0.01 / 1,000 results
LinkedIn MCP Server - AI Assistant
Model Context Protocol server for LinkedIn automation. Enable AI assistants to search profiles, send messages & manage connections programmatically.
Pricing
from $0.01 / 1,000 results
Rating
0.0
(0)
Developer

John Rippy
Actor stats
0
Bookmarked
1
Total users
1
Monthly active users
2 days ago
Last modified
Categories
Share
LinkedIn MCP Server
"Let AI Assistants Work With LinkedIn" by John Rippy | johnrippy.link
AI-Powered LinkedIn Automation Through MCP
Model Context Protocol (MCP) is an open standard that lets AI assistants like Claude use external tools. This server exposes LinkedIn functionality to your AI assistant.
What can you do with this?
- Scrape LinkedIn profiles and posts through natural conversation
- Train AI voice models on writing styles
- Generate content that matches someone's voice
- Analyze post performance and suggest topics
- Search for people and companies
Talk to Claude. Let Claude talk to LinkedIn.
What is MCP?
MCP (Model Context Protocol) is a standardized way for AI assistants to use external tools. Instead of copying and pasting data, you can just ask Claude:
"Analyze my LinkedIn profile and tell me what topics I should write about"
Claude uses this MCP server to scrape your profile, analyze your posts, and give you actionable recommendations.
Available Tools
Profile Tools
| Tool | Description |
|---|---|
scrape_profile | Get full LinkedIn profile (name, headline, about, experience, posts) |
scrape_posts | Scrape posts from a profile or by hashtag/keyword search |
Voice Training Tools
| Tool | Description |
|---|---|
analyze_voice | Analyze writing style, tone, hooks, CTAs, and vocabulary |
generate_post | Generate new posts matching a trained voice profile |
improve_draft | Improve your draft to better match a voice profile |
Content Tools
| Tool | Description |
|---|---|
suggest_topics | Get topic suggestions based on voice profile and trends |
analyze_performance | Analyze engagement metrics and patterns from posts |
Search Tools
| Tool | Description |
|---|---|
search_people | Search LinkedIn profiles by keywords, company, location |
Quick Start Examples
Example 1: Scrape a Profile
{"mode": "demo","tool": "scrape_profile","profileUrl": "https://www.linkedin.com/in/johnrippy/","maxPosts": 20}
Example 2: Analyze Voice Style
{"mode": "demo","tool": "analyze_voice","profileUrl": "https://www.linkedin.com/in/johnrippy/","saveProfile": true,"profileName": "johnrippy-voice"}
Example 3: Generate a Post in Someone's Voice
{"mode": "demo","tool": "generate_post","voiceProfileId": "johnrippy-voice","topic": "Why I stopped checking email first thing in the morning","contentType": "text","includeHashtags": true}
Example 4: Improve a Draft
{"mode": "demo","tool": "improve_draft","voiceProfileId": "johnrippy-voice","draft": "Here are my thoughts on productivity...","feedback": "Make it more engaging with a stronger hook"}
Setup with Claude Desktop
Option 1: Using Apify (Cloud)
Add to your Claude Desktop config (~/.config/claude/claude_desktop_config.json):
{"mcpServers": {"linkedin": {"command": "npx","args": ["-y", "@anthropic-ai/model-context-protocol", "run", "apify-actor", "localhowl/linkedin-mcp-server"],"env": {"APIFY_TOKEN": "your-apify-token"}}}}
Option 2: Running Locally
{"mcpServers": {"linkedin": {"command": "node","args": ["/path/to/linkedin-mcp-server/dist/main.js"],"env": {"LINKEDIN_COOKIES": "[...]","ANTHROPIC_API_KEY": "sk-ant-..."}}}}
Authentication
LinkedIn scraping requires authentication. Provide one of:
| Method | Description |
|---|---|
| Cookies (recommended) | Export your LinkedIn session cookies as JSON |
| Email/Password | LinkedIn credentials for automated login |
For AI features (voice training, post generation), provide:
- Claude API key (recommended)
- OpenAI API key (alternative)
Example Conversation with Claude
User: Can you analyze my LinkedIn voice and suggest some post topics?Claude: I'll analyze your LinkedIn profile to understand your writing style.[Uses scrape_posts tool][Uses analyze_voice tool]Based on your posts, here's your voice profile:- Tone: Professional but conversational- Hooks: You often start with contrarian statements- CTAs: You typically end with questions- Signature phrases: "Here's the thing", "unpopular opinion"Let me suggest some topics that match your style:[Uses suggest_topics tool]Here are 5 topic ideas:1. "Why I stopped optimizing for likes" - matches your contrarian style2. "The 5-minute habit that changed my morning" - fits your list format3. "What nobody tells you about growing on LinkedIn"4. "I deleted my content calendar. Here's what happened."5. "The best career advice I ever ignored"Want me to draft one of these?
Pay-Per-Event Pricing
You only pay for what you use.
| Event | Description | Price |
|---|---|---|
profile_scraped | Profile data extracted | $0.01 |
posts_scraped | Per batch of posts | $0.01-0.05 |
voice_analyzed | Voice profile created | $0.02 |
post_generated | Content generated | $0.01 |
Cost Examples
| Task | Estimated Cost |
|---|---|
| Scrape profile with 20 posts | ~$0.02 |
| Analyze voice profile | ~$0.02 |
| Generate 5 post drafts | ~$0.05 |
| Full content strategy session | ~$0.15 |
Use Cases
Personal Branding
- Voice consistency: Maintain your unique voice across all posts
- Content ideation: Get topic suggestions based on your style
- Draft improvement: Polish drafts to match your voice
Ghostwriting
- Client voice training: Learn a client's writing style
- Authentic content: Generate posts that sound like them
- Quality control: Ensure drafts match the trained voice
Content Agencies
- Scale content creation: Generate drafts for multiple clients
- Consistency: Maintain unique voices across accounts
- Research: Analyze competitor content strategies
Lead Generation
- Profile research: Gather info on prospects
- Connection outreach: Research before connecting
- Content targeting: Find people engaging with relevant topics
API Integration
Using the Apify API (JavaScript)
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: 'YOUR_API_TOKEN' });const run = await client.actor('localhowl/linkedin-mcp-server').call({mode: 'demo',tool: 'analyze_voice',profileUrl: 'https://www.linkedin.com/in/johnrippy/'});const { items } = await client.dataset(run.defaultDatasetId).listItems();console.log(items[0]);
Using cURL
curl -X POST "https://api.apify.com/v2/acts/localhowl~linkedin-mcp-server/runs?token=YOUR_API_TOKEN" \-H "Content-Type: application/json" \-d '{"mode": "demo","tool": "scrape_profile","profileUrl": "https://www.linkedin.com/in/johnrippy/"}'
Voice Profile Output
When you run analyze_voice, you get:
{"voiceProfileId": "johnrippy-voice","profileUrl": "https://www.linkedin.com/in/johnrippy/","postsAnalyzed": 20,"profile": {"tone": "Professional but conversational","formality": 0.6,"hookStyles": ["Contrarian statements","Personal stories","Numbers/statistics"],"ctaStyles": ["Questions to audience","Call to connect","Share your experience"],"signaturePhrases": ["Here's the thing","Unpopular opinion","Let me explain"],"topicCategories": ["Career advice","Productivity","LinkedIn growth"],"postLength": {"average": 850,"min": 400,"max": 1200},"hashtagUsage": {"average": 3,"common": ["#productivity", "#career", "#growth"]}}}
Limitations
- LinkedIn TOS: Use responsibly, respect rate limits
- Cookie expiry: LinkedIn cookies expire; refresh periodically
- AI accuracy: Generated content should be reviewed before posting
- Profile access: Can only scrape public profiles or connections
Support
- Email: john@johnrippy.link
- GitHub: Report issues on the repository
Built by John Rippy | johnrippy.link
Keywords
linkedin mcp server, model context protocol, claude linkedin, ai linkedin integration, linkedin profile scraper, linkedin voice trainer, linkedin post generator, mcp tools, claude desktop, ai assistant tools, linkedin automation, content generation, ghostwriting ai, personal branding ai