Skip to main content
Glama
globodai-group

MCP LinkedIn Sales Navigator

MCP LinkedIn Sales Navigator

CI npm version

MCP server for LinkedIn Sales Navigator — Browser automation via Playwright.

LinkedIn Sales Navigator doesn't provide a public API. This MCP server uses browser automation (Playwright) to control Sales Navigator through an authenticated browser session. It enables AI assistants to search leads, view profiles, manage lists, send InMails, and export data — all through the standard Model Context Protocol.

⚠️ Important Disclaimers

  • This tool requires an active LinkedIn Sales Navigator subscription

  • Browser automation: This operates by controlling a real browser — no API hacking

  • Session required: You must be logged into LinkedIn in the browser instance

  • Rate limiting: Use responsibly. LinkedIn may restrict accounts that perform excessive automation

  • Terms of Service: Review LinkedIn's ToS before using automation tools

  • No credentials stored: This tool never stores or handles LinkedIn passwords

Related MCP server: LinkedIn Sales & Navigator MCP Server

Features

Tool

Description

linkedin_search_leads

Search leads with filters (title, company, location, industry, seniority, etc.)

linkedin_get_lead_profile

Get detailed profile information for a lead

linkedin_save_lead

Save a lead to a list

linkedin_list_lead_lists

List all lead lists

linkedin_create_lead_list

Create a new lead list

linkedin_send_inmail

Send an InMail message (with dry-run support)

linkedin_export_leads

Export leads to JSON or CSV format

Quick Start

Prerequisites

  • Node.js ≥ 20

  • LinkedIn Sales Navigator subscription with active session

  • A browser with an active LinkedIn login (Chrome recommended)

Install

npm install globodai-mcp-linkedin-sales-navigator

Or clone and build from source:

git clone https://github.com/globodai-group/mcp-linkedin-sales-navigator.git
cd mcp-linkedin-sales-navigator
npm install
npm run build

Configuration

The server is configured via environment variables:

Variable

Default

Description

LSN_AUTH_METHOD

cdp

Authentication method: cdp, session, or cookies

LSN_CDP_ENDPOINT

http://localhost:9222

Chrome DevTools Protocol endpoint

LSN_USER_DATA_DIR

Path to Chrome user data directory (for session method)

LSN_COOKIES_PATH

Path to cookies JSON file (for cookies method)

LSN_HEADLESS

false

Run browser in headless mode

LSN_VIEWPORT_WIDTH

1280

Browser viewport width

LSN_VIEWPORT_HEIGHT

900

Browser viewport height

LSN_NAVIGATION_TIMEOUT

30000

Navigation timeout in ms

LSN_ACTION_TIMEOUT

10000

Action timeout in ms

Authentication Methods

Connect to an already-running Chrome browser with an active LinkedIn session.

Start Chrome with remote debugging:

# macOS
/Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome \
  --remote-debugging-port=9222

# Linux
google-chrome --remote-debugging-port=9222

# Windows
chrome.exe --remote-debugging-port=9222

Then log into LinkedIn Sales Navigator manually. The MCP server connects to this browser.

LSN_AUTH_METHOD=cdp LSN_CDP_ENDPOINT=http://localhost:9222 npx globodai-mcp-linkedin-sales-navigator

2. User Data Directory

Use an existing Chrome profile that's already logged into LinkedIn:

LSN_AUTH_METHOD=session LSN_USER_DATA_DIR=/path/to/chrome/profile npx globodai-mcp-linkedin-sales-navigator

Export your LinkedIn cookies and provide them as a JSON file:

LSN_AUTH_METHOD=cookies LSN_COOKIES_PATH=/path/to/linkedin-cookies.json npx globodai-mcp-linkedin-sales-navigator

Clawdbot / CORTX Integration

This MCP server is designed to work seamlessly with Clawdbot browser relay:

