LinkedIn Employee Scraper & MCP Connector avatar

LinkedIn Employee Scraper & MCP Connector

Pricing

from $8.40 / 1,000 results

Go to Apify Store
LinkedIn Employee Scraper & MCP Connector

LinkedIn Employee Scraper & MCP Connector

LinkedIn Employee Scraper: find any company's employees name, title, department, seniority & profile URL. No login needed. Auto-deliver to Slack, Notion, Airtable via MCP.

Pricing

from $8.40 / 1,000 results

Rating

0.0

(0)

Developer

Techforce Global

Techforce Global

Maintained by Community

Actor stats

0

Bookmarked

1

Total users

0

Monthly active users

4 days ago

Last modified

Share

LinkedIn Employee Scraper & MCP Connector

Scrape every employee at any company on LinkedIn — name, job title, department, seniority level, location, and profile URL, all as structured JSON. No LinkedIn login, no cookies, no manual searching profile by profile.

Built for sales teams doing account mapping, recruiters sourcing candidates, and researchers mapping a competitor's headcount — anyone who needs a clean list of who works where, in minutes instead of an afternoon of manual LinkedIn searches.

Enter a company name → get its employees → deliver it straight into Slack, Notion, Airtable, Jira, or your CRM.


⭐ Why This Actor?

  • Just enter a company name — no LinkedIn account, cookies, or session tokens required
  • No LinkedIn login risk — discovery runs entirely through public search-engine results, never LinkedIn's own site
  • Stealth headless browser — Playwright Chromium with anti-detection args, routed through Brave Search, with automatic PoW-CAPTCHA handling
  • Exact or fuzzy company matching — require the full company name as a phrase, or loosen it to catch formatting variations
  • Every employee is tagged, not just named — department (Technology, Sales, Marketing, Finance, HR, Product, Operations, Legal, Business) and seniority level are attached automatically
  • Automatic dedupe — the same person found via multiple search queries is only ever returned once
  • Deliver anywhere via MCP connectors — push results straight into Slack, Notion, Airtable, Jira, GitHub, or any MCP-compatible tool
  • Also runs in Standby mode — as an on-demand HTTP API for company_name lookups, not just batch runs

📝 Use Cases & ROI

Use CaseTime SavedWhat You Get
Sales prospecting / account mapping2–4 hrs/accountA ready contact list at a target company, tagged by department
Recruiting & talent sourcing1–3 hrs/searchCurrent staff by department/seniority for sourcing or market mapping
Org-chart & competitive research2–4 hrs/companyA department and seniority breakdown of a competitor's headcount
Lead routing into your CRM/CMS1–2 hrs/batchAuto-delivery into Slack/Notion/Airtable skips the manual export-import step
M&A / due diligence1–3 hrs/targetA fast read on team size and function mix at a target company

🚀 How to Use

  1. Open the Actor on Apify.
  2. Enter Company Name exactly as it appears on LinkedIn (e.g. Techforce Global).
  3. Set Max Profiles — free plan runs are capped at 2 profiles per run; paid plans can request up to 50.
  4. Leave Exact company match ON to require the full company name as a phrase, or turn it OFF for a looser, any-order word match.
  5. (Optional) Under Proxy, keep the default Residential Apify Proxy — strongly recommended, since datacenter IPs are frequently blocked by search-engine anti-bot checks.
  6. (Optional) Under Delivery, pick an MCP connector, a delivery mode, the tool to call, and a message template to push results into another tool automatically.
  7. Click Run — profiles stream into the dataset as they're found.
  8. Download as JSON, CSV, or Excel — or let the connector deliver them into your tools automatically once the run finishes.

🌐 Proxy: requests run through Apify Proxy (Residential group recommended) — Brave Search is far more likely to block datacenter IPs. 💡 First time with a connector? Run once with a connector selected — the log prints the connector's available tool names, so you know what to put in Connector tool name.


🧩 Input Configuration

FieldTypeRequiredDescription
company_nameString✔️ YesExact company name to search for (e.g. Techforce Global)
max_profilesIntegerOptionalMax unique profiles to collect (1–50). Default: 2. Free plan capped at 2; paid plans up to 50
exact_company_matchBooleanOptionalON (default): full company name must match as a phrase. OFF: looser, any-order word match
proxyConfigurationObjectOptionalProxy used for all Brave Search requests. Default: Residential Apify Proxy
mcpConnectorConnectorOptionalDeliver results into a connector you've authorized (Notion, Slack, Linear, Airtable, Jira, GitHub, or any MCP-compatible tool)
deliveryModeEnumOptionalperProfile (one call per person), summary (one combined call), or none (dataset only). Default: perProfile
mcpToolStringOptionalName of the tool to call on the connector (e.g. send_message, create_page)
mcpArgumentsObjectOptionalArguments passed to the connector tool; string values support {placeholders}
mcpMessageTemplateStringOptionalMarkdown template rendered per profile and exposed as {message}
debugBooleanOptionalVerbose logging of every candidate result and why it was kept or skipped. Default: false

Example — Minimal run

{
"company_name": "Techforce Global",
"max_profiles": 25
}

Example — Looser, fuzzy company matching

{
"company_name": "Techforce Global",
"max_profiles": 25,
"exact_company_match": false
}

Example — Deliver each employee to Slack

