A powerful LinkedIn profile analyzer MCP (Model Context Protocol) server that interacts with LinkedIn's API to fetch, analyze, and manage LinkedIn posts data. This MCP is specifically designed to work with Claude AI.
- Fetch and store LinkedIn posts for any public profile
- Search through posts with keyword filtering
- Get top performing posts based on engagement metrics
- Filter posts by date range
- Paginated access to stored posts
- Easy integration with Claude AI
- Python 3.7+
- RapidAPI key for LinkedIn Data API
- Claude AI access
- Visit LinkedIn Data API on RapidAPI
- Sign up or log in to RapidAPI
- Subscribe to the LinkedIn Data API
- Copy your RapidAPI key from the dashboard
- Clone the repository:
git clone https://github.com/rugvedp/linkedin-mcp.git
cd linkedin-mcp
- Install dependencies:
pip install -r requirements.txt
- Set up environment variables:
- Create a
.env
file - Add your RapidAPI key:
- Create a
RAPIDAPI_KEY=your_rapidapi_key_here
linkedin-mcp/
├── main.py # Main MCP server implementation
├── mcp.json # MCP configuration file
├── requirements.txt # Python dependencies
├── .env # Environment variables
└── README.md # Documentation
The mcp.json
file configures the LinkedIn MCP server:
{
"mcpServers": {
"LinkedIn Updated": {
"command": "uv",
"args": [
"run",
"--with",
"mcp[cli]",
"mcp",
"run",
"path/to/your/script.py"
]
}
}
}
Make sure to update the path in args
to match your local file location.
Fetches LinkedIn posts for a given username and saves them locally.
fetch_and_save_linkedin_posts(username: str) -> str
Retrieves saved posts with pagination support.
get_saved_posts(start: int = 0, limit: int = 10) -> dict
Searches posts for specific keywords.
search_posts(keyword: str) -> dict
Returns top performing posts based on engagement metrics.
get_top_posts(metric: str = "Like Count", top_n: int = 5) -> dict
Filters posts within a specified date range.
get_posts_by_date(start_date: str, end_date: str) -> dict
- Initialize the MCP server in your conversation with Claude
- Use the available tools through natural language commands
- Claude will help you interact with LinkedIn data using these tools
This project uses the following endpoint from the LinkedIn Data API:
GET /get-profile-posts
: Fetches posts from a LinkedIn profile- Base URL:
https://linkedin-data-api.p.rapidapi.com
- Required Headers:
x-rapidapi-key
: Your RapidAPI keyx-rapidapi-host
:linkedin-data-api.p.rapidapi.com
- Base URL:
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature
) - Commit your changes (
git commit -m 'Add amazing feature'
) - Push to the branch (
git push origin feature/amazing-feature
) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
- RapidAPI for providing LinkedIn data access
- Anthropic for Claude AI capabilities