Skip to main content
Glama
satvikjain012-cmyk

LinkedIn Competitor Analysis MCP Server

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.md

Setup Instructions

Prerequisites

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.txt

2. Environment Setup

cp .env.example .env

Edit .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=8000

3. Run the Server

uvicorn app.main:app --reload --host 0.0.0.0 --port 8000

Server will be available at http://localhost:8000

API Endpoints

Authentication

  • GET /auth/linkedin - Initiate LinkedIn OAuth flow

  • GET /auth/callback - OAuth callback handler

  • POST /auth/logout - Logout and revoke token

Competitors

  • POST /competitors - Add competitor to track

  • GET /competitors - List tracked competitors

  • DELETE /competitors/{id} - Remove competitor

Posts

  • GET /posts/competitor/{competitor_id} - Fetch competitor's recent posts

  • POST /posts/analyze - Analyze a post or set of posts

  • GET /posts/trending - Get trending topics from competitor posts

Content Generation

  • POST /generate/post-idea - Generate original post based on competitors

  • POST /generate/with-graphics-brief - Generate post with graphics specifications

  • GET /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 tool

Configuration

See config.py for all available settings:

  • API rate limiting

  • Cache expiration

  • LLM model selection

  • Post analysis depth

Contributing

Pull requests welcome! Please:

  1. Fork the repository

  2. Create a feature branch

  3. Submit a PR with tests

License

MIT

Support

For issues or questions, open a GitHub issue or contact the maintainer.

F
license - not found
-
quality - not tested
C
maintenance

Maintenance

–Maintainers
–Response time
–Release cycle
–Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • A
    license
    -
    quality
    D
    maintenance
    Enables 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
  • A
    license
    -
    quality
    C
    maintenance
    Enables creation of optimized LinkedIn posts using a component-based design system with variants, themes, and composition patterns. Supports multiple post types (text, document, poll, video, carousel) with research-backed optimization for maximum engagement.
    Last updated
    3
    Apache 2.0
  • A
    license
    -
    quality
    D
    maintenance
    LinkedIn-native AI content creation, scheduling & analytics. Write and post on LinkedIn, create drafts, generate hooks & hashtags, schedule posts, and track engagement — all through natural language.
    Last updated
    38
    MIT

View all related MCP servers

Related MCP Connectors

  • Social media analytics, post insights, and competitor benchmarking for AI agents.

  • Live market intelligence & AI content strategy: trends, competitor moves, content calendar.

  • Social media analytics, video analysis, and competitor intel for any MCP-compatible AI agent.

View all MCP Connectors

Latest Blog Posts

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