LinkedIn Company Scraper
Scrape public LinkedIn company profile data from a slug or company URL, including name, description, website, industry, company size, headquarters, type, follower count, logo, and recent public posts.
Overview
LinkedIn Company Scraper turns a public LinkedIn company URL into a structured profile record. The tool reads the logged-out company page, normalizes the about section, pulls visible follower and logo metadata, and includes recent public company posts when LinkedIn publishes them in page-level structured data.
Last validated: Jul 3, 2026
Playground
Input
slugstringLinkedIn company slug, such as openai. Use company_url or slug.
company_urlstring (uri)Public LinkedIn company URL. Use company_url or slug.
max_recent_postsintegerdefault: 5Maximum recent public company posts to return.
Output
logostringVisible company logo URL
namestringrequiredCompany name
slugstringrequiredLinkedIn company slug
websitestringCompany website URL
industrystringVisible LinkedIn industry
company_urlstringrequiredCanonical LinkedIn company URL
descriptionstringPublic company description
specialtiesstring[]Visible specialties
company_sizestringVisible company size
headquartersstringVisible headquarters location
recent_postsobject[]Recent public company posts from LinkedIn structured data
follower_countintegerVisible follower count
organization_typestringVisible organization type
Examples
openai-company
{
"slug": "openai",
"max_recent_posts": 3
}Use cases
FAQ
Does LinkedIn Company Scraper require cookies?
No. Version 0.1 reads the public logged-out LinkedIn company page and does not use passwords, exported sessions, private cookies, or private LinkedIn API tokens.
Can it scrape employee lists?
No. This version returns company profile metadata and recent public company posts when visible. Employee lists and deep enrichment should be added as separate validated tools.
Why are some company fields missing?
The tool only returns fields present on the public company page. If LinkedIn hides a website, size, headquarters, or post list, the tool does not guess those values.
Use it anywhere
MCP (Claude, Cursor, any client)
# Add the Better Fetch MCP connector (or paste the URL into # Claude → Settings → Connectors → Add custom connector): claude mcp add --transport http better-fetch https://betterfetch.co/api/mcp \ --header "Authorization: Bearer bf_your_key_here" # Then ask for the tool by name: linkedin_company_scraper
REST
curl -sS -X POST "https://betterfetch.co/api/tools/linkedin_company_scraper/run" \
-H "Authorization: Bearer bf_your_key_here" \
-H "Content-Type: application/json" \
-d '{"input": {"slug":"openai","max_recent_posts":3}}'Run locally
git clone https://github.com/better-fetch/linkedin-company-scraper && cd linkedin-company-scraper && npm i
BETTER_FETCH_API_KEY=bf_your_key_here npx bf-tool run --input '{"slug":"openai","max_recent_posts":3}'