A Model Context Protocol (MCP) server implementation for LinkedIn integration, built with .NET. This server provides a bridge between AI agents and LinkedIn's functionality, allowing for programmatic interaction with LinkedIn's features through a standardized protocol.
- LinkedIn job search integration
- Standardized MCP protocol implementation
- Docker containerization support
- .NET Core implementation
- .NET 6.0 or later
- Docker (optional, for containerized deployment)
- LinkedIn Developer Account (for API access)
- Clone the repository:
git clone https://github.com/envykernel/LinkedinMCPServer.git
cd LinkedinMCPServer- Install dependencies:
dotnet restore- Build the project:
dotnet buildBuild and run using Docker:
docker build -t linkedin-mcp-server .
docker run -p 5000:80 linkedin-mcp-serverThe server requires the following configuration:
- LinkedIn API credentials (set in environment variables or configuration file)
- Server port settings
- MCP protocol settings
Create a appsettings.json file or set environment variables according to your needs.
Run the server locally:
dotnet run --project LinkedinMCPServerThe server will start and listen for MCP protocol requests on the configured port.
The server implements the following MCP endpoints:
SearchJobs: Search for jobs on LinkedIn- Parameters:
keywords: Keywords to search for in job titles and descriptionslocationId: Location ID for the searchdatePosted: When the job was posted (anyTime, past24Hours, pastWeek, pastMonth)sort: Sort order (mostRelevant, mostRecent)
- Parameters:
Contributions are welcome! Please feel free to submit a Pull Request.
- Fork the repository
- Create your feature branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add some AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
- LinkedIn API Documentation
- Model Context Protocol Specification
- .NET Community
For support, please open an issue in the GitHub repository or contact the maintainers.
Made with ❤️ by envykernel