{
  "mcpServers": {
    "linkedin-sales-navigator": {
      "command": "npx",
      "args": ["globodai-mcp-linkedin-sales-navigator"],
      "env": {
        "LSN_AUTH_METHOD": "cdp",
        "LSN_CDP_ENDPOINT": "http://localhost:9222"
      }
    }
  }
}

When using Clawdbot's browser relay, the AI assistant can directly control a browser tab where you're logged into Sales Navigator — no additional setup needed.

Tool Examples

Search for leads

{
  "tool": "linkedin_search_leads",
  "arguments": {
    "title": "VP of Engineering",
    "location": "San Francisco Bay Area",
    "companySize": "201-500",
    "industry": "Computer Software"
  }
}

Get a lead's profile

{
  "tool": "linkedin_get_lead_profile",
  "arguments": {
    "profileUrl": "https://www.linkedin.com/sales/lead/ACwAAAxxxxxx"
  }
}

Send an InMail (with dry run)

{
  "tool": "linkedin_send_inmail",
  "arguments": {
    "profileUrl": "https://www.linkedin.com/sales/lead/ACwAAAxxxxxx",
    "subject": "Quick question about your team",
    "body": "Hi, I noticed your team is growing...",
    "dryRun": true
  }
}

Export leads to CSV

{
  "tool": "linkedin_export_leads",
  "arguments": {
    "source": "current_search",
    "format": "csv",
    "limit": 50
  }
}

Architecture

┌─────────────────────────────────────────────────┐
│  AI Assistant (Claude, GPT, etc.)               │
│  ↕ MCP Protocol (stdio)                         │
├─────────────────────────────────────────────────┤
│  MCP Server (this package)                      │
│  ├── Tools (search, leads, inmails, lists, etc.)│
│  ├── Browser Controller (Playwright)            │
│  └── Selectors & Auth                           │
├─────────────────────────────────────────────────┤
│  Playwright → Chromium / Chrome                 │
│  ↕ CDP or Direct                                │
├─────────────────────────────────────────────────┤
│  LinkedIn Sales Navigator (web app)             │
└─────────────────────────────────────────────────┘

Development

# Install dependencies
npm install

# Install Playwright browsers
npx playwright install chromium

# Development mode (watch)
npm run dev

# Build
npm run build

# Lint
npm run lint

# Type check
npm run typecheck

Selector Maintenance

LinkedIn periodically updates their DOM structure. If tools stop working:

  1. Open Sales Navigator in Chrome DevTools

  2. Inspect the elements that changed

  3. Update selectors in src/browser/selectors.ts

  4. Submit a PR with the updated selectors

License

MIT — see LICENSE

Disclaimer

This project is not affiliated with, endorsed by, or sponsored by LinkedIn Corporation. LinkedIn and Sales Navigator are trademarks of LinkedIn Corporation. Use this tool responsibly and in accordance with LinkedIn's Terms of Service.

Available Tools

7 tools
linkedin_create_lead_listB

Create a new lead list in LinkedIn Sales Navigator

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesName for the new lead list

TDQS

B3.3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden of behavioral disclosure. It only states the action without mentioning side effects, authentication needs, duplicate handling, or return behavior. For a mutating operation, this lack of detail is insufficient.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, front-loaded sentence with no redundant words. It is appropriately sized for a simple creation tool with one parameter, conveying the core purpose efficiently.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description covers the basic purpose but lacks usage guidelines and behavioral transparency. Given no output schema and no annotations, it is minimally adequate for a simple one-parameter tool, but an agent would benefit from knowing return values or constraints to ensure correct invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% for the 'name' parameter, so the baseline is 3. The description adds no additional meaning beyond what the schema already provides, but the schema fully documents the parameter, so no extra compensation is needed.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('create') and the resource ('new lead list') with platform context ('in LinkedIn Sales Navigator'). It distinguishes this from sibling tools like list_lead_lists and save_lead by explicitly targeting creation of a new list.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives such as linkedin_save_lead or linkedin_list_lead_lists. The description offers no context, prerequisites, or exclusions, leaving the agent to infer usage solely from the tool name.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

