LinkedIn Competitor Analysis MCP Server
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@LinkedIn Competitor Analysis MCP ServerAnalyze my top competitor's last 5 posts"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
LinkedIn Competitor Analysis MCP Server
Overview
A Model Context Protocol (MCP) server that helps you:
📊 Monitor and analyze competitor LinkedIn posts
💡 Extract insights and trending ideas
✍️ Generate original post concepts for your company
🎨 Create graphics-ready content with metadata
Related MCP server: LinkedIn Content Creation MCP Server
Features
Competitor Post Tracking: Fetch and store LinkedIn posts from competitor accounts
AI-Powered Analysis: Analyze engagement, themes, and content strategies
Content Generation: Create original post ideas inspired by competitor insights
Graphics Integration: Export post concepts with metadata for design tools
Trend Detection: Identify trending topics and content patterns
Tech Stack
Language: Python 3.10+
Framework: FastAPI
LLM Integration: Anthropic Claude API
LinkedIn API: Official LinkedIn REST APIs
Database: PostgreSQL (optional, with SQLAlchemy)
Task Queue: Celery (for async processing)
Project Structure
linkedin-mcp-server/
├── app/
│ ├── __init__.py
│ ├── main.py # FastAPI application
│ ├── config.py # Configuration & environment
│ ├── auth/
│ │ ├── __init__.py
│ │ └── linkedin_auth.py # LinkedIn OAuth2 flow
│ ├── services/
│ │ ├── __init__.py
│ │ ├── linkedin_service.py # LinkedIn API interactions
│ │ ├── analysis_service.py # AI analysis of posts
│ │ └── content_service.py # Post generation & formatting
│ ├── models/
│ │ ├── __init__.py
│ │ └── schemas.py # Pydantic models
│ ├── routes/
│ │ ├── __init__.py
│ │ ├── competitors.py # Competitor tracking
│ │ ├── posts.py # Post analysis
│ │ └── generation.py # Content generation
│ └── utils/
│ ├── __init__.py
│ └── logger.py
├── tests/
│ ├── __init__.py
│ ├── test_linkedin.py
│ └── test_analysis.py
├── .env.example
├── requirements.txt
├── docker-compose.yml
├── Dockerfile
└── README.mdSetup Instructions
Prerequisites
Python 3.10+
LinkedIn Developer Account (https://www.linkedin.com/developers/)
Anthropic API Key (https://console.anthropic.com/)
PostgreSQL (optional)
1. Clone & Install
git clone https://github.com/satvikjain012-cmyk/linkedin-mcp-server.git
cd linkedin-mcp-server
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
pip install -r requirements.txt2. Environment Setup
cp .env.example .envEdit .env with your credentials:
# LinkedIn OAuth
LINKEDIN_CLIENT_ID=your_client_id
LINKEDIN_CLIENT_SECRET=your_client_secret
LINKEDIN_REDIRECT_URI=http://localhost:8000/auth/callback
# Anthropic
ANTHROPIC_API_KEY=your_api_key
# Database (optional)
DATABASE_URL=postgresql://user:password@localhost/linkedin_mcp
# Server
SERVER_HOST=0.0.0.0
SERVER_PORT=80003. Run the Server
uvicorn app.main:app --reload --host 0.0.0.0 --port 8000Server will be available at http://localhost:8000
API Endpoints
Authentication
GET /auth/linkedin- Initiate LinkedIn OAuth flowGET /auth/callback- OAuth callback handlerPOST /auth/logout- Logout and revoke token
Competitors
POST /competitors- Add competitor to trackGET /competitors- List tracked competitorsDELETE /competitors/{id}- Remove competitor
Posts
GET /posts/competitor/{competitor_id}- Fetch competitor's recent postsPOST /posts/analyze- Analyze a post or set of postsGET /posts/trending- Get trending topics from competitor posts
Content Generation
POST /generate/post-idea- Generate original post based on competitorsPOST /generate/with-graphics-brief- Generate post with graphics specificationsGET /generate/history- View generation history
Usage Example
1. Add Competitors to Track
curl -X POST http://localhost:8000/competitors \
-H "Content-Type: application/json" \
-H "Authorization: Bearer {token}" \
-d '{
"name": "Competitor Name",
"linkedin_url": "https://www.linkedin.com/company/competitor",
"industry": "Tech"
}'2. Fetch & Analyze Their Posts
curl -X GET http://localhost:8000/posts/competitor/1 \
-H "Authorization: Bearer {token}"3. Generate Original Content
curl -X POST http://localhost:8000/generate/post-idea \
-H "Content-Type: application/json" \
-H "Authorization: Bearer {token}" \
-d '{
"competitor_ids": [1, 2, 3],
"topics": ["AI", "automation"],
"tone": "professional",
"company_context": "Our company specializes in..."
}'4. Generate Post with Graphics Metadata
curl -X POST http://localhost:8000/generate/with-graphics-brief \
-H "Content-Type: application/json" \
-H "Authorization: Bearer {token}" \
-d '{
"post_idea": "generated_post_id",
"design_preferences": {
"colors": ["#FF6B6B", "#4ECDC4"],
"style": "modern",
"include_stats": true
}
}'Workflow
1. Authenticate with LinkedIn OAuth
↓
2. Add competitors you want to track
↓
3. Fetch their recent posts (manual or auto-sync)
↓
4. AI analyzes posts for:
- Engagement patterns
- Content themes
- Trending topics
- Audience sentiment
↓
5. Generate original post ideas inspired by insights
↓
6. Export with graphics specifications (colors, layout, stats)
↓
7. Share with design team or graphics toolConfiguration
See config.py for all available settings:
API rate limiting
Cache expiration
LLM model selection
Post analysis depth
Contributing
Pull requests welcome! Please:
Fork the repository
Create a feature branch
Submit a PR with tests
License
MIT
Support
For issues or questions, open a GitHub issue or contact the maintainer.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/satvikjain012-cmyk/linkedin-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server