{
"company_name": "Techforce Global",
"max_profiles": 25,
"mcpConnector": "<your-slack-connector>",
"deliveryMode": "perProfile",
"mcpTool": "send_message",
"mcpArguments": { "channel": "#leads", "text": "{message}" },
"mcpMessageTemplate": "*{name}* — {title}\n{location}\n{linkedin_url}"
}

Example — Deliver one summary page to Notion

{
"company_name": "Techforce Global",
"max_profiles": 25,
"mcpConnector": "<your-notion-connector>",
"deliveryMode": "summary",
"mcpTool": "create_page",
"mcpArguments": { "title": "Employees at {company}", "content": "{message}" }
}

Placeholders available in arguments / template

  • perProfile mode: {name} · {linkedin_url} · {location} · {title} · {headline} · {department} · {seniority} · {message} (the rendered template for that profile)
  • summary mode: {message} (every profile's rendered template, joined) · {count} · {company}

📦 Output Fields

FieldDescription
nameEmployee's name
linkedin_urlNormalized, canonical LinkedIn profile URL
locationBest-effort location extracted from the search result
titleBest available role/title string
headlineShort snippet/headline text from the search result
departmentOne of: Technology, Business, Finance, Marketing, Sales, Product, Operations, HR, Legal, General
senioritySenior IC / Mid-Level / Junior · Associate / Entry-Level · Intern / Unknown
title_verifiedtrue if the title matched a known role keyword, false if accepted on company evidence alone (e.g. no headline set)

Example Output

{
"name": "Jane Doe",
"linkedin_url": "https://www.linkedin.com/in/janedoe",
"location": "Bangalore",
"title": "Software Engineer",
"headline": "Software Engineer at Techforce Global",
"department": "Technology",
"seniority": "Senior IC",
"title_verified": true
}

A run summary is also written to the key-value store under OUTPUT, with company, total_found, delivered, status, and finished_at.

You can download the dataset in various formats such as JSON, HTML, CSV, or Excel.


🔌 Integrations & Delivery

Deliver scraped employees into any MCP connector you've authorized in Apify — no glue code, no webhooks:

  • Slack / Discord — post a message per employee, or one summary digest to a channel
  • Notion — create a page per employee, or one combined page
  • Airtable / Google Sheets — append a structured row per employee
  • Jira / GitHub / Linear — open a task per employee (e.g. for outreach or sourcing follow-up)
  • …or any other MCP-compatible connector

Credentials stay private — delivery runs through the Apify MCP Proxy, so the Actor never sees your connector tokens. You can also consume the dataset directly via the Apify API, or wire it into n8n, Zapier, and Make.

⚙️ Delivery modes: perProfile sends one call per employee found — best for CRM/task-tracker style destinations; summary sends one call combining every profile — best for a Slack digest or a single Notion page; none saves to the dataset only. MCP delivery only runs on the Apify platform and never affects what's saved to the dataset.


🛠️ How It Works

my_actor/main.py reads the input, then for the given company:

  1. Query building — the company name is combined with a broad site:linkedin.com/in search plus role-keyword groups (engineering, IT/admin, analyst, sales/account, HR/recruiting, associate/support), covering employees across every department in one run.
  2. Search — each query runs through Brave Search (search.brave.com) via a headless, stealth-configured Playwright Chromium browser routed through Apify Proxy. If Brave's PoW CAPTCHA appears, the Actor attempts to auto-solve it before continuing.
  3. Parsing — each result page is parsed with BeautifulSoup to pull the LinkedIn URL, title, and snippet for every linkedin.com/in/ result.
  4. Company gate — a result is kept only if the target company name appears in its title, snippet, or metadata, using exact-phrase or fuzzy word matching per your input.
  5. Role tagging — the title/snippet is matched against a keyword list to assign a normalized title, department, and seniority level. Profiles with no listed title but strong company evidence are still kept, flagged as unverified.
  6. Dedupe & collect — profiles are deduplicated by canonical LinkedIn URL until max_profiles is reached.
  7. Save & deliver — every profile is pushed to the dataset, then optionally delivered to your chosen MCP connector.

🕒 Standby mode: the Actor also runs as an on-demand HTTP API, answering GET /?company_name=<name>&max_profiles=<n>&exact_company_match=<bool> with the same JSON shape, for instant lookups instead of a full batch run.

Built with: Apify SDK for Python · Playwright · BeautifulSoup4 · MCP


🆘 Support

For issues, custom scraping requests, or feature suggestions:

Email: bhavin.shah@techforceglobal.com


Need a Custom Pipeline?

Want multi-company batch runs, scheduled refreshes, deeper enrichment, or a full CRM/data-warehouse integration?

📅 Book a Free 15-min Consultation


Made with ❤️ by Techforce Specialists in High-Performance Web Scrapers and AI Automation.


Disclaimer

This Actor is an independent tool and is not affiliated with, endorsed by, or sponsored by LinkedIn. LinkedIn® is a trademark of LinkedIn Corporation; all trademarks are property of their respective owners. The Actor only reads publicly indexed search-engine results — it does not log into LinkedIn, use LinkedIn credentials or cookies, or scrape LinkedIn's site directly. Use the data responsibly and in compliance with LinkedIn's Terms of Service, applicable data protection laws (e.g. GDPR), and the terms of the platforms you operate on.