linkedin_export_leadsA

Export leads from LinkedIn Sales Navigator search results or a specific list to JSON or CSV format

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMaximum number of leads to export (default: 25, max: 250)
fieldsNoFields to include (default: fullName, firstName, lastName, title, company, location, salesNavUrl)
formatNoExport formatjson
listIdNoList ID to export from (required if source is 'list')
sourceYesExport from current search results ("current_search") or a specific list ("list")

TDQS

A3.8/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It only states what the tool does (export) without mentioning side effects, prerequisites, or whether it is read-only. The description does not clarify if an active search/session is required, what happens on invalid inputs, or if the export has any destructive impact.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence, front-loaded with the verb, and contains no redundant words. It efficiently communicates the essential action, source, and output format.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the 5-parameter schema with full description coverage, the description is mostly complete. It clearly identifies the two possible sources and output formats. Minor gaps include lack of behavioral nuance (e.g., active session requirement) but these are partially mitigated by the detailed schema.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the baseline is 3. The description does not add additional meaning beyond the schema; it only mentions the two source options that are already captured by the 'source' parameter enum. No parameter syntax or format details are added beyond what the schema provides.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb 'Export' with a clear resource ('leads from LinkedIn Sales Navigator search results or a specific list') and output formats (JSON or CSV). It clearly distinguishes from sibling tools like searching, saving, or sending, which have different purposes.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description states that the tool exports from 'current search results' or 'a specific list', giving clear usage context. It does not explicitly mention alternatives or when-not-to-use, but the context is sufficient for an agent to decide when to invoke it over sibling tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

linkedin_get_lead_profileB

Get detailed profile information for a LinkedIn Sales Navigator lead

