LinkedIn MCP Server - AI Assistant avatar
LinkedIn MCP Server - AI Assistant

Pricing

from $0.01 / 1,000 results

Go to Apify Store
LinkedIn MCP Server - AI Assistant

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

John Rippy

Maintained by Community

Actor stats

0

Bookmarked

1

Total users

1

Monthly active users

2 days ago

Last modified

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

ToolDescription
scrape_profileGet full LinkedIn profile (name, headline, about, experience, posts)
scrape_postsScrape posts from a profile or by hashtag/keyword search

Voice Training Tools

ToolDescription
analyze_voiceAnalyze writing style, tone, hooks, CTAs, and vocabulary
generate_postGenerate new posts matching a trained voice profile
improve_draftImprove your draft to better match a voice profile

Content Tools

ToolDescription
suggest_topicsGet topic suggestions based on voice profile and trends
analyze_performanceAnalyze engagement metrics and patterns from posts

Search Tools

ToolDescription
search_peopleSearch 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:

MethodDescription
Cookies (recommended)Export your LinkedIn session cookies as JSON
Email/PasswordLinkedIn 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 style
2. "The 5-minute habit that changed my morning" - fits your list format
3. "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.

EventDescriptionPrice
profile_scrapedProfile data extracted$0.01
posts_scrapedPer batch of posts$0.01-0.05
voice_analyzedVoice profile created$0.02
post_generatedContent generated$0.01

Cost Examples

TaskEstimated 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


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