LinkedIn Automation 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 Automation MCP Serverpost 'Excited to announce our new feature!' on LinkedIn"
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 Automation MCP Server
An MCP (Model Context Protocol) server for LinkedIn automation that provides tools for automatically posting messages to LinkedIn, scheduling posts, and managing LinkedIn API integration.
Features
Authentication: OAuth2 authentication with LinkedIn API
Text Posts: Create and publish text posts to LinkedIn
Image Posts: Upload and post images with text content
Post Scheduling: Schedule posts to be published at specific times
Profile Management: Get authenticated user's LinkedIn profile information
Scheduled Post Management: View, cancel, and manage scheduled posts
Related MCP server: LinkedIn Bulk Data Scraper
Installation
Clone this repository
Install dependencies:
npm installBuild the project:
npm run build
Configuration
Before using this MCP server, you need to:
Create a LinkedIn App:
Create a new app and get your Client ID and Client Secret
Configure OAuth redirect URLs
Get an Access Token:
Implement OAuth2 flow to get an access token
The access token needs the following scopes:
r_liteprofile(read profile information)r_emailaddress(read email address)w_member_social(write posts)
Tools Available
authenticate_linkedin
Authenticate with LinkedIn using an OAuth2 access token.
Parameters:
accessToken(string): LinkedIn OAuth2 access token
post_to_linkedin
Post a text message to LinkedIn.
Parameters:
text(string): The text content of the post (1-3000 characters)visibility(string): Post visibility - "PUBLIC", "CONNECTIONS", or "LOGGED_IN_MEMBERS" (default: "PUBLIC")
post_image_to_linkedin
Post an image with text to LinkedIn.
Parameters:
text(string): The text content of the post (1-3000 characters)imageUrl(string): URL of the image to include in the postaltText(string, optional): Alternative text for the imagevisibility(string): Post visibility - "PUBLIC", "CONNECTIONS", or "LOGGED_IN_MEMBERS" (default: "PUBLIC")
schedule_linkedin_post
Schedule a post to be published later on LinkedIn.
Parameters:
text(string): The text content of the post (1-3000 characters)scheduledTime(string): ISO 8601 timestamp for when to publish the postvisibility(string): Post visibility - "PUBLIC", "CONNECTIONS", or "LOGGED_IN_MEMBERS" (default: "PUBLIC")
get_linkedin_profile
Get the authenticated user's LinkedIn profile information.
Parameters: None
get_scheduled_posts
Get all scheduled posts.
Parameters: None
cancel_scheduled_post
Cancel a scheduled post.
Parameters:
scheduleId(string): The ID of the scheduled post to cancel
Usage with Claude Desktop
Build the server:
npm run buildAdd to Claude Desktop configuration (
claude_desktop_config.json):{ "mcpServers": { "linkedin-automation": { "command": "node", "args": ["/absolute/path/to/linkedin-automation-mcp/build/index.js"] } } }Restart Claude Desktop
Development
# Install dependencies
npm install
# Build the project
npm run build
# Run the server (for testing)
npm start
# Development mode (build and run)
npm run devLinkedIn API Rate Limits
This server respects LinkedIn API rate limits:
Rate limit information is tracked and logged
Automatic retry with backoff for rate-limited requests
Best practices for API usage
Security Considerations
Access Tokens: Never commit access tokens to version control
Scopes: Only request necessary OAuth scopes
Rate Limiting: Respect LinkedIn's API rate limits
Error Handling: Proper error handling for API failures
Error Handling
The server includes comprehensive error handling for:
Authentication failures
API rate limits
Network errors
Invalid parameters
LinkedIn API errors
Contributing
Fork the repository
Create a feature branch
Make your changes
Add tests if applicable
Submit a pull request
License
MIT License - see LICENSE file for details
Support
For issues and questions:
Check the LinkedIn Developer Documentation
Review the MCP documentation at https://modelcontextprotocol.io/
Create an issue in this repository
Disclaimer
This project is not officially affiliated with LinkedIn. Use in accordance with LinkedIn's API Terms of Service and Community Guidelines.
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/pashaarshad/my-first-MCP'
If you have feedback or need assistance with the MCP directory API, please join our Discord server