Index / MCP servers / LinkedIn MCP Server (Salesbot)

LinkedIn MCP Server (Salesbot) MCP server

LinkedIn MCP Server (Salesbot) is a remote MCP server that gives an AI agent 50 tools, among them add_contacts_to_campaign, add_crm_field, add_crm_stage. It answers at https://app.salesbot.cz/api/mcp over streamable HTTP, and it listed its tools to an anonymous client, so no sign-in was needed for that. Our probes reached it 10 of 10 times since 5 September 2026; the last check, on 18 October 2026, succeeded.

Status
Answering
Tools
50
Official
yes, served from salesbot.cz
Reliability
10 of 10 checks
Response time
316 ms
Transport
streamable HTTP
Last checked
18 October 2026

Human-in-the-loop LinkedIn outreach and a built-in sales CRM for AI agents. Safety-gated, anti-spam.

Description as the publisher wrote it.

The 50 tools LinkedIn MCP Server (Salesbot) offers

ToolWhat it does
add_contacts_to_campaignAdd selected contacts (by ID) to an existing campaign. Blacklist of domains/companies, duplicate checks and manual exclusion are applied automatically. Campaign steps (visit → connect → message) are then scheduled per template and daily lim
Inputs: campaign_id, contact_ids
add_crm_fieldAdd a custom field to CRM leads (e.g. 'Budget' of type number). type: text | number | date | url (default text). A key is generated from the label.
Inputs: label, type
add_crm_stageAdd a new pipeline stage. Provide a label (e.g. 'Negotiation'); a key is generated from it. Optional hex color (e.g. '#22c55e'). Appended to the end of the pipeline.
Inputs: label, color
approve_messageApprove a draft and hand it to the campaign executor for sending (respecting daily limits and allowed hours). Optionally pass edited_messages to overwrite specific drafts before approval. By default each draft is verified by a second-pass q
Inputs: campaign_contact_id, edited_messages, skip_gpt_check
complete_taskMark a CRM task done (or reopen/cancel it). Pass the task_id; status defaults to 'done'. Use after a follow-up is handled.
Inputs: task_id, status
connect_linkedinGenerate a secure LinkedIn connect (or reconnect) link the user opens in their browser to authenticate. Use when get_linkedin_status shows not connected/blocked, or after an ACCOUNT_NOT_CONNECTED/ACCOUNT_BLOCKED error. Returns a white-label
Inputs: profile_id, reconnect
create_campaignCreate a NEW campaign (saved as 'draft' — it does NOT start sending until the user activates it in the app). Provide a name, the profile_id to send from, and an ordered list of steps. Each step has an action ('connect', 'message' or 'visit'
Inputs: name, profile_id, description, daily_limit, sender_context, steps
create_taskCreate a follow-up task, optionally linked to a lead (e.g. 'Send pricing PDF to Jane on Thursday'). Pro plan only.
Inputs: title, contact_id, due_at, details
delete_crm_fieldRemove a custom field definition by key. Values already stored on leads stay in place but are no longer shown.
Inputs: key
delete_crm_stageDelete a pipeline stage by key. Leads currently in it are moved to reassign_to (or the first remaining stage). You can't delete the last remaining stage.
Inputs: key, reassign_to
enrich_contactsEnrich existing contacts with their full LinkedIn profile data via the connected LinkedIn account (Unipile) — headline, location, current company & position, full experience, education and skills are scraped from each contact's profile URL
Inputs: contact_ids, profile_id
export_crmExport the user's CRM (leads with pipeline stage and key fields) as CSV text to save to a file or spreadsheet. Returns up to `limit` rows; for very large databases use the in-app 'Download CRM Backup (CSV)' button.
Inputs: limit
generate_campaign_messageGenerate (or regenerate) an AI personalized message draft for a specific campaign_contact and step, using the template and lead profile. The message is NOT sent — it is stored as a draft with status 'pending_approval' and waits for review (
Inputs: campaign_contact_id, step_id, custom_instructions
get_chat_messagesRead the messages of a single LinkedIn conversation in real time (newest last). Use the chat_id from list_inbox_chats. `is_sender=true` marks messages sent by the account owner (you). Use this to understand context before composing a reply
Inputs: chat_id, profile_id, limit, cursor
get_contact_profileReturn the full contact profile from the database — name (with Czech vocative), headline, company, role, location, language, current campaign status and interaction history. Used as context for personalized messages or next-step decisions.
Inputs: contact_id
get_daily_limitsCheck remaining daily quota for a profile. Returns current usage vs limits, ramp-up status, allowed hours, and whether actions are currently allowed. profile_id is optional — if omitted, the user's active (or first) profile is used; if no p
Inputs: profile_id
get_job_posting_detailsGet full details of a LinkedIn job posting, including the hiring team — the recruiter or hiring manager who posted it. Use this after search_job_postings to find the exact person to reach out to at a company that is hiring. Also returns app
Inputs: job_id
get_lead_contextFetch the full CRM context for a lead before writing a pitch or follow-up: profile, current pipeline stage, custom fields, saved outreach messages (email/LI drafts & follow-ups), recent conversation summaries (with pain points), open tasks,
Inputs: contact_id, notes_limit
get_linkedin_statusCheck whether the user's LinkedIn account is connected and active. Returns the connection state and, if not connected/blocked, how to fix it. Call this first when another tool returns code ACCOUNT_NOT_CONNECTED or ACCOUNT_BLOCKED. profile_i
Inputs: profile_id
list_campaignsList your campaigns with ID, name, status (draft/running/paused), description and lead counts. Use this to obtain campaign_id when adding leads, generating messages or approving drafts.
Inputs: status
list_contactsList contacts in a specific lead list with ID, name, headline, company, profile URL, gender and current status (e.g. invite_sent, connected, replied). The AI picks IDs from this list for further tools.
Inputs: list_id, limit, offset
list_crm_fieldsList the custom fields defined on CRM leads (key, label, type). Set their values per lead with set_lead_fields.
list_crm_stagesList the CRM pipeline stages (key, label, order, color) and how many leads are in each. Stages are user-configurable — rename/add/delete them with the other crm_stage tools.
list_inbox_chatsList recent LinkedIn inbox conversations (chats) in real time. Returns chat_id (used by get_chat_messages / reply_to_chat), the other attendee's provider id, unread count and last-message timestamp. Message preview text is not always provid
Inputs: profile_id, limit, cursor
list_lead_listsList the authenticated user's contact groups (lead lists) with their list_id, name, description and contact count. Use list_id with list_contacts to retrieve the contacts in a specific group.
list_lead_messagesList the stored outreach messages saved on a CRM lead (email/LI drafts and follow-ups), newest first. Use to pull the copy back out of the CRM before sending it via the right channel. Optionally filter by channel or kind.
Inputs: contact_id, channel, kind, limit
list_pending_approvalsReturn all AI drafts waiting for approval (messages_approved=false). Each draft includes the contact name, headline, company and generated text. Used as input for bulk review by an AI assistant which can iterate through drafts and approve/r
Inputs: campaign_id, limit
list_tasksList your CRM tasks. Filter by status (open/done/cancelled, default open) and/or a specific contact. Returns task id, title, due date, status and the linked lead's name. Use to see what follow-ups are outstanding.
Inputs: status, contact_id, limit
log_crm_noteSave a structured summary of a conversation into the CRM for a lead. Analyze the chat/context yourself, then call this with a concise summary, the prospect's pain points, and overall sentiment. Builds durable context for future personalized
Inputs: contact_id, summary, pain_points, sentiment
mark_chat_readMark a LinkedIn conversation as read (by chat_id). Useful after the AI has processed/answered a thread so it does not re-surface as unread.
Inputs: chat_id, profile_id
publish_linkedin_postCreate a LinkedIn post on behalf of a connected profile. By default the post is saved as a 'draft' in the LinkedIn Posts page so the user can review/edit it before publishing. Set auto_publish=true to publish immediately — that path still r
Inputs: profile_id, text, external_link, as_organization, auto_publish
reject_messageReject the current drafts on a campaign_contact with textual feedback (e.g. 'too formal, shorten to 2 sentences'). Resets generation_status to 'pending' so a new version is generated based on your feedback, which again waits for approval.
Inputs: campaign_contact_id, reason
rename_crm_stageRename a stage's label and/or change its color, by key (use list_crm_stages to get keys). The stage key and the leads in it are unchanged.
Inputs: key, label, color
reply_to_chatSend a reply into an existing LinkedIn conversation (by chat_id). Only sends within the user's allowed sending hours/days (never at night) — outside them it returns OUTSIDE_ALLOWED_HOURS. When the user's human-in-the-loop setting is ON (def
Inputs: chat_id, message, profile_id
save_lead_messageStore a generated outreach message on a CRM lead so it becomes durable context — e.g. an email, an email follow-up, a LinkedIn message or LI follow-up. The CRM is a 'sponge': you save the copy here, then read it back later (get_lead_context
Inputs: contact_id, channel, kind, subject, body, status
scrape_websiteFetch the readable text of a PUBLIC web page so you can use it as context when writing/editing messages (e.g. read a prospect's website or an article). Returns plain text (HTML stripped, truncated) plus any contact emails found on the page
Inputs: url, max_chars
search_google_xrayGoogle X-Ray search for public LinkedIn profiles via Google operators (site:linkedin.com/in). Useful when you don't want to consume LinkedIn search limits. Found profiles are saved into your contacts (in a 'Google X-Ray' list, deduplicated
Inputs: jobTitle, location, keywords, excludeWords, limit
search_job_postingsSearch LinkedIn job postings by keywords, location, seniority, job type, and more. Returns job offers with company info — great for finding companies that are actively hiring for a specific role. Uses the connected LinkedIn account (Classic
Inputs: keywords, location, locationId, seniority, job_type, presence
search_linkedin_navigatorScrape a Sales Navigator (or standard LinkedIn) search URL and return raw LinkedIn search results. This tool does not save the results as Salesbot contacts. For each profile you want to keep or add to a campaign, call upsert_linkedin_contac
Inputs: search_url, limit
search_linkedin_peopleSearch people on LinkedIn by title and location. Returns raw LinkedIn search results; it does not save them as Salesbot contacts. For each profile you want to keep or add to a campaign, call upsert_linkedin_contact with its profile URL to o
Inputs: title, location, locationId, network, limit
10 more tools

search_web, send_connection_request, send_linkedin_message, set_deal_stage, set_lead_fields, start_campaign, stop_campaign, update_campaign_settings, update_contact, upsert_linkedin_contact

Add LinkedIn MCP Server (Salesbot) to your AI client

Every block below points at https://app.salesbot.cz/api/mcp. Pick your client and copy.

Claude Code: one command in your terminal
claude mcp add --transport http linkedin-mcp-server-salesbot https://app.salesbot.cz/api/mcp
Claude Desktop: claude_desktop_config.json
{
  "mcpServers": {
    "linkedin-mcp-server-salesbot": {
      "command": "npx",
      "args": ["-y", "mcp-remote", "https://app.salesbot.cz/api/mcp"]
    }
  }
}
Cursor: ~/.cursor/mcp.json, or .cursor/mcp.json in a project
{
  "mcpServers": {
    "linkedin-mcp-server-salesbot": {
      "url": "https://app.salesbot.cz/api/mcp"
    }
  }
}
VS Code and GitHub Copilot: .vscode/mcp.json
{
  "servers": {
    "linkedin-mcp-server-salesbot": {
      "type": "http",
      "url": "https://app.salesbot.cz/api/mcp"
    }
  }
}
Zed: Zed settings.json
{
  "context_servers": {
    "linkedin-mcp-server-salesbot": {
      "url": "https://app.salesbot.cz/api/mcp"
    }
  }
}
Windsurf: ~/.codeium/mcp_config.json
{
  "mcpServers": {
    "linkedin-mcp-server-salesbot": {
      "serverUrl": "https://app.salesbot.cz/api/mcp"
    }
  }
}
JetBrains AI Assistant: Settings, Tools, AI Assistant, MCP, New MCP Server, as JSON
{
  "mcpServers": {
    "linkedin-mcp-server-salesbot": {
      "url": "https://app.salesbot.cz/api/mcp"
    }
  }
}
Continue: .continue/mcpServers/neuronto.yaml
name: LinkedIn MCP Server (Salesbot)
version: 0.0.1
schema: v1
mcpServers:
  - name: LinkedIn MCP Server (Salesbot)
    type: streamable-http
    url: https://app.salesbot.cz/api/mcp
Gemini CLI: ~/.gemini/settings.json
{
  "mcpServers": {
    "linkedin-mcp-server-salesbot": {
      "httpUrl": "https://app.salesbot.cz/api/mcp"
    }
  }
}
Codex CLI: MCP server config
{
  "mcpServers": {
    "linkedin-mcp-server-salesbot": {
      "type": "http",
      "url": "https://app.salesbot.cz/api/mcp"
    }
  }
}
Warp: MCP servers, + Add, paste JSON
{
  "mcpServers": {
    "linkedin-mcp-server-salesbot": {
      "url": "https://app.salesbot.cz/api/mcp"
    }
  }
}
Goose: a one-click extension link
goose://extension?url=https%3A%2F%2Fapp.salesbot.cz%2Fapi%2Fmcp&type=streamable_http&id=linkedin-mcp-server-salesbot&name=LinkedIn%20MCP%20Server%20%28Salesbot%29

Is LinkedIn MCP Server (Salesbot) up right now?

It answered our last check on 18 October 2026 in 316 ms. Over 10 checks since 5 September 2026 it answered 10. Status here comes from Neuronto's own probes, not from the publisher.

MCP servers similar to LinkedIn MCP Server (Salesbot)

Questions about LinkedIn MCP Server (Salesbot)

Is there an official LinkedIn MCP Server (Salesbot) MCP server?

Yes. It is published by salesbot.cz and served from app.salesbot.cz, the vendor's own domain: https://app.salesbot.cz/api/mcp.

How many tools does LinkedIn MCP Server (Salesbot) have?

50, as returned by the server's own tools/list on 31 August 2026: add_contacts_to_campaign, add_crm_field, add_crm_stage, approve_message, complete_task, connect_linkedin, create_campaign, create_task, and 42 more.

Is LinkedIn MCP Server (Salesbot) down?

It answered our last check on 18 October 2026 in 316 ms. Over 10 checks since 5 September 2026 it answered 10.

How do I add LinkedIn MCP Server (Salesbot) to Cursor?

Put the server under mcpServers in ~/.cursor/mcp.json with the URL https://app.salesbot.cz/api/mcp. The exact JSON is above, with the same setup for Claude Code, Claude Desktop, VS Code, Windsurf, Zed, Gemini CLI and the rest.

Does LinkedIn MCP Server (Salesbot) need an API key?

It listed its tools to an anonymous client, so reading the tool list needs no key. Individual tools can still ask for credentials in their own inputs.

Where this comes from

Publisher: cz.salesbot. Endpoint host: app.salesbot.cz. ARD identifier: urn:air:cz.salesbot:mcp:linkedin-mcp-server. First indexed 31 August 2026. The tools are exactly what the server returned; nothing on this page is inferred from its name. Ranking in Neuronto search is never for sale.

Is this your server? Get a message the day it stops answering or its tools change: monitoring, 14 days free. Or claim the domain to manage how it is listed.