Proxycurl MCP Server
This is a Node.js-based Model Context Protocol (MCP) server that exposes Proxycurl's LinkedIn data API. It can be used with any MCP-compatible client (e.g., Claude Desktop) to access LinkedIn profile data, company information, and search for employees.
Features
Look up LinkedIn profiles by URL
Look up LinkedIn companies by URL
Find people by name and company
Search for employees at a company by role or keyword
Prerequisites
Node.js (v14 or higher)
A Proxycurl API key (get one at https://nubela.co/proxycurl/)
An MCP-compatible client (e.g., Claude Desktop)
Installation
Clone this repository:
git clone https://github.com/dbogardus/proxycurl-mcp-server.git cd proxycurl-mcp-serverInstall dependencies:
npm installInstall the MCP server globally:
npm install -g .
API Key Configuration
There are two ways to configure your Proxycurl API key:
Option 1: Environment Variable (for CLI usage)
Set the PROXYCURL_API_KEY
environment variable:
This is useful for development or when running the CLI directly.
Option 2: Example: Claude Desktop Configuration (recommended for Claude Desktop users)
To configure Claude Desktop to use this MCP server:
Open Claude Desktop
Click the settings (⚙️) icon in the top right
Select the "Model Context Protocol" tab
Click "Add MCP Configuration"
Enter the following information:
Name:
Proxycurl LinkedIn API
Command:
npx
Args:
["proxycurl-mcp", "--api-key", "YOUR_ACTUAL_API_KEY"]
Example configuration in claude_desktop_config.json:
{ "mcpServers": [ { "name": "Proxycurl LinkedIn API", "command": "npx", "args": ["proxycurl-mcp", "--api-key", "YOUR_ACTUAL_API_KEY"] } ] }Replace
YOUR_ACTUAL_API_KEY
with your Proxycurl API key (get one at https://nubela.co/proxycurl/)Click "Save"
Restart Claude Desktop to apply changes
Usage
Once configured, your MCP client will be able to access LinkedIn data through the following tools:
get_person_profile
: Get a person's LinkedIn profile by URLExample:
linkedinUrl: "https://www.linkedin.com/in/williamhgates"
Returns comprehensive profile data including experience, education, skills, certifications
get_company_profile
: Get a company's LinkedIn profile by URLExample:
linkedinUrl: "https://www.linkedin.com/company/microsoft"
Returns detailed company data including description, size, industry, and specialties
lookup_person
: Find a person's LinkedIn profile by name and companyImportant: Requires both name and company parameters for best results
Example:
name: "Bill Gates", company: "microsoft.com"
Returns LinkedIn URL for the person if found
search_employees
: Search for employees at a company with role and keyword filtersExample:
linkedinUrl: "https://www.linkedin.com/company/microsoft", role: "Software Engineer"
Returns list of employees with basic profile information
search_companies
: Search for companies by name or domainExample:
query: "Microsoft"
orquery: "microsoft.com", limit: 5
Use this to find LinkedIn company URLs when you only have the company name
search_people
: Search for people on LinkedIn by keywords, title, company, and locationExample:
query: "data science", title: "Lead", companyDomain: "microsoft.com", location: "Seattle"
Use this for finding professionals based on skills, job titles, or industries
advanced_search_companies
: Advanced search for companies with detailed filtering optionsExample:
country: "US", industry: "technology", employee_count_min: 1000, founded_after_year: 2010
Much more powerful than basic company search with many filtering options
Supports Boolean search expressions (AND, OR, NOT) in name and description fields
Can return up to 10,000,000 results per search
Development
To modify the server or add new features:
Edit
server.js
to add or modify API endpointsRun
npm install -g .
to install your changes globally
Local Test Environment (test.env
)
For local development and running test scripts (e.g., those in the tests/
directory) directly, you can use a test.env
file in the project root to manage your API key and debug settings. This file is typically included in .gitignore
and should not be committed to the repository.
Create a test.env
file with the following content:
Replace your_actual_proxycurl_api_key_here
with your Proxycurl API key. The test scripts are often configured to load environment variables from this file if it exists.
License
MIT
This server cannot be installed
remote-capable server
The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.
A Node.js-based Model Context Protocol server that exposes Proxycurl's LinkedIn data API, allowing MCP-compatible clients to access LinkedIn profile data, company information, and search for employees.
Related MCP Servers
- -securityFlicense-qualityA Model Context Protocol server that enables seamless interaction with LinkedIn for job applications, profile retrieval, feed browsing, and resume analysis through natural language commands.Last updated -24
- -securityAlicense-qualityA Model Context Protocol server that provides comprehensive access to LinkedIn data and functionality, enabling data retrieval and user account management through the HorizonDataWave API.Last updated -263141JavaScriptMIT License
- AsecurityFlicenseAqualityAn unofficial Model Context Protocol server that enables programmatic access to LinkedIn data through tools like user search, company search, profile enrichment, and contact retrieval.Last updated -7133
- -securityFlicense-qualityA comprehensive Model Context Protocol server that enables AI assistants to interact with LinkedIn APIs for profile management, content creation, networking, messaging, and analytics.Last updated -1