ParametersJSON Schema
NameRequiredDescriptionDefault
profileUrlYesSales Navigator profile URL (e.g., https://www.linkedin.com/sales/lead/...)

TDQS

B3.4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries full responsibility for behavioral disclosure. It states it 'gets' information (suggesting read-only), but gives no details on what 'detailed' includes, any rate limits, authentication requirements, or response format. The description adds little beyond the verb itself.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is one concise sentence, front-loaded with the action, and contains no redundant information. It's appropriately sized for a single-parameter tool.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description omits important context for a tool with no output schema: it doesn't explain what fields are returned, whether the profile URL is enough, or any limitations. While the tool is simple, the description doesn't sufficiently cover the user's need for understanding the tool's full behavior.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema covers the only parameter (profileUrl) comprehensively with a description and example. The tool description doesn't add extra meaning beyond the schema, so baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Get') and resource ('detailed profile information for a LinkedIn Sales Navigator lead'), clearly distinguishing it from siblings like search, save, and export. It's immediately obvious what this tool does.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage when you need a specific lead's profile, but it doesn't explicitly specify when to use this over search_leads or other alternatives. No exclusions or prerequisites are mentioned.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

linkedin_list_lead_listsA

List all lead lists in LinkedIn Sales Navigator

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A3.7/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. The verb 'List' implies a read-only operation, which is a basic behavioral trait, but it does not disclose any details about return format, pagination, authentication, or rate limits. While the safety is implied, richer behavioral context is missing.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, front-loaded sentence: 'List all lead lists in LinkedIn Sales Navigator.' It is concise, clear, and every word contributes to the meaning. There is no redundant or filler content, making it an excellent model of brevity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool is simple with no parameters and no output schema, but the description still does not fully cover the context. It states the purpose but does not describe the structure of the returned data (e.g., whether it includes IDs, names, or other metadata). An agent may need to rely on external knowledge or trial and error to understand the output. Given the absence of an output schema, the description should have provided more detail about the return value.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has zero parameters, so there are no parameter semantics to clarify. Per guidelines, a tool with 0 parameters receives a baseline score of 4 because the description does not need to compensate for missing parameter information. The description appropriately omits parameter details that do not exist.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses the specific verb 'List' with the resource 'lead lists' and scopes it to 'all' in LinkedIn Sales Navigator. This clearly distinguishes it from sibling tools like 'create_lead_list' which creates lists, and 'search_leads' which searches for leads. The purpose is unambiguous and actionable.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. It does not mention that it is the appropriate tool for viewing all lead lists, nor does it reference the sibling tools such as create_lead_list or search_leads. An agent receives no contextual advice for tool selection.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

linkedin_save_leadA

Save a lead to a list on LinkedIn Sales Navigator

ParametersJSON Schema
NameRequiredDescriptionDefault
listNameNoName of the list to save to (default: saved leads)
profileUrlYesSales Navigator profile URL of the lead to save

TDQS

A3.5/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It only states the action 'save a lead to a list' without mentioning side effects, whether the list must already exist, authentication requirements, or whether the operation is idempotent. This leaves significant behavioral uncertainty for a mutation tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, concise sentence that front-loads the core action and target. It contains no redundant information and is easy to parse quickly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the low complexity (2 parameters, one required) and the absence of an output schema, the description provides a minimal but functional overview. However, it lacks context about the relationship to list management tools (e.g., whether the list is created automatically) and does not clarify default behaviors, leaving gaps for an agent to infer.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, with both parameters documented clearly in the input schema. The description adds no additional parameter-level meaning beyond what the schema provides, so the baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb 'save' with a clear object 'lead' and destination 'list on LinkedIn Sales Navigator', making the tool's function immediately clear. It distinguishes itself from sibling tools like search, profile retrieval, or list creation by focusing on the save action.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies the tool is used for persisting a lead to a list, but it does not explicitly state when to use it over alternatives such as linkedin_create_lead_list for creating a new list or linkedin_export_leads for bulk operations. No exclusionary guidance is provided, so usage context is only implied.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

linkedin_search_leadsA

Search for leads on LinkedIn Sales Navigator with filters (title, company, location, industry, seniority, etc.)

ParametersJSON Schema
NameRequiredDescriptionDefault
pageNoPage number (1-indexed)
titleNoJob title filter
companyNoCompany name filter
functionNoJob function (e.g., "Sales", "Engineering", "Marketing")
industryNoIndustry filter
keywordsNoSearch keywords
locationNoGeographic location filter
companySizeNoCompany headcount range (e.g., "51-200", "201-500", "1001-5000")
seniorityLevelNoSeniority level (e.g., "VP", "Director", "Manager", "C-Suite")

TDQS

A3.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description bears full responsibility for behavioral disclosure. The verb 'search' implies a read-only operation, but the description does not explicitly state that, nor does it mention pagination (though 'page' exists in the schema), result limits, or any licensing prerequisites. It adds some context by referencing Sales Navigator but lacks deeper detail about what happens when the tool runs.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that front-loads the action and resource. No wasted words; it accomplishes its purpose without fluff. The parenthetical list of filters is concise and immediately informative.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with 9 optional parameters and no output schema, the description is thin. It establishes the core purpose and mentions Sales Navigator, but it does not clarify pagination behavior, response format, or any constraints on combining filters. The schema compensates for parameter details, but the description alone feels slightly incomplete for an agent encountering the tool for the first time.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already fully documents all 9 parameters. The tool description lists a few filter examples (title, company, location, industry, seniority) and says 'etc.', which adds a general sense of available filters but no information beyond what the schema provides. Baseline of 3 is appropriate when the schema carries the full explanatory burden.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb 'Search' and clearly identifies the resource 'leads on LinkedIn Sales Navigator'. This distinguishes it from sibling tools like linkedin_get_lead_profile and linkedin_send_inmail, which have different purposes. No ambiguity about what this tool does.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description clearly indicates the tool's use case: searching for leads with filters. While it does not explicitly contrast with alternatives, the sibling tool names make it apparent that this is the search tool, while others handle profile retrieval, saving, messaging, and list management. The context is clear, though no exclusions are stated.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

linkedin_send_inmailA

Send an InMail message to a lead on LinkedIn Sales Navigator. Requires available InMail credits.

ParametersJSON Schema
NameRequiredDescriptionDefault
bodyYesInMail message body (max 1900 characters)
dryRunNoIf true, compose the InMail but don't send it (for review)
subjectYesInMail subject line (max 200 characters)
profileUrlYesSales Navigator profile URL of the recipient

TDQS

A3.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description discloses that sending InMail requires credits, which is a behavioral constraint. However, with no annotations, it doesn't cover other significant behaviors like the irreversible nature of sending or the availability of the dryRun option (though dryRun is in the schema). It provides minimal context beyond the credit requirement.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, concise sentence that immediately states the tool's purpose and a key prerequisite. It avoids redundancy and is well-structured for quick scanning.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Although the tool is a simple mutating action with no output schema and no annotations, the description covers the essential purpose and a prerequisite. It could be more complete by mentioning the dryRun option or expected outcomes, but it's not severely incomplete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

All parameters are fully described in the schema with detailed descriptions, so the tool description doesn't need to add parameter-specific semantics. The description adds only high-level context (sending an InMail) without repeating schema details, meeting the baseline for full schema coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly identifies the action (send), the resource (InMail message), and the target (a lead on LinkedIn Sales Navigator). It also distinguishes itself from sibling tools that search, profile, or save leads by focusing on the sending action.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description states a clear prerequisite (available InMail credits) which is an important usage condition. It doesn't explicitly mention alternatives or when not to use the tool, but the sibling set contains no other sending tool, making the use case unambiguous.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. 7 tool updatesv0.1.0
    • First observedlinkedin_create_lead_list
    • First observedlinkedin_export_leads
    • First observedlinkedin_get_lead_profile
    • First observedlinkedin_list_lead_lists
    • First observedlinkedin_save_lead
    • First observedlinkedin_search_leads
    • First observedlinkedin_send_inmail

TDQS

A3.9/5.0
Disambiguation5/5

Each tool targets a distinct action: searching leads, viewing profiles, saving leads, sending messages, and managing/exporting lead lists. No two tools overlap in purpose, making selection unambiguous.

Naming Consistency5/5

All tools follow a consistent 'linkedin_<verb>_<noun>' pattern (e.g., linkedin_search_leads, linkedin_create_lead_list). The naming is uniform and predictable across the entire set.

Tool Count5/5

Seven tools is well-scoped for a LinkedIn Sales Navigator integration, covering search, profile viewing, list management, outreach, and export without unnecessary bloat or missing core functions.

Completeness4/5

The set covers the main lead lifecycle: discover leads, view details, save to lists, send InMail, and export. Minor gaps exist (e.g., no delete/update list or remove lead from list), but these are not critical for primary workflows.

Maintenance

ActivityInactive
ResponsivenessUnresponsive

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

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

Related MCP Connectors

Related MCP Servers

  • F
    license
    A
    quality
    Not graded
    maintenance
    Enables AI assistants to interact with LinkedIn and LinkedIn Sales Navigator for searching profiles, managing leads, and handling messaging via cookie-based authentication. It supports professional networking tasks such as sending connection requests and retrieving account details through the Model Context Protocol.
    22
    1
    -
  • A
    license
    A
    quality
    B
    maintenance
    Connects LinkedIn to AI assistants, enabling lead search, profile analysis, messaging, and workflow automation through a cloud browser. Supports sales, recruiting, and market research tasks.
    2
    59
    236
    MIT

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/globodai-group/mcp-linkedin-sales-navigator'

If you have feedback or need assistance with the MCP directory API, please join our Discord server